Remove Common Intermediate Language bindings
authorRémi Denis-Courmont <remi@remlab.net>
Tue, 9 Feb 2010 21:43:30 +0000 (23:43 +0200)
committerRémi Denis-Courmont <remi@remlab.net>
Tue, 9 Feb 2010 21:43:30 +0000 (23:43 +0200)
25 files changed:
bindings/cil/.gitignore [deleted file]
bindings/cil/AUTHORS [deleted file]
bindings/cil/COPYING [deleted file]
bindings/cil/ChangeLog [deleted file]
bindings/cil/Doxyfile.in [deleted file]
bindings/cil/Makefile.am [deleted file]
bindings/cil/NEWS [deleted file]
bindings/cil/README [deleted file]
bindings/cil/autogen.sh [deleted file]
bindings/cil/configure.ac [deleted file]
bindings/cil/m4/Makefile.am [deleted file]
bindings/cil/src/.gitignore [deleted file]
bindings/cil/src/Makefile.am [deleted file]
bindings/cil/src/event.cs [deleted file]
bindings/cil/src/exception.cs [deleted file]
bindings/cil/src/instance.cs [deleted file]
bindings/cil/src/libvlc.cs [deleted file]
bindings/cil/src/marshal.cs [deleted file]
bindings/cil/src/media.cs [deleted file]
bindings/cil/src/player.cs [deleted file]
bindings/cil/src/ustring.cs [deleted file]
bindings/cil/tests/.gitignore [deleted file]
bindings/cil/tests/Makefile.am [deleted file]
bindings/cil/tests/missing_api [deleted file]
bindings/cil/tests/testvlc.cs [deleted file]

diff --git a/bindings/cil/.gitignore b/bindings/cil/.gitignore
deleted file mode 100644 (file)
index 7694d07..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-Doxyfile
-INSTALL
-admin
-doc
-config.status
diff --git a/bindings/cil/AUTHORS b/bindings/cil/AUTHORS
deleted file mode 100644 (file)
index 9cde939..0000000
+++ /dev/null
@@ -1 +0,0 @@
-Rémi Denis-Courmont <rem (at) videolan (dot) org>
diff --git a/bindings/cil/COPYING b/bindings/cil/COPYING
deleted file mode 100644 (file)
index 1816039..0000000
+++ /dev/null
@@ -1,340 +0,0 @@
-                   GNU GENERAL PUBLIC LICENSE
-                      Version 2, June 1991
-
- Copyright (C) 1989, 1991 Free Software Foundation, Inc.
-                       51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
- Everyone is permitted to copy and distribute verbatim copies
- of this license document, but changing it is not allowed.
-
-                           Preamble
-
-  The licenses for most software are designed to take away your
-freedom to share and change it.  By contrast, the GNU General Public
-License is intended to guarantee your freedom to share and change free
-software--to make sure the software is free for all its users.  This
-General Public License applies to most of the Free Software
-Foundation's software and to any other program whose authors commit to
-using it.  (Some other Free Software Foundation software is covered by
-the GNU Library General Public License instead.)  You can apply it to
-your programs, too.
-
-  When we speak of free software, we are referring to freedom, not
-price.  Our General Public Licenses are designed to make sure that you
-have the freedom to distribute copies of free software (and charge for
-this service if you wish), that you receive source code or can get it
-if you want it, that you can change the software or use pieces of it
-in new free programs; and that you know you can do these things.
-
-  To protect your rights, we need to make restrictions that forbid
-anyone to deny you these rights or to ask you to surrender the rights.
-These restrictions translate to certain responsibilities for you if you
-distribute copies of the software, or if you modify it.
-
-  For example, if you distribute copies of such a program, whether
-gratis or for a fee, you must give the recipients all the rights that
-you have.  You must make sure that they, too, receive or can get the
-source code.  And you must show them these terms so they know their
-rights.
-
-  We protect your rights with two steps: (1) copyright the software, and
-(2) offer you this license which gives you legal permission to copy,
-distribute and/or modify the software.
-
-  Also, for each author's protection and ours, we want to make certain
-that everyone understands that there is no warranty for this free
-software.  If the software is modified by someone else and passed on, we
-want its recipients to know that what they have is not the original, so
-that any problems introduced by others will not reflect on the original
-authors' reputations.
-
-  Finally, any free program is threatened constantly by software
-patents.  We wish to avoid the danger that redistributors of a free
-program will individually obtain patent licenses, in effect making the
-program proprietary.  To prevent this, we have made it clear that any
-patent must be licensed for everyone's free use or not licensed at all.
-
-  The precise terms and conditions for copying, distribution and
-modification follow.
-
-                   GNU GENERAL PUBLIC LICENSE
-   TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
-
-  0. This License applies to any program or other work which contains
-a notice placed by the copyright holder saying it may be distributed
-under the terms of this General Public License.  The "Program", below,
-refers to any such program or work, and a "work based on the Program"
-means either the Program or any derivative work under copyright law:
-that is to say, a work containing the Program or a portion of it,
-either verbatim or with modifications and/or translated into another
-language.  (Hereinafter, translation is included without limitation in
-the term "modification".)  Each licensee is addressed as "you".
-
-Activities other than copying, distribution and modification are not
-covered by this License; they are outside its scope.  The act of
-running the Program is not restricted, and the output from the Program
-is covered only if its contents constitute a work based on the
-Program (independent of having been made by running the Program).
-Whether that is true depends on what the Program does.
-
-  1. You may copy and distribute verbatim copies of the Program's
-source code as you receive it, in any medium, provided that you
-conspicuously and appropriately publish on each copy an appropriate
-copyright notice and disclaimer of warranty; keep intact all the
-notices that refer to this License and to the absence of any warranty;
-and give any other recipients of the Program a copy of this License
-along with the Program.
-
-You may charge a fee for the physical act of transferring a copy, and
-you may at your option offer warranty protection in exchange for a fee.
-
-  2. You may modify your copy or copies of the Program or any portion
-of it, thus forming a work based on the Program, and copy and
-distribute such modifications or work under the terms of Section 1
-above, provided that you also meet all of these conditions:
-
-    a) You must cause the modified files to carry prominent notices
-    stating that you changed the files and the date of any change.
-
-    b) You must cause any work that you distribute or publish, that in
-    whole or in part contains or is derived from the Program or any
-    part thereof, to be licensed as a whole at no charge to all third
-    parties under the terms of this License.
-
-    c) If the modified program normally reads commands interactively
-    when run, you must cause it, when started running for such
-    interactive use in the most ordinary way, to print or display an
-    announcement including an appropriate copyright notice and a
-    notice that there is no warranty (or else, saying that you provide
-    a warranty) and that users may redistribute the program under
-    these conditions, and telling the user how to view a copy of this
-    License.  (Exception: if the Program itself is interactive but
-    does not normally print such an announcement, your work based on
-    the Program is not required to print an announcement.)
-
-These requirements apply to the modified work as a whole.  If
-identifiable sections of that work are not derived from the Program,
-and can be reasonably considered independent and separate works in
-themselves, then this License, and its terms, do not apply to those
-sections when you distribute them as separate works.  But when you
-distribute the same sections as part of a whole which is a work based
-on the Program, the distribution of the whole must be on the terms of
-this License, whose permissions for other licensees extend to the
-entire whole, and thus to each and every part regardless of who wrote it.
-
-Thus, it is not the intent of this section to claim rights or contest
-your rights to work written entirely by you; rather, the intent is to
-exercise the right to control the distribution of derivative or
-collective works based on the Program.
-
-In addition, mere aggregation of another work not based on the Program
-with the Program (or with a work based on the Program) on a volume of
-a storage or distribution medium does not bring the other work under
-the scope of this License.
-
-  3. You may copy and distribute the Program (or a work based on it,
-under Section 2) in object code or executable form under the terms of
-Sections 1 and 2 above provided that you also do one of the following:
-
-    a) Accompany it with the complete corresponding machine-readable
-    source code, which must be distributed under the terms of Sections
-    1 and 2 above on a medium customarily used for software interchange; or,
-
-    b) Accompany it with a written offer, valid for at least three
-    years, to give any third party, for a charge no more than your
-    cost of physically performing source distribution, a complete
-    machine-readable copy of the corresponding source code, to be
-    distributed under the terms of Sections 1 and 2 above on a medium
-    customarily used for software interchange; or,
-
-    c) Accompany it with the information you received as to the offer
-    to distribute corresponding source code.  (This alternative is
-    allowed only for noncommercial distribution and only if you
-    received the program in object code or executable form with such
-    an offer, in accord with Subsection b above.)
-
-The source code for a work means the preferred form of the work for
-making modifications to it.  For an executable work, complete source
-code means all the source code for all modules it contains, plus any
-associated interface definition files, plus the scripts used to
-control compilation and installation of the executable.  However, as a
-special exception, the source code distributed need not include
-anything that is normally distributed (in either source or binary
-form) with the major components (compiler, kernel, and so on) of the
-operating system on which the executable runs, unless that component
-itself accompanies the executable.
-
-If distribution of executable or object code is made by offering
-access to copy from a designated place, then offering equivalent
-access to copy the source code from the same place counts as
-distribution of the source code, even though third parties are not
-compelled to copy the source along with the object code.
-
-  4. You may not copy, modify, sublicense, or distribute the Program
-except as expressly provided under this License.  Any attempt
-otherwise to copy, modify, sublicense or distribute the Program is
-void, and will automatically terminate your rights under this License.
-However, parties who have received copies, or rights, from you under
-this License will not have their licenses terminated so long as such
-parties remain in full compliance.
-
-  5. You are not required to accept this License, since you have not
-signed it.  However, nothing else grants you permission to modify or
-distribute the Program or its derivative works.  These actions are
-prohibited by law if you do not accept this License.  Therefore, by
-modifying or distributing the Program (or any work based on the
-Program), you indicate your acceptance of this License to do so, and
-all its terms and conditions for copying, distributing or modifying
-the Program or works based on it.
-
-  6. Each time you redistribute the Program (or any work based on the
-Program), the recipient automatically receives a license from the
-original licensor to copy, distribute or modify the Program subject to
-these terms and conditions.  You may not impose any further
-restrictions on the recipients' exercise of the rights granted herein.
-You are not responsible for enforcing compliance by third parties to
-this License.
-
-  7. If, as a consequence of a court judgment or allegation of patent
-infringement or for any other reason (not limited to patent issues),
-conditions are imposed on you (whether by court order, agreement or
-otherwise) that contradict the conditions of this License, they do not
-excuse you from the conditions of this License.  If you cannot
-distribute so as to satisfy simultaneously your obligations under this
-License and any other pertinent obligations, then as a consequence you
-may not distribute the Program at all.  For example, if a patent
-license would not permit royalty-free redistribution of the Program by
-all those who receive copies directly or indirectly through you, then
-the only way you could satisfy both it and this License would be to
-refrain entirely from distribution of the Program.
-
-If any portion of this section is held invalid or unenforceable under
-any particular circumstance, the balance of the section is intended to
-apply and the section as a whole is intended to apply in other
-circumstances.
-
-It is not the purpose of this section to induce you to infringe any
-patents or other property right claims or to contest validity of any
-such claims; this section has the sole purpose of protecting the
-integrity of the free software distribution system, which is
-implemented by public license practices.  Many people have made
-generous contributions to the wide range of software distributed
-through that system in reliance on consistent application of that
-system; it is up to the author/donor to decide if he or she is willing
-to distribute software through any other system and a licensee cannot
-impose that choice.
-
-This section is intended to make thoroughly clear what is believed to
-be a consequence of the rest of this License.
-
-  8. If the distribution and/or use of the Program is restricted in
-certain countries either by patents or by copyrighted interfaces, the
-original copyright holder who places the Program under this License
-may add an explicit geographical distribution limitation excluding
-those countries, so that distribution is permitted only in or among
-countries not thus excluded.  In such case, this License incorporates
-the limitation as if written in the body of this License.
-
-  9. The Free Software Foundation may publish revised and/or new versions
-of the General Public License from time to time.  Such new versions will
-be similar in spirit to the present version, but may differ in detail to
-address new problems or concerns.
-
-Each version is given a distinguishing version number.  If the Program
-specifies a version number of this License which applies to it and "any
-later version", you have the option of following the terms and conditions
-either of that version or of any later version published by the Free
-Software Foundation.  If the Program does not specify a version number of
-this License, you may choose any version ever published by the Free Software
-Foundation.
-
-  10. If you wish to incorporate parts of the Program into other free
-programs whose distribution conditions are different, write to the author
-to ask for permission.  For software which is copyrighted by the Free
-Software Foundation, write to the Free Software Foundation; we sometimes
-make exceptions for this.  Our decision will be guided by the two goals
-of preserving the free status of all derivatives of our free software and
-of promoting the sharing and reuse of software generally.
-
-                           NO WARRANTY
-
-  11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY
-FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW.  EXCEPT WHEN
-OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES
-PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED
-OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
-MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE.  THE ENTIRE RISK AS
-TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU.  SHOULD THE
-PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING,
-REPAIR OR CORRECTION.
-
-  12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING
-WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR
-REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES,
-INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING
-OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED
-TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY
-YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER
-PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE
-POSSIBILITY OF SUCH DAMAGES.
-
-                    END OF TERMS AND CONDITIONS
-
-           How to Apply These Terms to Your New Programs
-
-  If you develop a new program, and you want it to be of the greatest
-possible use to the public, the best way to achieve this is to make it
-free software which everyone can redistribute and change under these terms.
-
-  To do so, attach the following notices to the program.  It is safest
-to attach them to the start of each source file to most effectively
-convey the exclusion of warranty; and each file should have at least
-the "copyright" line and a pointer to where the full notice is found.
-
-    <one line to give the program's name and a brief idea of what it does.>
-    Copyright (C) <year>  <name of author>
-
-    This program is free software; you can redistribute it and/or modify
-    it under the terms of the GNU General Public License as published by
-    the Free Software Foundation; either version 2 of the License, or
-    (at your option) any later version.
-
-    This program is distributed in the hope that it will be useful,
-    but WITHOUT ANY WARRANTY; without even the implied warranty of
-    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
-    GNU General Public License for more details.
-
-    You should have received a copy of the GNU General Public License
-    along with this program; if not, write to the Free Software
-    Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301, USA
-
-
-Also add information on how to contact you by electronic and paper mail.
-
-If the program is interactive, make it output a short notice like this
-when it starts in an interactive mode:
-
-    Gnomovision version 69, Copyright (C) year name of author
-    Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'.
-    This is free software, and you are welcome to redistribute it
-    under certain conditions; type `show c' for details.
-
-The hypothetical commands `show w' and `show c' should show the appropriate
-parts of the General Public License.  Of course, the commands you use may
-be called something other than `show w' and `show c'; they could even be
-mouse-clicks or menu items--whatever suits your program.
-
-You should also get your employer (if you work as a programmer) or your
-school, if any, to sign a "copyright disclaimer" for the program, if
-necessary.  Here is a sample; alter the names:
-
-  Yoyodyne, Inc., hereby disclaims all copyright interest in the program
-  `Gnomovision' (which makes passes at compilers) written by James Hacker.
-
-  <signature of Ty Coon>, 1 April 1989
-  Ty Coon, President of Vice
-
-This General Public License does not permit incorporating your program into
-proprietary programs.  If your program is a subroutine library, you may
-consider it more useful to permit linking proprietary applications with the
-library.  If this is what you want to do, use the GNU Library General
-Public License instead of this License.
diff --git a/bindings/cil/ChangeLog b/bindings/cil/ChangeLog
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/bindings/cil/Doxyfile.in b/bindings/cil/Doxyfile.in
deleted file mode 100644 (file)
index 95d4752..0000000
+++ /dev/null
@@ -1,1300 +0,0 @@
-# Doxyfile 1.5.3-20071008
-
-# This file describes the settings to be used by the documentation system
-# doxygen (www.doxygen.org) for a project
-#
-# All text after a hash (#) is considered a comment and will be ignored
-# The format is:
-#       TAG = value [value, ...]
-# For lists items can also be appended using:
-#       TAG += value [value, ...]
-# Values that contain spaces should be placed between quotes (" ")
-
-#---------------------------------------------------------------------------
-# Project related configuration options
-#---------------------------------------------------------------------------
-
-# This tag specifies the encoding used for all characters in the config file that 
-# follow. The default is UTF-8 which is also the encoding used for all text before 
-# the first occurrence of this tag. Doxygen uses libiconv (or the iconv built into 
-# libc) for the transcoding. See http://www.gnu.org/software/libiconv for the list of 
-# possible encodings.
-
-DOXYFILE_ENCODING      = UTF-8
-
-# The PROJECT_NAME tag is a single word (or a sequence of words surrounded 
-# by quotes) that should identify the project.
-
-PROJECT_NAME           = @PACKAGE_NAME@
-
-# The PROJECT_NUMBER tag can be used to enter a project or revision number. 
-# This could be handy for archiving the generated documentation or 
-# if some version control system is used.
-
-PROJECT_NUMBER         = @PACKAGE_VERSION@
-
-# The OUTPUT_DIRECTORY tag is used to specify the (relative or absolute) 
-# base path where the generated documentation will be put. 
-# If a relative path is entered, it will be relative to the location 
-# where doxygen was started. If left blank the current directory will be used.
-
-OUTPUT_DIRECTORY       = doc
-
-# If the CREATE_SUBDIRS tag is set to YES, then doxygen will create 
-# 4096 sub-directories (in 2 levels) under the output directory of each output 
-# format and will distribute the generated files over these directories. 
-# Enabling this option can be useful when feeding doxygen a huge amount of 
-# source files, where putting all generated files in the same directory would 
-# otherwise cause performance problems for the file system.
-
-CREATE_SUBDIRS         = NO
-
-# The OUTPUT_LANGUAGE tag is used to specify the language in which all 
-# documentation generated by doxygen is written. Doxygen will use this 
-# information to generate all constant output in the proper language. 
-# The default language is English, other supported languages are: 
-# Afrikaans, Arabic, Brazilian, Catalan, Chinese, Chinese-Traditional, 
-# Croatian, Czech, Danish, Dutch, Finnish, French, German, Greek, Hungarian, 
-# Italian, Japanese, Japanese-en (Japanese with English messages), Korean, 
-# Korean-en, Lithuanian, Norwegian, Polish, Portuguese, Romanian, Russian, 
-# Serbian, Slovak, Slovene, Spanish, Swedish, and Ukrainian.
-
-OUTPUT_LANGUAGE        = English
-
-# If the BRIEF_MEMBER_DESC tag is set to YES (the default) Doxygen will 
-# include brief member descriptions after the members that are listed in 
-# the file and class documentation (similar to JavaDoc). 
-# Set to NO to disable this.
-
-BRIEF_MEMBER_DESC      = YES
-
-# If the REPEAT_BRIEF tag is set to YES (the default) Doxygen will prepend 
-# the brief description of a member or function before the detailed description. 
-# Note: if both HIDE_UNDOC_MEMBERS and BRIEF_MEMBER_DESC are set to NO, the 
-# brief descriptions will be completely suppressed.
-
-REPEAT_BRIEF           = YES
-
-# This tag implements a quasi-intelligent brief description abbreviator 
-# that is used to form the text in various listings. Each string 
-# in this list, if found as the leading text of the brief description, will be 
-# stripped from the text and the result after processing the whole list, is 
-# used as the annotated text. Otherwise, the brief description is used as-is. 
-# If left blank, the following values are used ("$name" is automatically 
-# replaced with the name of the entity): "The $name class" "The $name widget" 
-# "The $name file" "is" "provides" "specifies" "contains" 
-# "represents" "a" "an" "the"
-
-ABBREVIATE_BRIEF       = 
-
-# If the ALWAYS_DETAILED_SEC and REPEAT_BRIEF tags are both set to YES then 
-# Doxygen will generate a detailed section even if there is only a brief 
-# description.
-
-ALWAYS_DETAILED_SEC    = NO
-
-# If the INLINE_INHERITED_MEMB tag is set to YES, doxygen will show all 
-# inherited members of a class in the documentation of that class as if those 
-# members were ordinary class members. Constructors, destructors and assignment 
-# operators of the base classes will not be shown.
-
-INLINE_INHERITED_MEMB  = NO
-
-# If the FULL_PATH_NAMES tag is set to YES then Doxygen will prepend the full 
-# path before files name in the file list and in the header files. If set 
-# to NO the shortest path that makes the file name unique will be used.
-
-FULL_PATH_NAMES        = YES
-
-# If the FULL_PATH_NAMES tag is set to YES then the STRIP_FROM_PATH tag 
-# can be used to strip a user-defined part of the path. Stripping is 
-# only done if one of the specified strings matches the left-hand part of 
-# the path. The tag can be used to show relative paths in the file list. 
-# If left blank the directory from which doxygen is run is used as the 
-# path to strip.
-
-STRIP_FROM_PATH        = 
-
-# The STRIP_FROM_INC_PATH tag can be used to strip a user-defined part of 
-# the path mentioned in the documentation of a class, which tells 
-# the reader which header file to include in order to use a class. 
-# If left blank only the name of the header file containing the class 
-# definition is used. Otherwise one should specify the include paths that 
-# are normally passed to the compiler using the -I flag.
-
-STRIP_FROM_INC_PATH    = 
-
-# If the SHORT_NAMES tag is set to YES, doxygen will generate much shorter 
-# (but less readable) file names. This can be useful is your file systems 
-# doesn't support long names like on DOS, Mac, or CD-ROM.
-
-SHORT_NAMES            = NO
-
-# If the JAVADOC_AUTOBRIEF tag is set to YES then Doxygen 
-# will interpret the first line (until the first dot) of a JavaDoc-style 
-# comment as the brief description. If set to NO, the JavaDoc 
-# comments will behave just like regular Qt-style comments 
-# (thus requiring an explicit @brief command for a brief description.)
-
-JAVADOC_AUTOBRIEF      = NO
-
-# If the QT_AUTOBRIEF tag is set to YES then Doxygen will 
-# interpret the first line (until the first dot) of a Qt-style 
-# comment as the brief description. If set to NO, the comments 
-# will behave just like regular Qt-style comments (thus requiring 
-# an explicit \brief command for a brief description.)
-
-QT_AUTOBRIEF           = NO
-
-# The MULTILINE_CPP_IS_BRIEF tag can be set to YES to make Doxygen 
-# treat a multi-line C++ special comment block (i.e. a block of //! or /// 
-# comments) as a brief description. This used to be the default behaviour. 
-# The new default is to treat a multi-line C++ comment block as a detailed 
-# description. Set this tag to YES if you prefer the old behaviour instead.
-
-MULTILINE_CPP_IS_BRIEF = NO
-
-# If the DETAILS_AT_TOP tag is set to YES then Doxygen 
-# will output the detailed description near the top, like JavaDoc.
-# If set to NO, the detailed description appears after the member 
-# documentation.
-
-DETAILS_AT_TOP         = NO
-
-# If the INHERIT_DOCS tag is set to YES (the default) then an undocumented 
-# member inherits the documentation from any documented member that it 
-# re-implements.
-
-INHERIT_DOCS           = YES
-
-# If the SEPARATE_MEMBER_PAGES tag is set to YES, then doxygen will produce 
-# a new page for each member. If set to NO, the documentation of a member will 
-# be part of the file/class/namespace that contains it.
-
-SEPARATE_MEMBER_PAGES  = NO
-
-# The TAB_SIZE tag can be used to set the number of spaces in a tab. 
-# Doxygen uses this value to replace tabs by spaces in code fragments.
-
-TAB_SIZE               = 8
-
-# This tag can be used to specify a number of aliases that acts 
-# as commands in the documentation. An alias has the form "name=value". 
-# For example adding "sideeffect=\par Side Effects:\n" will allow you to 
-# put the command \sideeffect (or @sideeffect) in the documentation, which 
-# will result in a user-defined paragraph with heading "Side Effects:". 
-# You can put \n's in the value part of an alias to insert newlines.
-
-ALIASES                = 
-
-# Set the OPTIMIZE_OUTPUT_FOR_C tag to YES if your project consists of C 
-# sources only. Doxygen will then generate output that is more tailored for C. 
-# For instance, some of the names that are used will be different. The list 
-# of all members will be omitted, etc.
-
-OPTIMIZE_OUTPUT_FOR_C  = NO
-
-# Set the OPTIMIZE_OUTPUT_JAVA tag to YES if your project consists of Java 
-# sources only. Doxygen will then generate output that is more tailored for Java. 
-# For instance, namespaces will be presented as packages, qualified scopes 
-# will look different, etc.
-
-OPTIMIZE_OUTPUT_JAVA   = NO
-
-# If you use STL classes (i.e. std::string, std::vector, etc.) but do not want to 
-# include (a tag file for) the STL sources as input, then you should 
-# set this tag to YES in order to let doxygen match functions declarations and 
-# definitions whose arguments contain STL classes (e.g. func(std::string); v.s. 
-# func(std::string) {}). This also make the inheritance and collaboration 
-# diagrams that involve STL classes more complete and accurate.
-
-BUILTIN_STL_SUPPORT    = NO
-
-# If you use Microsoft's C++/CLI language, you should set this option to YES to
-# enable parsing support.
-
-CPP_CLI_SUPPORT        = NO
-
-# Set the SIP_SUPPORT tag to YES if your project consists of sip sources only. 
-# Doxygen will parse them like normal C++ but will assume all classes use public 
-# instead of private inheritance when no explicit protection keyword is present.
-
-SIP_SUPPORT            = NO
-
-# If member grouping is used in the documentation and the DISTRIBUTE_GROUP_DOC 
-# tag is set to YES, then doxygen will reuse the documentation of the first 
-# member in the group (if any) for the other members of the group. By default 
-# all members of a group must be documented explicitly.
-
-DISTRIBUTE_GROUP_DOC   = NO
-
-# Set the SUBGROUPING tag to YES (the default) to allow class member groups of 
-# the same type (for instance a group of public functions) to be put as a 
-# subgroup of that type (e.g. under the Public Functions section). Set it to 
-# NO to prevent subgrouping. Alternatively, this can be done per class using 
-# the \nosubgrouping command.
-
-SUBGROUPING            = YES
-
-#---------------------------------------------------------------------------
-# Build related configuration options
-#---------------------------------------------------------------------------
-
-# If the EXTRACT_ALL tag is set to YES doxygen will assume all entities in 
-# documentation are documented, even if no documentation was available. 
-# Private class members and static file members will be hidden unless 
-# the EXTRACT_PRIVATE and EXTRACT_STATIC tags are set to YES
-
-EXTRACT_ALL            = NO
-
-# If the EXTRACT_PRIVATE tag is set to YES all private members of a class 
-# will be included in the documentation.
-
-EXTRACT_PRIVATE        = NO
-
-# If the EXTRACT_STATIC tag is set to YES all static members of a file 
-# will be included in the documentation.
-
-EXTRACT_STATIC         = NO
-
-# If the EXTRACT_LOCAL_CLASSES tag is set to YES classes (and structs) 
-# defined locally in source files will be included in the documentation. 
-# If set to NO only classes defined in header files are included.
-
-EXTRACT_LOCAL_CLASSES  = YES
-
-# This flag is only useful for Objective-C code. When set to YES local 
-# methods, which are defined in the implementation section but not in 
-# the interface are included in the documentation. 
-# If set to NO (the default) only methods in the interface are included.
-
-EXTRACT_LOCAL_METHODS  = NO
-
-# If this flag is set to YES, the members of anonymous namespaces will be extracted 
-# and appear in the documentation as a namespace called 'anonymous_namespace{file}', 
-# where file will be replaced with the base name of the file that contains the anonymous 
-# namespace. By default anonymous namespace are hidden.
-
-EXTRACT_ANON_NSPACES   = NO
-
-# If the HIDE_UNDOC_MEMBERS tag is set to YES, Doxygen will hide all 
-# undocumented members of documented classes, files or namespaces. 
-# If set to NO (the default) these members will be included in the 
-# various overviews, but no documentation section is generated. 
-# This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_MEMBERS     = NO
-
-# If the HIDE_UNDOC_CLASSES tag is set to YES, Doxygen will hide all 
-# undocumented classes that are normally visible in the class hierarchy. 
-# If set to NO (the default) these classes will be included in the various 
-# overviews. This option has no effect if EXTRACT_ALL is enabled.
-
-HIDE_UNDOC_CLASSES     = NO
-
-# If the HIDE_FRIEND_COMPOUNDS tag is set to YES, Doxygen will hide all 
-# friend (class|struct|union) declarations. 
-# If set to NO (the default) these declarations will be included in the 
-# documentation.
-
-HIDE_FRIEND_COMPOUNDS  = NO
-
-# If the HIDE_IN_BODY_DOCS tag is set to YES, Doxygen will hide any 
-# documentation blocks found inside the body of a function. 
-# If set to NO (the default) these blocks will be appended to the 
-# function's detailed documentation block.
-
-HIDE_IN_BODY_DOCS      = NO
-
-# The INTERNAL_DOCS tag determines if documentation 
-# that is typed after a \internal command is included. If the tag is set 
-# to NO (the default) then the documentation will be excluded. 
-# Set it to YES to include the internal documentation.
-
-INTERNAL_DOCS          = NO
-
-# If the CASE_SENSE_NAMES tag is set to NO then Doxygen will only generate 
-# file names in lower-case letters. If set to YES upper-case letters are also 
-# allowed. This is useful if you have classes or files whose names only differ 
-# in case and if your file system supports case sensitive file names. Windows 
-# and Mac users are advised to set this option to NO.
-
-CASE_SENSE_NAMES       = YES
-
-# If the HIDE_SCOPE_NAMES tag is set to NO (the default) then Doxygen 
-# will show members with their full class and namespace scopes in the 
-# documentation. If set to YES the scope will be hidden.
-
-HIDE_SCOPE_NAMES       = NO
-
-# If the SHOW_INCLUDE_FILES tag is set to YES (the default) then Doxygen 
-# will put a list of the files that are included by a file in the documentation 
-# of that file.
-
-SHOW_INCLUDE_FILES     = YES
-
-# If the INLINE_INFO tag is set to YES (the default) then a tag [inline] 
-# is inserted in the documentation for inline members.
-
-INLINE_INFO            = YES
-
-# If the SORT_MEMBER_DOCS tag is set to YES (the default) then doxygen 
-# will sort the (detailed) documentation of file and class members 
-# alphabetically by member name. If set to NO the members will appear in 
-# declaration order.
-
-SORT_MEMBER_DOCS       = YES
-
-# If the SORT_BRIEF_DOCS tag is set to YES then doxygen will sort the 
-# brief documentation of file, namespace and class members alphabetically 
-# by member name. If set to NO (the default) the members will appear in 
-# declaration order.
-
-SORT_BRIEF_DOCS        = NO
-
-# If the SORT_BY_SCOPE_NAME tag is set to YES, the class list will be 
-# sorted by fully-qualified names, including namespaces. If set to 
-# NO (the default), the class list will be sorted only by class name, 
-# not including the namespace part. 
-# Note: This option is not very useful if HIDE_SCOPE_NAMES is set to YES.
-# Note: This option applies only to the class list, not to the 
-# alphabetical list.
-
-SORT_BY_SCOPE_NAME     = NO
-
-# The GENERATE_TODOLIST tag can be used to enable (YES) or 
-# disable (NO) the todo list. This list is created by putting \todo 
-# commands in the documentation.
-
-GENERATE_TODOLIST      = YES
-
-# The GENERATE_TESTLIST tag can be used to enable (YES) or 
-# disable (NO) the test list. This list is created by putting \test 
-# commands in the documentation.
-
-GENERATE_TESTLIST      = YES
-
-# The GENERATE_BUGLIST tag can be used to enable (YES) or 
-# disable (NO) the bug list. This list is created by putting \bug 
-# commands in the documentation.
-
-GENERATE_BUGLIST       = YES
-
-# The GENERATE_DEPRECATEDLIST tag can be used to enable (YES) or 
-# disable (NO) the deprecated list. This list is created by putting 
-# \deprecated commands in the documentation.
-
-GENERATE_DEPRECATEDLIST= YES
-
-# The ENABLED_SECTIONS tag can be used to enable conditional 
-# documentation sections, marked by \if sectionname ... \endif.
-
-ENABLED_SECTIONS       = 
-
-# The MAX_INITIALIZER_LINES tag determines the maximum number of lines 
-# the initial value of a variable or define consists of for it to appear in 
-# the documentation. If the initializer consists of more lines than specified 
-# here it will be hidden. Use a value of 0 to hide initializers completely. 
-# The appearance of the initializer of individual variables and defines in the 
-# documentation can be controlled using \showinitializer or \hideinitializer 
-# command in the documentation regardless of this setting.
-
-MAX_INITIALIZER_LINES  = 30
-
-# Set the SHOW_USED_FILES tag to NO to disable the list of files generated 
-# at the bottom of the documentation of classes and structs. If set to YES the 
-# list will mention the files that were used to generate the documentation.
-
-SHOW_USED_FILES        = YES
-
-# If the sources in your project are distributed over multiple directories 
-# then setting the SHOW_DIRECTORIES tag to YES will show the directory hierarchy 
-# in the documentation. The default is NO.
-
-SHOW_DIRECTORIES       = NO
-
-# The FILE_VERSION_FILTER tag can be used to specify a program or script that 
-# doxygen should invoke to get the current version for each file (typically from the 
-# version control system). Doxygen will invoke the program by executing (via 
-# popen()) the command <command> <input-file>, where <command> is the value of 
-# the FILE_VERSION_FILTER tag, and <input-file> is the name of an input file 
-# provided by doxygen. Whatever the program writes to standard output 
-# is used as the file version. See the manual for examples.
-
-FILE_VERSION_FILTER    = 
-
-#---------------------------------------------------------------------------
-# configuration options related to warning and progress messages
-#---------------------------------------------------------------------------
-
-# The QUIET tag can be used to turn on/off the messages that are generated 
-# by doxygen. Possible values are YES and NO. If left blank NO is used.
-
-QUIET                  = NO
-
-# The WARNINGS tag can be used to turn on/off the warning messages that are 
-# generated by doxygen. Possible values are YES and NO. If left blank 
-# NO is used.
-
-WARNINGS               = YES
-
-# If WARN_IF_UNDOCUMENTED is set to YES, then doxygen will generate warnings 
-# for undocumented members. If EXTRACT_ALL is set to YES then this flag will 
-# automatically be disabled.
-
-WARN_IF_UNDOCUMENTED   = YES
-
-# If WARN_IF_DOC_ERROR is set to YES, doxygen will generate warnings for 
-# potential errors in the documentation, such as not documenting some 
-# parameters in a documented function, or documenting parameters that 
-# don't exist or using markup commands wrongly.
-
-WARN_IF_DOC_ERROR      = YES
-
-# This WARN_NO_PARAMDOC option can be abled to get warnings for 
-# functions that are documented, but have no documentation for their parameters 
-# or return value. If set to NO (the default) doxygen will only warn about 
-# wrong or incomplete parameter documentation, but not about the absence of 
-# documentation.
-
-WARN_NO_PARAMDOC       = NO
-
-# The WARN_FORMAT tag determines the format of the warning messages that 
-# doxygen can produce. The string should contain the $file, $line, and $text 
-# tags, which will be replaced by the file and line number from which the 
-# warning originated and the warning text. Optionally the format may contain 
-# $version, which will be replaced by the version of the file (if it could 
-# be obtained via FILE_VERSION_FILTER)
-
-WARN_FORMAT            = "$file:$line: $text"
-
-# The WARN_LOGFILE tag can be used to specify a file to which warning 
-# and error messages should be written. If left blank the output is written 
-# to stderr.
-
-WARN_LOGFILE           = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the input files
-#---------------------------------------------------------------------------
-
-# The INPUT tag can be used to specify the files and/or directories that contain 
-# documented source files. You may enter file names like "myfile.cpp" or 
-# directories like "/usr/src/myproject". Separate the files or directories 
-# with spaces.
-
-INPUT                  = @top_srcdir@/src
-
-# This tag can be used to specify the character encoding of the source files that 
-# doxygen parses. Internally doxygen uses the UTF-8 encoding, which is also the default 
-# input encoding. Doxygen uses libiconv (or the iconv built into libc) for the transcoding. 
-# See http://www.gnu.org/software/libiconv for the list of possible encodings.
-
-INPUT_ENCODING         = UTF-8
-
-# If the value of the INPUT tag contains directories, you can use the 
-# FILE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
-# and *.h) to filter out the source-files in the directories. If left 
-# blank the following patterns are tested: 
-# *.c *.cc *.cxx *.cpp *.c++ *.java *.ii *.ixx *.ipp *.i++ *.inl *.h *.hh *.hxx 
-# *.hpp *.h++ *.idl *.odl *.cs *.php *.php3 *.inc *.m *.mm *.py
-
-FILE_PATTERNS          = 
-
-# The RECURSIVE tag can be used to turn specify whether or not subdirectories 
-# should be searched for input files as well. Possible values are YES and NO. 
-# If left blank NO is used.
-
-RECURSIVE              = NO
-
-# The EXCLUDE tag can be used to specify files and/or directories that should 
-# excluded from the INPUT source files. This way you can easily exclude a 
-# subdirectory from a directory tree whose root is specified with the INPUT tag.
-
-EXCLUDE                = 
-
-# The EXCLUDE_SYMLINKS tag can be used select whether or not files or 
-# directories that are symbolic links (a Unix filesystem feature) are excluded 
-# from the input.
-
-EXCLUDE_SYMLINKS       = NO
-
-# If the value of the INPUT tag contains directories, you can use the 
-# EXCLUDE_PATTERNS tag to specify one or more wildcard patterns to exclude 
-# certain files from those directories. Note that the wildcards are matched 
-# against the file with absolute path, so to exclude all test directories 
-# for example use the pattern */test/*
-
-EXCLUDE_PATTERNS       = 
-
-# The EXCLUDE_SYMBOLS tag can be used to specify one or more symbol names 
-# (namespaces, classes, functions, etc.) that should be excluded from the output. 
-# The symbol name can be a fully qualified name, a word, or if the wildcard * is used, 
-# a substring. Examples: ANamespace, AClass, AClass::ANamespace, ANamespace::*Test
-
-EXCLUDE_SYMBOLS        = 
-
-# The EXAMPLE_PATH tag can be used to specify one or more files or 
-# directories that contain example code fragments that are included (see 
-# the \include command).
-
-EXAMPLE_PATH           = 
-
-# If the value of the EXAMPLE_PATH tag contains directories, you can use the 
-# EXAMPLE_PATTERNS tag to specify one or more wildcard pattern (like *.cpp 
-# and *.h) to filter out the source-files in the directories. If left 
-# blank all files are included.
-
-EXAMPLE_PATTERNS       = 
-
-# If the EXAMPLE_RECURSIVE tag is set to YES then subdirectories will be 
-# searched for input files to be used with the \include or \dontinclude 
-# commands irrespective of the value of the RECURSIVE tag. 
-# Possible values are YES and NO. If left blank NO is used.
-
-EXAMPLE_RECURSIVE      = NO
-
-# The IMAGE_PATH tag can be used to specify one or more files or 
-# directories that contain image that are included in the documentation (see 
-# the \image command).
-
-IMAGE_PATH             = 
-
-# The INPUT_FILTER tag can be used to specify a program that doxygen should 
-# invoke to filter for each input file. Doxygen will invoke the filter program 
-# by executing (via popen()) the command <filter> <input-file>, where <filter> 
-# is the value of the INPUT_FILTER tag, and <input-file> is the name of an 
-# input file. Doxygen will then use the output that the filter program writes 
-# to standard output.  If FILTER_PATTERNS is specified, this tag will be 
-# ignored.
-
-INPUT_FILTER           = 
-
-# The FILTER_PATTERNS tag can be used to specify filters on a per file pattern 
-# basis.  Doxygen will compare the file name with each pattern and apply the 
-# filter if there is a match.  The filters are a list of the form: 
-# pattern=filter (like *.cpp=my_cpp_filter). See INPUT_FILTER for further 
-# info on how filters are used. If FILTER_PATTERNS is empty, INPUT_FILTER 
-# is applied to all files.
-
-FILTER_PATTERNS        = 
-
-# If the FILTER_SOURCE_FILES tag is set to YES, the input filter (if set using 
-# INPUT_FILTER) will be used to filter the input files when producing source 
-# files to browse (i.e. when SOURCE_BROWSER is set to YES).
-
-FILTER_SOURCE_FILES    = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to source browsing
-#---------------------------------------------------------------------------
-
-# If the SOURCE_BROWSER tag is set to YES then a list of source files will 
-# be generated. Documented entities will be cross-referenced with these sources. 
-# Note: To get rid of all source code in the generated output, make sure also 
-# VERBATIM_HEADERS is set to NO. If you have enabled CALL_GRAPH or CALLER_GRAPH 
-# then you must also enable this option. If you don't then doxygen will produce 
-# a warning and turn it on anyway
-
-SOURCE_BROWSER         = NO
-
-# Setting the INLINE_SOURCES tag to YES will include the body 
-# of functions and classes directly in the documentation.
-
-INLINE_SOURCES         = NO
-
-# Setting the STRIP_CODE_COMMENTS tag to YES (the default) will instruct 
-# doxygen to hide any special comment blocks from generated source code 
-# fragments. Normal C and C++ comments will always remain visible.
-
-STRIP_CODE_COMMENTS    = YES
-
-# If the REFERENCED_BY_RELATION tag is set to YES (the default) 
-# then for each documented function all documented 
-# functions referencing it will be listed.
-
-REFERENCED_BY_RELATION = YES
-
-# If the REFERENCES_RELATION tag is set to YES (the default) 
-# then for each documented function all documented entities 
-# called/used by that function will be listed.
-
-REFERENCES_RELATION    = YES
-
-# If the REFERENCES_LINK_SOURCE tag is set to YES (the default)
-# and SOURCE_BROWSER tag is set to YES, then the hyperlinks from
-# functions in REFERENCES_RELATION and REFERENCED_BY_RELATION lists will
-# link to the source code.  Otherwise they will link to the documentstion.
-
-REFERENCES_LINK_SOURCE = YES
-
-# If the USE_HTAGS tag is set to YES then the references to source code 
-# will point to the HTML generated by the htags(1) tool instead of doxygen 
-# built-in source browser. The htags tool is part of GNU's global source 
-# tagging system (see http://www.gnu.org/software/global/global.html). You 
-# will need version 4.8.6 or higher.
-
-USE_HTAGS              = NO
-
-# If the VERBATIM_HEADERS tag is set to YES (the default) then Doxygen 
-# will generate a verbatim copy of the header file for each class for 
-# which an include is specified. Set to NO to disable this.
-
-VERBATIM_HEADERS       = YES
-
-#---------------------------------------------------------------------------
-# configuration options related to the alphabetical class index
-#---------------------------------------------------------------------------
-
-# If the ALPHABETICAL_INDEX tag is set to YES, an alphabetical index 
-# of all compounds will be generated. Enable this if the project 
-# contains a lot of classes, structs, unions or interfaces.
-
-ALPHABETICAL_INDEX     = NO
-
-# If the alphabetical index is enabled (see ALPHABETICAL_INDEX) then 
-# the COLS_IN_ALPHA_INDEX tag can be used to specify the number of columns 
-# in which this list will be split (can be a number in the range [1..20])
-
-COLS_IN_ALPHA_INDEX    = 5
-
-# In case all classes in a project start with a common prefix, all 
-# classes will be put under the same header in the alphabetical index. 
-# The IGNORE_PREFIX tag can be used to specify one or more prefixes that 
-# should be ignored while generating the index headers.
-
-IGNORE_PREFIX          = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the HTML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_HTML tag is set to YES (the default) Doxygen will 
-# generate HTML output.
-
-GENERATE_HTML          = YES
-
-# The HTML_OUTPUT tag is used to specify where the HTML docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `html' will be used as the default path.
-
-HTML_OUTPUT            = html
-
-# The HTML_FILE_EXTENSION tag can be used to specify the file extension for 
-# each generated HTML page (for example: .htm,.php,.asp). If it is left blank 
-# doxygen will generate files with .html extension.
-
-HTML_FILE_EXTENSION    = .html
-
-# The HTML_HEADER tag can be used to specify a personal HTML header for 
-# each generated HTML page. If it is left blank doxygen will generate a 
-# standard header.
-
-HTML_HEADER            = 
-
-# The HTML_FOOTER tag can be used to specify a personal HTML footer for 
-# each generated HTML page. If it is left blank doxygen will generate a 
-# standard footer.
-
-HTML_FOOTER            = 
-
-# The HTML_STYLESHEET tag can be used to specify a user-defined cascading 
-# style sheet that is used by each HTML page. It can be used to 
-# fine-tune the look of the HTML output. If the tag is left blank doxygen 
-# will generate a default style sheet. Note that doxygen will try to copy 
-# the style sheet file to the HTML output directory, so don't put your own 
-# stylesheet in the HTML output directory as well, or it will be erased!
-
-HTML_STYLESHEET        = 
-
-# If the HTML_ALIGN_MEMBERS tag is set to YES, the members of classes, 
-# files or namespaces will be aligned in HTML using tables. If set to 
-# NO a bullet list will be used.
-
-HTML_ALIGN_MEMBERS     = YES
-
-# If the GENERATE_HTMLHELP tag is set to YES, additional index files 
-# will be generated that can be used as input for tools like the 
-# Microsoft HTML help workshop to generate a compressed HTML help file (.chm) 
-# of the generated HTML documentation.
-
-GENERATE_HTMLHELP      = NO
-
-# If the HTML_DYNAMIC_SECTIONS tag is set to YES then the generated HTML 
-# documentation will contain sections that can be hidden and shown after the 
-# page has loaded. For this to work a browser that supports 
-# JavaScript and DHTML is required (for instance Mozilla 1.0+, Firefox 
-# Netscape 6.0+, Internet explorer 5.0+, Konqueror, or Safari).
-
-HTML_DYNAMIC_SECTIONS  = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the CHM_FILE tag can 
-# be used to specify the file name of the resulting .chm file. You 
-# can add a path in front of the file if the result should not be 
-# written to the html output directory.
-
-CHM_FILE               = 
-
-# If the GENERATE_HTMLHELP tag is set to YES, the HHC_LOCATION tag can 
-# be used to specify the location (absolute path including file name) of 
-# the HTML help compiler (hhc.exe). If non-empty doxygen will try to run 
-# the HTML help compiler on the generated index.hhp.
-
-HHC_LOCATION           = 
-
-# If the GENERATE_HTMLHELP tag is set to YES, the GENERATE_CHI flag 
-# controls if a separate .chi index file is generated (YES) or that 
-# it should be included in the master .chm file (NO).
-
-GENERATE_CHI           = NO
-
-# If the GENERATE_HTMLHELP tag is set to YES, the BINARY_TOC flag 
-# controls whether a binary table of contents is generated (YES) or a 
-# normal table of contents (NO) in the .chm file.
-
-BINARY_TOC             = NO
-
-# The TOC_EXPAND flag can be set to YES to add extra items for group members 
-# to the contents of the HTML help documentation and to the tree view.
-
-TOC_EXPAND             = NO
-
-# The DISABLE_INDEX tag can be used to turn on/off the condensed index at 
-# top of each HTML page. The value NO (the default) enables the index and 
-# the value YES disables it.
-
-DISABLE_INDEX          = NO
-
-# This tag can be used to set the number of enum values (range [1..20]) 
-# that doxygen will group on one line in the generated HTML documentation.
-
-ENUM_VALUES_PER_LINE   = 4
-
-# If the GENERATE_TREEVIEW tag is set to YES, a side panel will be
-# generated containing a tree-like index structure (just like the one that 
-# is generated for HTML Help). For this to work a browser that supports 
-# JavaScript, DHTML, CSS and frames is required (for instance Mozilla 1.0+, 
-# Netscape 6.0+, Internet explorer 5.0+, or Konqueror). Windows users are 
-# probably better off using the HTML help feature.
-
-GENERATE_TREEVIEW      = NO
-
-# If the treeview is enabled (see GENERATE_TREEVIEW) then this tag can be 
-# used to set the initial width (in pixels) of the frame in which the tree 
-# is shown.
-
-TREEVIEW_WIDTH         = 250
-
-#---------------------------------------------------------------------------
-# configuration options related to the LaTeX output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_LATEX tag is set to YES (the default) Doxygen will 
-# generate Latex output.
-
-GENERATE_LATEX         = YES
-
-# The LATEX_OUTPUT tag is used to specify where the LaTeX docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `latex' will be used as the default path.
-
-LATEX_OUTPUT           = latex
-
-# The LATEX_CMD_NAME tag can be used to specify the LaTeX command name to be 
-# invoked. If left blank `latex' will be used as the default command name.
-
-LATEX_CMD_NAME         = latex
-
-# The MAKEINDEX_CMD_NAME tag can be used to specify the command name to 
-# generate index for LaTeX. If left blank `makeindex' will be used as the 
-# default command name.
-
-MAKEINDEX_CMD_NAME     = makeindex
-
-# If the COMPACT_LATEX tag is set to YES Doxygen generates more compact 
-# LaTeX documents. This may be useful for small projects and may help to 
-# save some trees in general.
-
-COMPACT_LATEX          = NO
-
-# The PAPER_TYPE tag can be used to set the paper type that is used 
-# by the printer. Possible values are: a4, a4wide, letter, legal and 
-# executive. If left blank a4wide will be used.
-
-PAPER_TYPE             = a4wide
-
-# The EXTRA_PACKAGES tag can be to specify one or more names of LaTeX 
-# packages that should be included in the LaTeX output.
-
-EXTRA_PACKAGES         = 
-
-# The LATEX_HEADER tag can be used to specify a personal LaTeX header for 
-# the generated latex document. The header should contain everything until 
-# the first chapter. If it is left blank doxygen will generate a 
-# standard header. Notice: only use this tag if you know what you are doing!
-
-LATEX_HEADER           = 
-
-# If the PDF_HYPERLINKS tag is set to YES, the LaTeX that is generated 
-# is prepared for conversion to pdf (using ps2pdf). The pdf file will 
-# contain links (just like the HTML output) instead of page references 
-# This makes the output suitable for online browsing using a pdf viewer.
-
-PDF_HYPERLINKS         = NO
-
-# If the USE_PDFLATEX tag is set to YES, pdflatex will be used instead of 
-# plain latex in the generated Makefile. Set this option to YES to get a 
-# higher quality PDF documentation.
-
-USE_PDFLATEX           = NO
-
-# If the LATEX_BATCHMODE tag is set to YES, doxygen will add the \\batchmode. 
-# command to the generated LaTeX files. This will instruct LaTeX to keep 
-# running if errors occur, instead of asking the user for help. 
-# This option is also used when generating formulas in HTML.
-
-LATEX_BATCHMODE        = NO
-
-# If LATEX_HIDE_INDICES is set to YES then doxygen will not 
-# include the index chapters (such as File Index, Compound Index, etc.) 
-# in the output.
-
-LATEX_HIDE_INDICES     = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the RTF output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_RTF tag is set to YES Doxygen will generate RTF output 
-# The RTF output is optimized for Word 97 and may not look very pretty with 
-# other RTF readers or editors.
-
-GENERATE_RTF           = NO
-
-# The RTF_OUTPUT tag is used to specify where the RTF docs will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `rtf' will be used as the default path.
-
-RTF_OUTPUT             = rtf
-
-# If the COMPACT_RTF tag is set to YES Doxygen generates more compact 
-# RTF documents. This may be useful for small projects and may help to 
-# save some trees in general.
-
-COMPACT_RTF            = NO
-
-# If the RTF_HYPERLINKS tag is set to YES, the RTF that is generated 
-# will contain hyperlink fields. The RTF file will 
-# contain links (just like the HTML output) instead of page references. 
-# This makes the output suitable for online browsing using WORD or other 
-# programs which support those fields. 
-# Note: wordpad (write) and others do not support links.
-
-RTF_HYPERLINKS         = NO
-
-# Load stylesheet definitions from file. Syntax is similar to doxygen's 
-# config file, i.e. a series of assignments. You only have to provide 
-# replacements, missing definitions are set to their default value.
-
-RTF_STYLESHEET_FILE    = 
-
-# Set optional variables used in the generation of an rtf document. 
-# Syntax is similar to doxygen's config file.
-
-RTF_EXTENSIONS_FILE    = 
-
-#---------------------------------------------------------------------------
-# configuration options related to the man page output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_MAN tag is set to YES (the default) Doxygen will 
-# generate man pages
-
-GENERATE_MAN           = NO
-
-# The MAN_OUTPUT tag is used to specify where the man pages will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `man' will be used as the default path.
-
-MAN_OUTPUT             = man
-
-# The MAN_EXTENSION tag determines the extension that is added to 
-# the generated man pages (default is the subroutine's section .3)
-
-MAN_EXTENSION          = .3
-
-# If the MAN_LINKS tag is set to YES and Doxygen generates man output, 
-# then it will generate one additional man file for each entity 
-# documented in the real man page(s). These additional files 
-# only source the real man page, but without them the man command 
-# would be unable to find the correct page. The default is NO.
-
-MAN_LINKS              = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the XML output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_XML tag is set to YES Doxygen will 
-# generate an XML file that captures the structure of 
-# the code including all documentation.
-
-GENERATE_XML           = NO
-
-# The XML_OUTPUT tag is used to specify where the XML pages will be put. 
-# If a relative path is entered the value of OUTPUT_DIRECTORY will be 
-# put in front of it. If left blank `xml' will be used as the default path.
-
-XML_OUTPUT             = xml
-
-# The XML_SCHEMA tag can be used to specify an XML schema, 
-# which can be used by a validating XML parser to check the 
-# syntax of the XML files.
-
-XML_SCHEMA             = 
-
-# The XML_DTD tag can be used to specify an XML DTD, 
-# which can be used by a validating XML parser to check the 
-# syntax of the XML files.
-
-XML_DTD                = 
-
-# If the XML_PROGRAMLISTING tag is set to YES Doxygen will 
-# dump the program listings (including syntax highlighting 
-# and cross-referencing information) to the XML output. Note that 
-# enabling this will significantly increase the size of the XML output.
-
-XML_PROGRAMLISTING     = YES
-
-#---------------------------------------------------------------------------
-# configuration options for the AutoGen Definitions output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_AUTOGEN_DEF tag is set to YES Doxygen will 
-# generate an AutoGen Definitions (see autogen.sf.net) file 
-# that captures the structure of the code including all 
-# documentation. Note that this feature is still experimental 
-# and incomplete at the moment.
-
-GENERATE_AUTOGEN_DEF   = NO
-
-#---------------------------------------------------------------------------
-# configuration options related to the Perl module output
-#---------------------------------------------------------------------------
-
-# If the GENERATE_PERLMOD tag is set to YES Doxygen will 
-# generate a Perl module file that captures the structure of 
-# the code including all documentation. Note that this 
-# feature is still experimental and incomplete at the 
-# moment.
-
-GENERATE_PERLMOD       = NO
-
-# If the PERLMOD_LATEX tag is set to YES Doxygen will generate 
-# the necessary Makefile rules, Perl scripts and LaTeX code to be able 
-# to generate PDF and DVI output from the Perl module output.
-
-PERLMOD_LATEX          = NO
-
-# If the PERLMOD_PRETTY tag is set to YES the Perl module output will be 
-# nicely formatted so it can be parsed by a human reader.  This is useful 
-# if you want to understand what is going on.  On the other hand, if this 
-# tag is set to NO the size of the Perl module output will be much smaller 
-# and Perl will parse it just the same.
-
-PERLMOD_PRETTY         = YES
-
-# The names of the make variables in the generated doxyrules.make file 
-# are prefixed with the string contained in PERLMOD_MAKEVAR_PREFIX. 
-# This is useful so different doxyrules.make files included by the same 
-# Makefile don't overwrite each other's variables.
-
-PERLMOD_MAKEVAR_PREFIX = 
-
-#---------------------------------------------------------------------------
-# Configuration options related to the preprocessor   
-#---------------------------------------------------------------------------
-
-# If the ENABLE_PREPROCESSING tag is set to YES (the default) Doxygen will 
-# evaluate all C-preprocessor directives found in the sources and include 
-# files.
-
-ENABLE_PREPROCESSING   = YES
-
-# If the MACRO_EXPANSION tag is set to YES Doxygen will expand all macro 
-# names in the source code. If set to NO (the default) only conditional 
-# compilation will be performed. Macro expansion can be done in a controlled 
-# way by setting EXPAND_ONLY_PREDEF to YES.
-
-MACRO_EXPANSION        = NO
-
-# If the EXPAND_ONLY_PREDEF and MACRO_EXPANSION tags are both set to YES 
-# then the macro expansion is limited to the macros specified with the 
-# PREDEFINED and EXPAND_AS_DEFINED tags.
-
-EXPAND_ONLY_PREDEF     = NO
-
-# If the SEARCH_INCLUDES tag is set to YES (the default) the includes files 
-# in the INCLUDE_PATH (see below) will be search if a #include is found.
-
-SEARCH_INCLUDES        = YES
-
-# The INCLUDE_PATH tag can be used to specify one or more directories that 
-# contain include files that are not input files but should be processed by 
-# the preprocessor.
-
-INCLUDE_PATH           = 
-
-# You can use the INCLUDE_FILE_PATTERNS tag to specify one or more wildcard 
-# patterns (like *.h and *.hpp) to filter out the header-files in the 
-# directories. If left blank, the patterns specified with FILE_PATTERNS will 
-# be used.
-
-INCLUDE_FILE_PATTERNS  = 
-
-# The PREDEFINED tag can be used to specify one or more macro names that 
-# are defined before the preprocessor is started (similar to the -D option of 
-# gcc). The argument of the tag is a list of macros of the form: name 
-# or name=definition (no spaces). If the definition and the = are 
-# omitted =1 is assumed. To prevent a macro definition from being 
-# undefined via #undef or recursively expanded use the := operator 
-# instead of the = operator.
-
-PREDEFINED             = 
-
-# If the MACRO_EXPANSION and EXPAND_ONLY_PREDEF tags are set to YES then 
-# this tag can be used to specify a list of macro names that should be expanded. 
-# The macro definition that is found in the sources will be used. 
-# Use the PREDEFINED tag if you want to use a different macro definition.
-
-EXPAND_AS_DEFINED      = 
-
-# If the SKIP_FUNCTION_MACROS tag is set to YES (the default) then 
-# doxygen's preprocessor will remove all function-like macros that are alone 
-# on a line, have an all uppercase name, and do not end with a semicolon. Such 
-# function macros are typically used for boiler-plate code, and will confuse 
-# the parser if not removed.
-
-SKIP_FUNCTION_MACROS   = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to external references   
-#---------------------------------------------------------------------------
-
-# The TAGFILES option can be used to specify one or more tagfiles. 
-# Optionally an initial location of the external documentation 
-# can be added for each tagfile. The format of a tag file without 
-# this location is as follows: 
-#   TAGFILES = file1 file2 ... 
-# Adding location for the tag files is done as follows: 
-#   TAGFILES = file1=loc1 "file2 = loc2" ... 
-# where "loc1" and "loc2" can be relative or absolute paths or 
-# URLs. If a location is present for each tag, the installdox tool 
-# does not have to be run to correct the links.
-# Note that each tag file must have a unique name
-# (where the name does NOT include the path)
-# If a tag file is not located in the directory in which doxygen 
-# is run, you must also specify the path to the tagfile here.
-
-TAGFILES               = 
-
-# When a file name is specified after GENERATE_TAGFILE, doxygen will create 
-# a tag file that is based on the input files it reads.
-
-GENERATE_TAGFILE       = 
-
-# If the ALLEXTERNALS tag is set to YES all external classes will be listed 
-# in the class index. If set to NO only the inherited external classes 
-# will be listed.
-
-ALLEXTERNALS           = NO
-
-# If the EXTERNAL_GROUPS tag is set to YES all external groups will be listed 
-# in the modules index. If set to NO, only the current project's groups will 
-# be listed.
-
-EXTERNAL_GROUPS        = YES
-
-# The PERL_PATH should be the absolute path and name of the perl script 
-# interpreter (i.e. the result of `which perl').
-
-PERL_PATH              = /usr/bin/perl
-
-#---------------------------------------------------------------------------
-# Configuration options related to the dot tool   
-#---------------------------------------------------------------------------
-
-# If the CLASS_DIAGRAMS tag is set to YES (the default) Doxygen will 
-# generate a inheritance diagram (in HTML, RTF and LaTeX) for classes with base 
-# or super classes. Setting the tag to NO turns the diagrams off. Note that 
-# this option is superseded by the HAVE_DOT option below. This is only a 
-# fallback. It is recommended to install and use dot, since it yields more 
-# powerful graphs.
-
-CLASS_DIAGRAMS         = YES
-
-# You can define message sequence charts within doxygen comments using the \msc 
-# command. Doxygen will then run the mscgen tool (see http://www.mcternan.me.uk/mscgen/) to 
-# produce the chart and insert it in the documentation. The MSCGEN_PATH tag allows you to 
-# specify the directory where the mscgen tool resides. If left empty the tool is assumed to 
-# be found in the default search path.
-
-MSCGEN_PATH            = 
-
-# If set to YES, the inheritance and collaboration graphs will hide 
-# inheritance and usage relations if the target is undocumented 
-# or is not a class.
-
-HIDE_UNDOC_RELATIONS   = YES
-
-# If you set the HAVE_DOT tag to YES then doxygen will assume the dot tool is 
-# available from the path. This tool is part of Graphviz, a graph visualization 
-# toolkit from AT&T and Lucent Bell Labs. The other options in this section 
-# have no effect if this option is set to NO (the default)
-
-HAVE_DOT               = NO
-
-# If the CLASS_GRAPH and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for each documented class showing the direct and 
-# indirect inheritance relations. Setting this tag to YES will force the 
-# the CLASS_DIAGRAMS tag to NO.
-
-CLASS_GRAPH            = YES
-
-# If the COLLABORATION_GRAPH and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for each documented class showing the direct and 
-# indirect implementation dependencies (inheritance, containment, and 
-# class references variables) of the class with other documented classes.
-
-COLLABORATION_GRAPH    = YES
-
-# If the GROUP_GRAPHS and HAVE_DOT tags are set to YES then doxygen 
-# will generate a graph for groups, showing the direct groups dependencies
-
-GROUP_GRAPHS           = YES
-
-# If the UML_LOOK tag is set to YES doxygen will generate inheritance and 
-# collaboration diagrams in a style similar to the OMG's Unified Modeling 
-# Language.
-
-UML_LOOK               = NO
-
-# If set to YES, the inheritance and collaboration graphs will show the 
-# relations between templates and their instances.
-
-TEMPLATE_RELATIONS     = NO
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDE_GRAPH, and HAVE_DOT 
-# tags are set to YES then doxygen will generate a graph for each documented 
-# file showing the direct and indirect include dependencies of the file with 
-# other documented files.
-
-INCLUDE_GRAPH          = YES
-
-# If the ENABLE_PREPROCESSING, SEARCH_INCLUDES, INCLUDED_BY_GRAPH, and 
-# HAVE_DOT tags are set to YES then doxygen will generate a graph for each 
-# documented header file showing the documented files that directly or 
-# indirectly include this file.
-
-INCLUDED_BY_GRAPH      = YES
-
-# If the CALL_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will 
-# generate a call dependency graph for every global function or class method. 
-# Note that enabling this option will significantly increase the time of a run. 
-# So in most cases it will be better to enable call graphs for selected 
-# functions only using the \callgraph command.
-
-CALL_GRAPH             = NO
-
-# If the CALLER_GRAPH, SOURCE_BROWSER and HAVE_DOT tags are set to YES then doxygen will 
-# generate a caller dependency graph for every global function or class method. 
-# Note that enabling this option will significantly increase the time of a run. 
-# So in most cases it will be better to enable caller graphs for selected 
-# functions only using the \callergraph command.
-
-CALLER_GRAPH           = NO
-
-# If the GRAPHICAL_HIERARCHY and HAVE_DOT tags are set to YES then doxygen 
-# will graphical hierarchy of all classes instead of a textual one.
-
-GRAPHICAL_HIERARCHY    = YES
-
-# If the DIRECTORY_GRAPH, SHOW_DIRECTORIES and HAVE_DOT tags are set to YES 
-# then doxygen will show the dependencies a directory has on other directories 
-# in a graphical way. The dependency relations are determined by the #include
-# relations between the files in the directories.
-
-DIRECTORY_GRAPH        = YES
-
-# The DOT_IMAGE_FORMAT tag can be used to set the image format of the images 
-# generated by dot. Possible values are png, jpg, or gif
-# If left blank png will be used.
-
-DOT_IMAGE_FORMAT       = png
-
-# The tag DOT_PATH can be used to specify the path where the dot tool can be 
-# found. If left blank, it is assumed the dot tool can be found in the path.
-
-DOT_PATH               = 
-
-# The DOTFILE_DIRS tag can be used to specify one or more directories that 
-# contain dot files that are included in the documentation (see the 
-# \dotfile command).
-
-DOTFILE_DIRS           = 
-
-# The MAX_DOT_GRAPH_MAX_NODES tag can be used to set the maximum number of 
-# nodes that will be shown in the graph. If the number of nodes in a graph 
-# becomes larger than this value, doxygen will truncate the graph, which is 
-# visualized by representing a node as a red box. Note that doxygen if the number 
-# of direct children of the root node in a graph is already larger than 
-# MAX_DOT_GRAPH_NOTES then the graph will not be shown at all. Also note 
-# that the size of a graph can be further restricted by MAX_DOT_GRAPH_DEPTH.
-
-DOT_GRAPH_MAX_NODES    = 50
-
-# The MAX_DOT_GRAPH_DEPTH tag can be used to set the maximum depth of the 
-# graphs generated by dot. A depth value of 3 means that only nodes reachable 
-# from the root by following a path via at most 3 edges will be shown. Nodes 
-# that lay further from the root node will be omitted. Note that setting this 
-# option to 1 or 2 may greatly reduce the computation time needed for large 
-# code bases. Also note that the size of a graph can be further restricted by 
-# DOT_GRAPH_MAX_NODES. Using a depth of 0 means no depth restriction.
-
-MAX_DOT_GRAPH_DEPTH    = 0
-
-# Set the DOT_TRANSPARENT tag to YES to generate images with a transparent 
-# background. This is disabled by default, which results in a white background. 
-# Warning: Depending on the platform used, enabling this option may lead to 
-# badly anti-aliased labels on the edges of a graph (i.e. they become hard to 
-# read).
-
-DOT_TRANSPARENT        = YES
-
-# Set the DOT_MULTI_TARGETS tag to YES allow dot to generate multiple output 
-# files in one run (i.e. multiple -o and -T options on the command line). This 
-# makes dot run faster, but since only newer versions of dot (>1.8.10) 
-# support this, this feature is disabled by default.
-
-DOT_MULTI_TARGETS      = NO
-
-# If the GENERATE_LEGEND tag is set to YES (the default) Doxygen will 
-# generate a legend page explaining the meaning of the various boxes and 
-# arrows in the dot generated graphs.
-
-GENERATE_LEGEND        = YES
-
-# If the DOT_CLEANUP tag is set to YES (the default) Doxygen will 
-# remove the intermediate dot files that are used to generate 
-# the various graphs.
-
-DOT_CLEANUP            = YES
-
-#---------------------------------------------------------------------------
-# Configuration::additions related to the search engine   
-#---------------------------------------------------------------------------
-
-# The SEARCHENGINE tag specifies whether or not a search engine should be 
-# used. If set to NO the values of all tags below this one will be ignored.
-
-SEARCHENGINE           = NO
diff --git a/bindings/cil/Makefile.am b/bindings/cil/Makefile.am
deleted file mode 100644 (file)
index d98ebad..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-# Makefile.am - master Makefile for libvlc-cil
-
-ACLOCAL_AMFLAGS = -I m4
-AUTOMAKE_OPTIONS = \
-       -Wall \
-       check-news \
-       std-options \
-       dist-bzip2 \
-       no-dist-gzip \
-       no-exeext
-
-SUBDIRS = src tests
-DIST_SUBDIRS = $(SUBDIRS) m4
-
-doc: Doxyfile
-       $(DOXYGEN)
-
-.PHONY: doc
diff --git a/bindings/cil/NEWS b/bindings/cil/NEWS
deleted file mode 100644 (file)
index a30fbc6..0000000
+++ /dev/null
@@ -1,4 +0,0 @@
-libvlc-cil 0.9.0
-=================
-
-Initial release.
diff --git a/bindings/cil/README b/bindings/cil/README
deleted file mode 100644 (file)
index f25e1b0..0000000
+++ /dev/null
@@ -1,5 +0,0 @@
-libvlc-cil 0.9.0
-=================
-
-Common Intermediary Language bindings for LibVLC
-
diff --git a/bindings/cil/autogen.sh b/bindings/cil/autogen.sh
deleted file mode 100755 (executable)
index 6259402..0000000
+++ /dev/null
@@ -1,38 +0,0 @@
-#!/bin/sh
-# SVN package rebuild script
-# $Id$
-#
-# ***********************************************************************
-# *  Copyright © 2002-2005 Rémi Denis-Courmont.                         *
-# *  This program is free software; you can redistribute and/or modify  *
-# *  it under the terms of the GNU General Public License as published  *
-# *  by the Free Software Foundation; version 2 of the license.         *
-# *                                                                     *
-# *  This program is distributed in the hope that it will be useful,    *
-# *  but WITHOUT ANY WARRANTY; without even the implied warranty of     *
-# *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.               *
-# *  See the GNU General Public License for more details.               *
-# *                                                                     *
-# *  You should have received a copy of the GNU General Public License  *
-# *  along with this program; if not, you can get it from:              *
-# *  http://www.gnu.org/copyleft/gpl.html                               *
-# ***********************************************************************
-
-set -xe
-
-cd "$(dirname "$0")"
-
-test -f src/exception.cs || {
-       echo "You must run this script from your cil directory.">&2
-       exit 1
-}
-
-mkdir -p admin
-autoreconf -sfi
-
-set +x
-echo ""
-echo "Type \`./configure' to configure the package for your system"
-echo "(type \`./configure -- help' for help)."
-echo "Then you can use the usual \`make', \`make install', etc."
-
diff --git a/bindings/cil/configure.ac b/bindings/cil/configure.ac
deleted file mode 100644 (file)
index 33676a3..0000000
+++ /dev/null
@@ -1,40 +0,0 @@
-dnl configure.ac - Configure script for libvlc-cil
-
-dnl Process this file with GNU Autoconf to produce a configure script
-
-dnl ***********************************************************************
-dnl *  Copyright © 2007 Rémi Denis-Courmont.                              *
-dnl *  This program is free software; you can redistribute and/or modify  *
-dnl *  it under the terms of the GNU General Public License as published  *
-dnl *  by the Free Software Foundation; version 2 of the license, or (at  *
-dnl *  your option) any later version.                                    *
-dnl *                                                                     *
-dnl *  This program is distributed in the hope that it will be useful,    *
-dnl *  but WITHOUT ANY WARRANTY; without even the implied warranty of     *
-dnl *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.               *
-dnl *  See the GNU General Public License for more details.               *
-dnl *                                                                     *
-dnl *  You should have received a copy of the GNU General Public License  *
-dnl *  along with this program; if not, you can get it from:              *
-dnl *  http://www.gnu.org/copyleft/gpl.html                               *
-dnl ***********************************************************************
-
-AC_COPYRIGHT([Copyright (C) 2004-2009 Remi Denis-Courmont])
-AC_INIT(libvlc-cil, 1.0.0, vlc-devel_no_bulk_mail@videolan.org)
-AC_PREREQ(2.50)
-
-AC_CONFIG_SRCDIR(configure.ac)
-AC_CONFIG_AUX_DIR(admin)
-AC_CONFIG_MACRO_DIR(m4)
-
-AC_ARG_VAR([CSC], [C sharp compiler command])
-AC_ARG_VAR([CSFLAGS], [C sharp compiler flags])
-AC_PATH_PROG([CSC], [gmcs csc], [false])
-
-AC_ARG_VAR([DOXYGEN], [Doxygen command])
-AC_PATH_PROG([DOXYGEN], [doxygen], [false])
-
-AM_INIT_AUTOMAKE
-
-AC_CONFIG_FILES([Makefile m4/Makefile src/Makefile tests/Makefile Doxyfile])
-AC_OUTPUT
diff --git a/bindings/cil/m4/Makefile.am b/bindings/cil/m4/Makefile.am
deleted file mode 100644 (file)
index e69de29..0000000
diff --git a/bindings/cil/src/.gitignore b/bindings/cil/src/.gitignore
deleted file mode 100644 (file)
index 2d153be..0000000
+++ /dev/null
@@ -1 +0,0 @@
-VideoLAN.LibVLC.dll
diff --git a/bindings/cil/src/Makefile.am b/bindings/cil/src/Makefile.am
deleted file mode 100644 (file)
index 8392f3a..0000000
+++ /dev/null
@@ -1,18 +0,0 @@
-EXTRA_DIST = $(SOURCES_dll)
-MOSTLYCLEANFILES = $(pkglib_SCRIPTS)
-
-pkglib_SCRIPTS = VideoLAN.LibVLC.dll
-
-SOURCES_dll = \
-       ustring.cs \
-       exception.cs \
-       event.cs \
-       marshal.cs \
-       instance.cs \
-       media.cs \
-       player.cs \
-       libvlc.cs
-
-VideoLAN.LibVLC.dll: $(SOURCES_dll)
-       $(CSC) -target:library -out:$@ $(CSFLAGS) $^
-
diff --git a/bindings/cil/src/event.cs b/bindings/cil/src/event.cs
deleted file mode 100644 (file)
index e549c11..0000000
+++ /dev/null
@@ -1,120 +0,0 @@
-/**
- * @file event.cs
- * @brief Unmanaged LibVLC events
- * @ingroup Internals
- */
-
-/**********************************************************************
- *  Copyright (C) 2009 Rémi Denis-Courmont.                           *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @ingroup Internals
-     * @{
-     */
-
-    /**
-     * @brief EventType: LibVLC event types
-     */
-    internal enum EventType
-    {
-        MediaMetaChanged,
-        MediaSubItemAdded,
-        MediaDurationChanged,
-        MediaPreparsedChanged,
-        MediaFreed,
-        MediaStateChanged,
-
-        PlayerNothingSpecial,
-        PlayerOpening,
-        PlayerBuffering,
-        PlayerPlaying,
-        PlayerPaused,
-        PlayerStopped,
-        PlayerForward,
-        PlayerBackward,
-        PlayerEndReached,
-        PlayerEncounteredError,
-        PlayerTimeChanged,
-        PlayerPositionChanged,
-        PlayerSeekableChanged,
-        PlayerPausableChanged,
-
-        ListItemAdded,
-        ListWillAddItem,
-        ListItemDeleted,
-        ListWillDeleteItem,
-
-        ListViewItemAdded,
-        ListViewWillAddItem,
-        ListViewItemDeleted,
-        ListViewWillDeleteItem,
-
-        ListPlayerPlayed,
-        ListPlayerNextItemSet,
-        ListPlayerStopped,
-
-        DiscovererStarted,
-        DiscovererEnded,
-
-        PlayerTitleChanged,
-    };
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal class GenericEvent
-    {
-        public EventType type;
-        public IntPtr    obj;
-    };
-    internal delegate void GenericCallback (GenericEvent e, IntPtr d);
-
-    /* Player events */
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class PlayerPositionEvent : GenericEvent
-    {
-        float     position;
-    };
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class PlayerTimeEvent : GenericEvent
-    {
-        long      time;
-    };
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class PlayerTitleEvent : GenericEvent
-    {
-        int       title;
-    };
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class PlayerSeekableEvent : GenericEvent
-    {
-        long      seekable;
-    };
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class PlayerPausableChangedEvent : GenericEvent
-    {
-        long      pausable;
-    };
-    /** @} */
-};
\ No newline at end of file
diff --git a/bindings/cil/src/exception.cs b/bindings/cil/src/exception.cs
deleted file mode 100644 (file)
index c1a9ebc..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-/**
- * @file exception.cs
- * @brief LibVLC exceptions
- * @ingroup API
- */
-
-/**********************************************************************
- *  Copyright (C) 2007-2009 Rémi Denis-Courmont.                      *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @brief VLCException: base class for LibVLC exceptions
-     * @ingroup API
-     */
-    public class VLCException : Exception
-    {
-        int code;
-        /**
-         * VLC exception code.
-         */
-        public int Code
-        {
-            get
-            {
-                return code;
-            }
-        }
-
-        /**
-         * Creates a managed VLC exception.
-         */
-        public VLCException ()
-        {
-        }
-
-        /**
-         * Creates a managed VLC exception.
-         * @param message exception error message
-         */
-        public VLCException (string message)
-            : base (message)
-        {
-        }
-
-        /**
-         * Creates a managed VLC exception wrapping another exception.
-         * @param message exception error message
-         * @param inner inner wrapped exception
-         */
-        public VLCException (string message, Exception inner)
-           : base (message, inner)
-        {
-        }
-
-        /**
-         * Creates a VLC exception
-         * @param code VLC exception code
-         * @param message VLC exception message
-         */
-        public VLCException (int code, string message) : base (message)
-        {
-            this.code = code;
-        }
-
-        /**
-         * Creates a VLC exception
-         * @param code VLC exception code
-         */
-        public VLCException (int code) : base ()
-        {
-            this.code = code;
-        }
-    };
-
-    /**
-     * @brief NativeException: CIL representation for libvlc_exception_t.
-     * @ingroup Internals
-     */
-    [StructLayout (LayoutKind.Sequential)]
-    public sealed class NativeException : IDisposable
-    {
-        int raised;
-        int code;
-        IntPtr message;
-
-        public NativeException ()
-        {
-            LibVLC.ExceptionInit (this);
-        }
-
-        /**
-         * Throws a managed exception if LibVLC has returned a native
-         * unmanaged exception. Clears the native exception.
-         */
-        public void Raise ()
-        {
-            if (raised == 0)
-                return;
-
-            string msg = U8String.FromNative (message);
-            try
-            {
-                if (msg != null)
-                    throw new VLCException (code, msg);
-                else
-                    throw new VLCException (code);
-            }
-            finally
-            {
-                LibVLC.ExceptionClear (this);
-            }
-        }
-
-        /** IDisposable implementation. */
-        public void Dispose ()
-        {
-            Dispose (true);
-            GC.SuppressFinalize (this);
-        }
-
-        ~NativeException ()
-        {
-            Dispose (false);
-        }
-
-        private void Dispose (bool disposing)
-        {
-            LibVLC.ExceptionClear (this);
-        }
-    };
-};
diff --git a/bindings/cil/src/instance.cs b/bindings/cil/src/instance.cs
deleted file mode 100644 (file)
index f40862c..0000000
+++ /dev/null
@@ -1,231 +0,0 @@
-/**
- * @file instance.cs
- * @brief LibVLC instance class
- * @ingroup API
- *
- * @defgroup API Managed interface to LibVLC
- *
- * This is the primary class library for .NET applications
- * to embed and control LibVLC.
- */
-
-/**********************************************************************
- *  Copyright (C) 2007-2009 Rémi Denis-Courmont.                      *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Runtime.InteropServices;
-
-/**
- * @brief VideoLAN.LibVLC: VideoLAN project's LibVLC .Net bindings
- * @ingroup API
- *
- * This namespace provides a set of managed APIs around the native LibVLC
- * for the .Net Common Language Runtime.
- */
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @brief InstanceHandle: unmanaged LibVLC instance pointer
-     * @ingroup Internals
-     */
-    internal sealed class InstanceHandle : NonNullHandle
-    {
-        /**
-         * NonNullHandle.Destroy
-         */
-        protected override void Destroy ()
-        {
-            LibVLC.Release (handle, null);
-        }
-    };
-
-    /**
-     * @brief VLC: VLC media player instance
-     * @ingroup API
-     *
-     * The VLC class provides represent a run-time instance of a media player.
-     * An instance can spawn multiple independent medias, however
-     * configuration settings, message logging, etc are common to all medias
-     * from the same instance.
-     */
-    public class VLC : BaseObject
-    {
-        internal InstanceHandle Handle
-        {
-            get
-            {
-                return handle as InstanceHandle;
-            }
-        }
-
-        /**
-         * Loads the native LibVLC and creates a LibVLC instance.
-         *
-         * @param args VLC command line parameters for the LibVLC Instance.
-         */
-        public VLC (string[] args)
-        {
-            U8String[] argv = new U8String[args.Length];
-            for (int i = 0; i < args.Length; i++)
-                argv[i] = new U8String (args[i]);
-
-            handle = LibVLC.Create (argv.Length, argv, ex);
-            Raise ();
-        }
-
-        /**
-         * Starts a VLC interface plugin.
-         *
-         * @param name name of the interface plugin (e.g. "http", "qt4", ...)
-         */
-        public void AddInterface (string name)
-        {
-            U8String uname = new U8String (name);
-
-            LibVLC.AddIntf (Handle, uname, ex);
-            Raise ();
-        }
-
-        /**
-         * Waits until VLC instance exits. This can happen if a fatal error
-         * occurs (e.g. cannot parse the arguments), if the user has quit
-         * through an interface, or if the special vlc://quit item was played.
-         */
-        public void Run ()
-        {
-            LibVLC.Wait (Handle);
-        }
-
-        /**
-         * The human-readable LibVLC version number.
-         */
-        public static string Version
-        {
-            get
-            {
-                return U8String.FromNative (LibVLC.GetVersion ());
-            }
-        }
-
-        /**
-         * The human-readable LibVLC C compiler infos.
-         */
-        public static string Compiler
-        {
-            get
-            {
-                return U8String.FromNative (LibVLC.GetCompiler ());
-            }
-        }
-
-        /**
-         * The unique commit identifier from the LibVLC source control system,
-         * or "exported" if unknown.
-         */
-        public static string ChangeSet
-        {
-            get
-            {
-                return U8String.FromNative (LibVLC.GetChangeset ());
-            }
-        }
-
-        /**
-         * The unmanaged VLC-internal instance object.
-         * Do not use this unless you really know what you are doing.
-         * @version VLC 1.0
-         */
-        public IntPtr Object
-        {
-            get
-            {
-                return LibVLC.GetVLCInstance (Handle);
-            }
-        }
-    };
-};
-
-/**
- * @mainpage libvlc-cil documentation
- *
- * @section Introduction
- *
- * libvlc-cil is a thin API layer around LibVLC,
- * the VideoLAN's project media framework C library.
- * LibVLC comes built-in the VLC media player.
- *
- * With libvlc-cil, you can use LibVLC
- * from within the .Net Common Language Runtime,
- * with the CIL programming language of your preference.
- * However, libvlc-cil and the code sample in this documentation
- * are written is C#.
- *
- * @section Installation
- *
- * libvlc-cil does <b>not</b> include the underlying LibVLC by default.
- * Make sure VLC, or at least LibVLC and the relevant VLC plugins are present.
- * The LibVLC runtime library needs to be in the library search path for the
- * Common Language Runtime. Check the documentation for your CLR for details.
- *
- * On Windows, libvlc.dll needs to be in the current directory, the DLL path
- * of the running process, or the system search path (but the latter is
- * uncommon and not supported by the official LibVLC installer).
- *
- * On Linux, libvlc.so should be in /usr/lib; if it is in another directory,
- * such as /usr/local/lib, you might need to add that directory to the
- * LD_LIBRARY_PATH environment variable.
- *
- * @section Usage
- *
- * First, you need to create a VLC instance. This will load and setup the
- * native VLC runtime, the VLC configuration, the list of available plugins,
- * the platform adaptation and the VLC log messages and objects subsystems
- * @code
- * using System;
- * using VideoLAN.LibVLC;
- * ...
- *
- * try {
- *     Console.WriteLine("Running on VLC version {0}", VLC.Version);
- * }
- * catch (Exception e) {
- *     Console.WriteLine("VLC is not available on your system.");
- *     throw e;
- * }
- *
- * string[] args = new string[]{ "-v", "--ignore-config" };
- * VLC vlc = new VLC(args);
- * @endcode
- * @see VideoLAN::LibVLC::VLC
- *
- * To play media, you need a media and a player.
- * @code
- * Media media = new Media(vlc, "http://www.example.com/video.ogv");
- * Player player = new Player(media);
- * player.Play();
- * @endcode
- * @see VideoLAN::LibVLC::Media @see VideoLAN::LibVLC::Player
- *
- * All these objects use unmanaged resources.
- * They all implement the IDisposeable interface.
- * You should dispose them when you do not need them anymore:
- * @code
- * player.Dispose();
- * media.Dispose();
- * vlc.Dispose();
- * @endcode
- */
diff --git a/bindings/cil/src/libvlc.cs b/bindings/cil/src/libvlc.cs
deleted file mode 100644 (file)
index 2829747..0000000
+++ /dev/null
@@ -1,369 +0,0 @@
-/**
- * @file libvlc.cs
- * @brief Unmanaged LibVLC APIs
- * @ingroup Internals
- *
- * @defgroup Internals LibVLC internals
- * This covers internal marshalling functions to use the native LibVLC.
- * Only VLC developers should need to read this section.
- */
-
-/**********************************************************************
- *  Copyright (C) 2007-2009 Rémi Denis-Courmont.                      *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @brief Native: unmanaged LibVLC APIs
-     * @ingroup Internals
-     */
-    internal enum MediaOptionFlag
-    {
-        OptionTrusted = 0x2,
-       OptionUnique = 0x100,
-    };
-
-    internal static class LibVLC
-    {
-        /* Where is the run-time?
-         * On ELF platforms, "libvlc.so.2" should be used instead. */
-        const string lib = "libvlc.dll";
-
-        /* exception.c */
-        [DllImport (lib, EntryPoint="libvlc_exception_init")]
-        public static extern void ExceptionInit (NativeException e);
-
-        [DllImport (lib, EntryPoint="libvlc_exception_clear")]
-        public static extern void ExceptionClear (NativeException e);
-
-        /* core.c */
-        [DllImport (lib, EntryPoint="libvlc_get_version")]
-        public static extern IntPtr GetVersion ();
-
-        [DllImport (lib, EntryPoint="libvlc_get_compiler")]
-        public static extern IntPtr GetCompiler ();
-
-        [DllImport (lib, EntryPoint="libvlc_get_changeset")]
-        public static extern IntPtr GetChangeset ();
-
-        [DllImport (LibVLC.lib, EntryPoint="libvlc_free")]
-        public static extern void Free (IntPtr ptr);
-
-        [DllImport (lib, EntryPoint="libvlc_new")]
-        public static extern
-        InstanceHandle Create (int argc, U8String[] argv, NativeException ex);
-
-        /*[DllImport (lib, EntryPoint="libvlc_retain")]
-        public static extern
-        void Retain (InstanceHandle h, NativeException ex);*/
-
-        [DllImport (lib, EntryPoint="libvlc_release")]
-        public static extern
-        void Release (IntPtr h, NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_add_intf")]
-        public static extern
-        void AddIntf (InstanceHandle h, U8String name, NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_wait")]
-        public static extern
-        void Wait (InstanceHandle h);
-
-        [DllImport (lib, EntryPoint="libvlc_get_vlc_instance")]
-        public static extern
-        IntPtr GetVLCInstance (InstanceHandle h);
-
-        /* media.c */
-        [DllImport (lib, EntryPoint="libvlc_media_new")]
-        public static extern
-        MediaHandle MediaCreate (InstanceHandle inst, U8String mrl,
-                                 NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_new_as_node")]
-        public static extern
-        MediaHandle MediaCreateAsNode (InstanceHandle inst, U8String name,
-                                       NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_add_option")]
-        public static extern
-        void MediaAddOption (MediaHandle media, U8String options,
-                             NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_add_option_flag")]
-        public static extern
-        void MediaAddOptionWithFlag (MediaHandle media, U8String options,
-                                      MediaOptionFlag flag,
-                                      NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_release")]
-        public static extern
-        void MediaRelease (IntPtr ptr);
-
-        [DllImport (lib, EntryPoint="libvlc_media_get_mrl")]
-        public static extern
-        StringHandle MediaGetMRL (MediaHandle media, NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_duplicate")]
-        public static extern
-        MediaHandle MediaDuplicate (MediaHandle media);
-
-        [DllImport (lib, EntryPoint="libvlc_media_get_meta")]
-        public static extern
-        StringHandle MediaGetMeta (MediaHandle media, MetaType type,
-                                   NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_get_state")]
-        public static extern
-        State MediaGetState (MediaHandle media, NativeException ex);
-
-        /*[DllImport (lib, EntryPoint="libvlc_media_subitems")]
-        public static extern
-        MediaListHandle MediaSubItems (MediaHandle media, NativeException ex);*/
-
-        [DllImport (lib, EntryPoint="libvlc_media_event_manager")]
-        public static extern
-        EventManagerHandle MediaEventManager (MediaHandle media,
-                                              NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_get_duration")]
-        public static extern
-        long MediaGetDuration (MediaHandle media, NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_is_preparsed")]
-        public static extern
-        int MediaIsPreparsed (MediaHandle media, NativeException ex);
-
-        /*[DllImport (lib, EntryPoint="libvlc_media_set_user_data")]
-        public static extern
-        void MediaIsPreparsed (MediaHandle media, IntPtr data,
-                               NativeException ex);*/
-
-        /*[DllImport (lib, EntryPoint="libvlc_media_get_user_data")]
-        public static extern
-        IntPtr MediaIsPreparsed (MediaHandle media, NativeException ex);*/
-
-        /* media_player.c */
-        [DllImport (lib, EntryPoint="libvlc_media_player_new")]
-        public static extern
-        PlayerHandle PlayerCreate (InstanceHandle inst, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_new_from_media")]
-        public static extern
-        PlayerHandle PlayerCreateFromMedia (MediaHandle media,
-                                            NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_player_release")]
-        public static extern
-        void PlayerRelease (IntPtr ptr);
-
-        /* PlayerRetain */
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_media")]
-        public static extern
-        void PlayerSetMedia (PlayerHandle player, MediaHandle media,
-                             NativeException ex);
-
-        /*[DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_media")]
-        public static extern
-        MediaHandle PlayerGetMedia (PlayerHandle player,
-                                    NativeException ex);*/
-
-        [DllImport (lib,
-                      EntryPoint="libvlc_media_player_event_manager")]
-        public static extern
-        EventManagerHandle PlayerEventManager (PlayerHandle media,
-                                               NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_is_playing")]
-        public static extern
-        int PlayerIsPlaying (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_play")]
-        public static extern
-        void PlayerPlay (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_pause")]
-        public static extern
-        void PlayerPause (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_stop")]
-        public static extern
-        void PlayerStop (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_xwindow")]
-        public static extern
-        void PlayerSetXWindow (PlayerHandle player, int xid,
-                               NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_xwindow")]
-        public static extern
-        int PlayerGetXWindow (PlayerHandle player);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_hwnd")]
-        public static extern
-        void PlayerSetHWND (PlayerHandle player, SafeHandle hwnd,
-                            NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_hwnd")]
-        public static extern
-        SafeHandle PlayerGetHWND (PlayerHandle player);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_length")]
-        public static extern
-        long PlayerGetLength (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_player_get_time")]
-        public static extern
-        long PlayerGetTime (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_media_player_set_time")]
-        public static extern
-        void PlayerSetTime (PlayerHandle player, long time,
-                            NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_position")]
-        public static extern
-        float PlayerGetPosition (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_position")]
-        public static extern
-        void PlayerSetPosition (PlayerHandle player, float position,
-                                NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_chapter")]
-        public static extern
-        int PlayerGetChapter (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_chapter")]
-        public static extern
-        void PlayerSetChapter (PlayerHandle player, int chapter,
-                               NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_chapter_count")]
-        public static extern
-        int PlayerGetChapterCount (PlayerHandle player, NativeException ex);
-
-        /* PlayerWillPlay */
-
-        [DllImport (lib,
-                EntryPoint="libvlc_media_player_get_chapter_count_for_title")]
-        public static extern
-        int PlayerGetChapterCountForTitle (PlayerHandle player, int title,
-                                           NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_title")]
-        public static extern
-        int PlayerGetTitle (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_title")]
-        public static extern
-        void PlayerSetTitle (PlayerHandle player, int chapter,
-                             NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_title_count")]
-        public static extern
-        int PlayerGetTitleCount (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_next_chapter")]
-        public static extern
-        void PlayerNextChapter (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_previous_chapter")]
-        public static extern
-        void PlayerPreviousChapter (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_rate")]
-        public static extern
-        float PlayerGetRate (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_set_rate")]
-        public static extern
-        void PlayerSetRate (PlayerHandle player, float rate,
-                            NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_state")]
-        public static extern
-        State PlayerGetState (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_get_fps")]
-        public static extern
-        float PlayerGetFPS (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_has_vout")]
-        public static extern
-        int PlayerHasVout (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_is_seekable")]
-        public static extern
-        int PlayerIsSeekable (PlayerHandle player, NativeException ex);
-
-        [DllImport (lib,
-                    EntryPoint="libvlc_media_player_can_pause")]
-        public static extern
-        int PlayerCanPause (PlayerHandle player, NativeException ex);
-
-
-        /* TODO: video, audio */
-
-        /* event.c */
-        [DllImport (lib, EntryPoint="libvlc_event_attach")]
-        public static extern
-        void EventAttach (EventManagerHandle manager, EventType type,
-                          IntPtr callback, IntPtr user_data,
-                          NativeException ex);
-
-        [DllImport (lib, EntryPoint="libvlc_event_detach")]
-        public static extern
-        void EventDetach (EventManagerHandle manager, EventType type,
-                          IntPtr callback, IntPtr user_data,
-                          NativeException ex);
-
-        /* libvlc_event_type_name */
-    };
-};
diff --git a/bindings/cil/src/marshal.cs b/bindings/cil/src/marshal.cs
deleted file mode 100644 (file)
index 3a427f8..0000000
+++ /dev/null
@@ -1,221 +0,0 @@
-/**
- * @file marshal.cs
- * @brief Common LibVLC objects marshalling utilities
- * @ingroup Internals
- */
-
-/**********************************************************************
- *  Copyright (C) 2007-2009 Rémi Denis-Courmont.                      *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Collections;
-using System.Collections.Generic;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @brief NonNullHandle: abstract safe handle class for non-NULL pointers
-     * @ingroup Internals
-     * Microsoft.* namespace has a similar class. However we want to use the
-     * System.* namespace only.
-     */
-    internal abstract class NonNullHandle : SafeHandle
-    {
-        protected NonNullHandle ()
-            : base (IntPtr.Zero, true)
-        {
-        }
-
-        /**
-         * System.Runtime.InteropServices.SafeHandle::IsInvalid.
-         */
-        public override bool IsInvalid
-        {
-            get
-            {
-                return handle == IntPtr.Zero;
-            }
-        }
-
-        /**
-         * Destroys an handle. Cannot fail.
-         */
-        protected abstract void Destroy ();
-
-        /**
-         * System.Runtime.InteropServices.SafeHandle::ReleaseHandle.
-         */
-        protected override bool ReleaseHandle ()
-        {
-            Destroy ();
-            return true;
-        }
-    };
-
-    /**
-     * @brief BaseObject: generic wrapper around a safe LibVLC handle.
-     * @ingroup Internals
-     *
-     * This is the baseline for all managed LibVLC objects. It wraps:
-     *  - an unmanaged LibVLC pointer,
-     *  - a native exception structure.
-     */
-    public class BaseObject : IDisposable
-    {
-        internal NativeException ex; /**< buffer for LibVLC exceptions */
-        internal SafeHandle handle; /**< wrapped safe handle */
-
-        internal BaseObject ()
-        {
-            ex = new NativeException ();
-            this.handle = null;
-        }
-
-        /**
-         * Checks if the LibVLC run-time raised an exception
-         * If so, raises a CIL exception.
-         */
-        internal void Raise ()
-        {
-            ex.Raise ();
-        }
-
-        /**
-         * IDisposable::Dispose.
-         */
-        public void Dispose ()
-        {
-            Dispose (true);
-            GC.SuppressFinalize (this);
-        }
-
-        /**
-         * Releases unmanaged resources associated with the object.
-         * @param disposing true if the disposing the object explicitly,
-         *                  false if finalizing the object inside the GC.
-         */
-        protected virtual void Dispose (bool disposing)
-        {
-            if (disposing)
-            {
-                ex.Dispose ();
-                if (handle != null)
-                    handle.Close ();
-            }
-            ex = null;
-            handle = null;
-        }
-    };
-
-    internal class EventManagerHandle : NonNullHandle
-    {
-        protected override void Destroy ()
-        {
-        }
-    };
-
-
-    /**
-     * @brief EventingObject: wrapper around an eventing LibVLC handle.
-     * @ingroup Internals
-     *
-     * This is the base class for all managed LibVLC objects which do have an
-     * event manager.
-     */
-    public abstract class EventingObject : BaseObject
-    {
-        private Dictionary<Delegate, IntPtr> events;
-        /**< references to our unmanaged function pointers */
-
-        internal EventingObject () : base ()
-        {
-            events = new Dictionary<Delegate, IntPtr> ();
-        }
-
-        /**
-         * Releases unmanaged resources associated with the object.
-         * @param disposing true if the disposing the object explicitly,
-         *                  false if finalizing the object inside the GC.
-         */
-        protected override void Dispose (bool disposing)
-        {
-            events = null;
-            base.Dispose (disposing);
-        }
-
-        /**
-         * @return the unmanaged event manager for this object
-         */
-        internal abstract EventManagerHandle GetManager ();
-
-        /**
-         * Registers an event handler.
-         * @param type event type to register to
-         * @param callback callback to invoke when the event occurs
-         *
-         * @note
-         * For simplicity, we require distinct callbacks for each event type.
-         * This is hardly an issue since most events have different formats.
-         */
-        internal void Attach (EventType type, Delegate callback)
-        {
-            EventManagerHandle manager;
-            IntPtr cb = Marshal.GetFunctionPointerForDelegate (callback);
-            bool unref = false;
-
-            /* If things go wrong, we will leak the callback thunk... until
-             * this object is destroyed anyway. If we added the thunk _after_
-             * the critical section, the native code could try to jump to a
-             * non-existent address, which is much worse. */
-            events.Add (callback, cb);
-            try
-            {
-                handle.DangerousAddRef (ref unref);
-                manager = GetManager ();
-                LibVLC.EventAttach (manager, type, cb, IntPtr.Zero, ex);
-            }
-            finally
-            {
-                if (unref)
-                    handle.DangerousRelease ();
-            }
-            Raise ();
-        }
-
-        internal void Detach (EventType type, Delegate callback)
-        {
-            EventManagerHandle manager;
-            IntPtr cb = events[callback];
-            bool unref = false;
-
-            try
-            {
-                handle.DangerousAddRef (ref unref);
-                manager = GetManager ();
-                LibVLC.EventDetach (manager, type, cb, IntPtr.Zero, ex);
-            }
-            finally
-            {
-                if (unref)
-                    handle.DangerousRelease ();
-            }
-            Raise ();
-            events.Remove (callback);
-        }
-    };
-};
diff --git a/bindings/cil/src/media.cs b/bindings/cil/src/media.cs
deleted file mode 100644 (file)
index a18a936..0000000
+++ /dev/null
@@ -1,319 +0,0 @@
-/**
- * @file media.cs
- * @brief Media descriptor class
- * @ingroup API
- */
-
-/**********************************************************************
- *  Copyright (C) 2007-2009 Rémi Denis-Courmont.                      *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-//using System.Collections.Generic;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @brief MediaHandle: unmanaged LibVLC media pointer
-     * @ingroup Internals
-     */
-    internal sealed class MediaHandle : NonNullHandle
-    {
-        /**
-         * NonNullHandle.Destroy
-         */
-        protected override void Destroy ()
-        {
-            LibVLC.MediaRelease (handle);
-        }
-    };
-
-    /**
-     * @brief MetaType: type of a media meta-information entry
-     */
-    public enum MetaType
-    {
-        Title,
-        Artist,
-        Genre,
-        Copyright,
-        Album,
-        TrackNumber,
-        Description,
-        Rating,
-        Date,
-        Setting,
-        URL,
-        Language,
-        NowPlaying,
-        Publisher,
-        EncodedBy,
-        ArtworkURL,
-        TrackID,
-    };
-
-    /**
-     * @brief State: media/player state
-     *
-     * Media and Player objects are always in one of these state.
-     * @see Media::State and @see Player::State.
-     */
-    public enum State
-    {
-        NothingSpecial, /**< Nothing going on */
-        Opening, /**< Being opened */
-        Buffering, /**< Buffering before play */
-        Playing, /**< Playing */
-        Paused, /**< Paused */
-        Stopped, /**< Stopped */
-        Ended, /**< Played until the end */
-        Error, /**< Failed */
-    };
-
-    /* Media events */
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class MediaMetaEvent : GenericEvent
-    {
-        public MetaType metaType;
-    };
-    internal delegate void MediaMetaCallback (MediaMetaEvent e, IntPtr d);
-
-    /*[StructLayout (LayoutKind.Sequential)]
-    internal sealed class MediaSubitemEvent : GenericEvent
-    {
-        public IntPtr child; -- MediaHandle
-    };*/
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class MediaDurationEvent : GenericEvent
-    {
-        public long duration;
-    };
-    internal delegate void MediaDurationCallback (MediaDurationEvent e,
-                                                  IntPtr d);
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class MediaPreparseEvent : GenericEvent
-    {
-        public int status;
-    };
-    internal delegate void MediaPreparseCallback (MediaPreparseEvent e,
-                                                  IntPtr d);
-
-    /* media_freed -> bad idea w.r.t. the GC */
-
-    [StructLayout (LayoutKind.Sequential)]
-    internal sealed class MediaStateEvent : GenericEvent
-    {
-        public State state;
-    };
-    internal delegate void MediaStateCallback (MediaStateEvent e, IntPtr d);
-
-    /**
-     * @brief Media: a source media
-     * @ingroup API
-     * Each media object represents an input media, such as a file or an URL.
-     */
-    public class Media : EventingObject, ICloneable
-    {
-        internal MediaHandle Handle
-        {
-            get
-            {
-                return handle as MediaHandle;
-            }
-        }
-
-        /**
-         * Creates a Media object.
-         *
-         * @param instance VLC instance
-         * @param mrl Media Resource Locator (file path or URL)
-         */
-        public Media (VLC instance, string mrl)
-        {
-            U8String umrl = new U8String (mrl);
-
-            handle = LibVLC.MediaCreate (instance.Handle, umrl, ex);
-            Raise ();
-            Attach ();
-        }
-
-        private Media (MediaHandle handle)
-        {
-            this.handle = handle;
-            Attach ();
-        }
-
-        /**
-         * Duplicates a media object.
-         */
-        public object Clone ()
-        {
-            return new Media (LibVLC.MediaDuplicate (Handle));
-        }
-
-        private void Attach ()
-        {
-            Attach (EventType.MediaMetaChanged,
-                    new MediaMetaCallback (MetaCallback));
-            //Attach (EventType.MediaSubItemAdded, SubItemAdded);
-            Attach (EventType.MediaDurationChanged,
-                    new MediaDurationCallback (DurationCallback));
-            /*Attach (EventType.MediaPreparsedChanged,
-                    new MediaPreparseCallback (PreparseCallback));*/
-            /* MediaFreed: better not... */
-            Attach (EventType.MediaStateChanged,
-                    new MediaStateCallback (StateCallback));
-        }
-
-        /**
-         * Add VLC input item options to the media.
-         * @code
-         * Media m = new Media(vlc, "http://www.example.com/music.ogg");
-         * m.AddOptions(":http-user-agent=LibVLC.Net "
-         *            + ":http-proxy=proxy:8080", true);
-         * @endcode
-         * @param options VLC options in VLC input item format
-         *                (see example below)
-         * @param trusted whether the options are set by a trusted agent
-         *                (e.g. the local computer configuration) or not
-         *                (e.g. a downloaded file).
-         * @version VLC 0.9.9 if trusted is false
-         */
-        public void AddOptions (string options, bool trusted)
-        {
-            U8String uopts = new U8String (options);
-
-            if (trusted)
-                LibVLC.MediaAddOption (Handle, uopts, ex);
-            else
-                LibVLC.MediaAddUntrustedOption (Handle, uopts, ex);
-            Raise ();
-        }
-
-        /**
-         * The media location (file path, URL, ...).
-         * @version VLC 1.0
-         */
-        public string Location
-        {
-            get
-            {
-                StringHandle str = LibVLC.MediaGetMRL (Handle, ex);
-                Raise ();
-                return str.Transform ();
-            }
-        }
-
-        public override string ToString ()
-        {
-            return Location;
-        }
-
-        /**
-         * @param type meta data type
-         * @return the meta data value, or @a null if unknown
-         */
-        public string GetMeta (MetaType type)
-        {
-            StringHandle str = LibVLC.MediaGetMeta (Handle, type, ex);
-            Raise ();
-            return str.Transform ();
-        }
-
-        public delegate void MetaChange (Media media, MetaType type);
-        public event MetaChange MetaChanged;
-        private void MetaCallback (MediaMetaEvent ev, IntPtr data)
-        {
-            if (MetaChanged != null)
-                MetaChanged (this, ev.metaType);
-        }
-
-        /**
-         * Current state of the media.
-         */
-        public State State
-        {
-            get
-            {
-                State ret = LibVLC.MediaGetState (Handle, ex);
-                Raise ();
-                return ret;
-            }
-        }
-
-        public delegate void StateChange (Media media, State state);
-        public event StateChange StateChanged;
-        private void StateCallback (MediaStateEvent ev, IntPtr data)
-        {
-            if (StateChanged != null)
-                StateChanged (this, ev.state);
-        }
-
-        internal override EventManagerHandle GetManager ()
-        {
-            return LibVLC.MediaEventManager (Handle, null);
-        }
-
-        /**
-         * Duration of the media in microseconds. The precision of the result
-         * depends on the input stram protocol and file format. The value
-         * might be incorrect and unknown (VLC usually returns 0 or -1 then).
-         */
-        public long Duration
-        {
-            get
-            {
-                long duration = LibVLC.MediaGetDuration (Handle, ex);
-                Raise ();
-                return duration;
-            }
-        }
-
-        public delegate void DurationChange (Media media, long duration);
-        public event DurationChange DurationChanged;
-        private void DurationCallback (MediaDurationEvent ev, IntPtr data)
-        {
-            if (DurationChanged != null)
-                DurationChanged (this, ev.duration);
-        }
-
-        /**
-         * Whether the media was "preparsed". If true, the meta-infos were
-         * extracted, even before the media was played. This is normally only
-         * available if the input files is stored on a local filesystem.
-         */
-        public bool IsPreparsed
-        {
-            get
-            {
-                int preparsed = LibVLC.MediaIsPreparsed (Handle, ex);
-                Raise ();
-                return preparsed != 0;
-            }
-        }
-
-        public delegate void PreparseChange (Media media, bool preparsed);
-        public event PreparseChange PreparseChanged;
-        private void PreparseCallback (MediaPreparseEvent ev, IntPtr data)
-        {
-            if (PreparseChanged != null)
-                PreparseChanged (this, ev.status != 0);
-        }
-    };
-};
diff --git a/bindings/cil/src/player.cs b/bindings/cil/src/player.cs
deleted file mode 100644 (file)
index 7eb6170..0000000
+++ /dev/null
@@ -1,446 +0,0 @@
-/**
- * @file player.cs
- * @brief Media player class
- * @ingroup API
- *
- * @defgroup API Managed interface to LibVLC
- * This is the primary class library for .NET applications
- * to embed and control LibVLC.
- *
- * @defgroup Internals LibVLC internals
- * This covers internal marshalling functions to use the native LibVLC.
- * Only VLC developers should need to read this section.
- */
-
-/**********************************************************************
- *  Copyright (C) 2009 Rémi Denis-Courmont.                           *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-   /**
-     * @brief PlayerHandle: unmanaged LibVLC media player pointer
-     * @ingroup Internals
-     */
-    internal sealed class PlayerHandle : NonNullHandle
-    {
-        protected override void Destroy ()
-        {
-            LibVLC.PlayerRelease (handle);
-        }
-    };
-
-    /**
-     * @brief MediaPlayer: a simple media player
-     * @ingroup API
-     * Use this class to play a media.
-     */
-    public class Player : EventingObject
-    {
-        internal PlayerHandle Handle
-        {
-            get
-            {
-                return handle as PlayerHandle;
-            }
-        }
-
-        Media media; /**< Active media */
-        /**
-         * The Media object that the MediaPlayer is using,
-         * or null if there is none.
-         */
-        public Media Media
-        {
-            get
-            {
-                return media;
-            }
-            set
-            {
-                MediaHandle mh = (value != null) ? value.Handle : null;
-
-                LibVLC.PlayerSetMedia (Handle, mh, null);
-                media = value;
-            }
-        }
-
-        /**
-         * Creates a player with no medias.
-         * An input media will be needed before this media player can be used.
-         *
-         * @param instance VLC instance
-         */
-        public Player (VLC instance)
-        {
-            this.media = null;
-            handle = LibVLC.PlayerCreate (instance.Handle, ex);
-            Raise ();
-        }
-
-        /**
-         * Creates a player object for a given a media.
-         *
-         * @param media media object
-         */
-        public Player (Media media)
-        {
-            this.media = media;
-            handle = LibVLC.PlayerCreateFromMedia (media.Handle, ex);
-            Raise ();
-        }
-
-        internal override EventManagerHandle GetManager ()
-        {
-            return LibVLC.PlayerEventManager (Handle, null);
-        }
-
-        /**
-         * Whether the player is currently active.
-         * @version VLC 1.0
-         */
-        public bool IsPlaying
-        {
-            get
-            {
-                int ret = LibVLC.PlayerIsPlaying (Handle, ex);
-                Raise ();
-                return ret != 0;
-            }
-        }
-
-        /**
-         * Starts playing the selected media.
-         */
-        public void Play ()
-        {
-            LibVLC.PlayerPlay (Handle, ex);
-            Raise ();
-        }
-
-        /**
-         * Pauses the playback.
-         */
-        public void Pause ()
-        {
-            LibVLC.PlayerPause (Handle, ex);
-            Raise ();
-        }
-
-        /**
-         * Stops the playback.
-         */
-        public void Stop ()
-        {
-            LibVLC.PlayerStop (Handle, ex);
-            Raise ();
-        }
-
-        /**
-         * The 32-bits identifier of an X Window System window,
-         * or 0 if not specified.
-         * Video will be rendered inside that window, if the underlying VLC
-         * supports X11. Note that X pixmaps are <b>not</b> supported.
-         * Also note that you should set/change/unset the window while
-         * playback is not started or stopped; live reparenting might not
-         * work.
-         *
-         * @warning If the identifier is invalid, Xlib might abort the process.
-         * @version VLC 1.0
-         */
-        public int XWindow
-        {
-            get
-            {
-                return LibVLC.PlayerGetXWindow (Handle);
-            }
-            set
-            {
-                LibVLC.PlayerSetXWindow (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * The handle of a window (HWND) from the Win32 API,
-         * or NULL if unspecified.
-         * Video will be rendered inside that window, if the underlying VLC
-         * supports one of DirectDraw, Direct3D, GDI or OpenGL/Win32.
-         * Note that you should set/change/unset the window while playback is
-         * not started or stopped; live reparenting might not work.
-         * @version VLC 1.0
-         */
-        public SafeHandle HWND
-        {
-            get
-            {
-                return LibVLC.PlayerGetHWND (Handle);
-            }
-            set
-            {
-                LibVLC.PlayerSetHWND (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * Total length in milliseconds of the playback (if known).
-         */
-        public long Length
-        {
-            get
-            {
-                long ret = LibVLC.PlayerGetLength (Handle, ex);
-                Raise ();
-                return ret;
-            }
-        }
-
-        /**
-         * Playback position in milliseconds from the start (if applicable).
-         * Setting this value might not work depending on the underlying
-         * media capability and file format.
-         *
-         * Changing the Time will also change the Position.
-         */
-        public long Time
-        {
-            get
-            {
-                long ret = LibVLC.PlayerGetTime (Handle, ex);
-                Raise ();
-                return ret;
-            }
-            set
-            {
-                LibVLC.PlayerSetTime (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * Playback position as a fraction of the total (if applicable).
-         * At start, this is 0; at the end, this is 1.
-         * Setting this value might not work depending on the underlying
-         * media capability and file format.
-         *
-         * Changing the Position will also change the Time.
-         */
-        public float Position
-        {
-            get
-            {
-                float ret = LibVLC.PlayerGetPosition (Handle, ex);
-                Raise ();
-                return ret;
-            }
-            set
-            {
-                LibVLC.PlayerSetPosition (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * Number of the current chapter (within the current title).
-         * This is mostly used for DVDs and the likes.
-         */
-        public int Chapter
-        {
-            get
-            {
-                int ret = LibVLC.PlayerGetChapter (Handle, ex);
-                Raise ();
-                return ret;
-            }
-            set
-            {
-                LibVLC.PlayerSetChapter (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * Number of chapters within the current title,
-         */
-        public int ChapterCount
-        {
-            get
-            {
-                int ret = LibVLC.PlayerGetChapterCount (Handle, ex);
-                Raise ();
-                return ret;
-            }
-        }
-
-        /**
-         * Gets the number of chapters within a given title.
-         * @param title media title number
-         * @version VLC 1.0
-         */
-        public int GetChapterCountByTitle (int title)
-        {
-            int ret = LibVLC.PlayerGetChapterCountForTitle (Handle, title, ex);
-            Raise ();
-            return ret;
-        }
-
-        /**
-         * Number of the current title.
-         * @version VLC 1.0
-         */
-        public int Title
-        {
-            get
-            {
-                int ret = LibVLC.PlayerGetTitle (Handle, ex);
-                Raise ();
-                return ret;
-            }
-            set
-            {
-                LibVLC.PlayerSetTitle (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * Total number of titles.
-         * @version VLC 1.0
-         */
-        public int TitleCount
-        {
-            get
-            {
-                int ret = LibVLC.PlayerGetTitleCount (Handle, ex);
-                Raise ();
-                return ret;
-            }
-        }
-
-        /**
-         * Skips to the beginning of the next chapter.
-         * @version VLC 1.0
-         */
-        public void NextChapter ()
-        {
-            LibVLC.PlayerNextChapter (Handle, ex);
-            Raise ();
-        }
-
-        /**
-         * Rewinds to the previous chapter.
-         * @version VLC 1.0
-         */
-        public void PreviousChapter ()
-        {
-            LibVLC.PlayerPreviousChapter (Handle, ex);
-            Raise ();
-        }
-
-        /**
-         * Media playback rate.
-         * 1.0 is the nominal rate.
-         * Less than one is slower than nominal.
-         * More than one is faster than nominal.
-         */
-        public float Rate
-        {
-            get
-            {
-                float ret = LibVLC.PlayerGetRate (Handle, ex);
-                Raise ();
-                return ret;
-            }
-            set
-            {
-                LibVLC.PlayerSetRate (Handle, value, ex);
-                Raise ();
-            }
-        }
-
-        /**
-         * Current state of the player.
-         */
-        public State State
-        {
-            get
-            {
-                State ret = LibVLC.PlayerGetState (Handle, ex);
-                Raise ();
-                return ret;
-            }
-        }
-
-        /**
-         * Frame rate in unit/seconds.
-         */
-        public float FramePerSeconds
-        {
-            get
-            {
-                float ret = LibVLC.PlayerGetFPS (Handle, ex);
-                Raise ();
-                return ret;
-            }
-        }
-
-        /**
-         * Whether a video track is currently active.
-         * This is false if there is no video track, or if video is discarded.
-         */
-        public bool HasVideo
-        {
-            get
-            {
-                int ret = LibVLC.PlayerHasVout (Handle, ex);
-                Raise ();
-                return ret != 0;
-            }
-        }
-
-        /**
-         * Whether the media supports seeking.
-         * Note that this tells nothing about the seeking precision.
-         */
-        public bool CanSeek
-        {
-            get
-            {
-                int ret = LibVLC.PlayerIsSeekable (Handle, ex);
-                Raise ();
-                return ret != 0;
-            }
-        }
-
-        /**
-         * Whether the media supports pausing.
-         * Live content cannot be paused, unless timeshifting is enabled.
-         */
-        public bool CanPause
-        {
-            get
-            {
-                int ret = LibVLC.PlayerCanPause (Handle, ex);
-                Raise ();
-                return ret != 0;
-            }
-        }
-    };
-};
diff --git a/bindings/cil/src/ustring.cs b/bindings/cil/src/ustring.cs
deleted file mode 100644 (file)
index 030064e..0000000
+++ /dev/null
@@ -1,137 +0,0 @@
-/**
- * @file ustring.cs
- * @brief Managed LibVLC strings
- * @ingroup Internals
- */
-
-/**********************************************************************
- *  Copyright (C) 2007 Rémi Denis-Courmont.                           *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using System.Runtime.InteropServices;
-
-namespace VideoLAN.LibVLC
-{
-    /**
-     * @brief U8String: Native UTF-8 characters array
-     * @ingroup Internals
-     * This supports conversion between native UTF-8 nul-terminated characters
-     * arrays (as used by the native LibVLC) and managed strings.
-     */
-    [StructLayout (LayoutKind.Sequential)]
-    internal struct U8String
-    {
-        public byte[] mb_str; /**< nul-terminated UTF-8 bytes array */
-
-        /**
-         * Creates an UTF-8 characters array from a .NET string.
-         * @param value string to convert
-         */
-        public U8String (string value)
-        {
-            mb_str = null;
-            if (value == null)
-                return;
-
-            byte[] bytes = System.Text.Encoding.UTF8.GetBytes (value);
-            mb_str = new byte[bytes.Length + 1];
-            Array.Copy (bytes, mb_str, bytes.Length);
-            mb_str[bytes.Length] = 0;
-        }
-
-        private U8String (IntPtr ptr)
-        {
-            mb_str = null;
-            if (ptr == IntPtr.Zero)
-                return;
-
-            int i = 0;
-            while (Marshal.ReadByte (ptr, i) != 0)
-                i++;
-            i++;
-
-            mb_str = new byte[i];
-            Marshal.Copy (ptr, mb_str, 0, i);
-        }
-
-        /**
-         * Object::ToString.
-         */
-        public override string ToString ()
-        {
-            if (mb_str == null)
-                return null;
-
-            byte[] bytes = new byte[mb_str.Length - 1];
-            Array.Copy (mb_str, bytes, bytes.Length);
-
-            return System.Text.Encoding.UTF8.GetString (bytes);
-        }
-
-        /**
-         * Converts a pointer to a nul-terminated UTF-8 characters array into
-         * a managed string.
-         */
-        public static string FromNative (IntPtr ptr)
-        {
-            return new U8String (ptr).ToString ();
-        }
-    };
-
-    /**
-     * @brief MemoryHandle: heap allocation by the C run-time
-     * @ingroup Internals
-     */
-    internal class MemoryHandle : NonNullHandle
-    {
-        /**
-         * NonNullHandle.Destroy
-         */
-        protected override void Destroy ()
-        {
-            LibVLC.Free (handle);
-        }
-    };
-
-    /**
-     * @brief StringHandle: heap-allocated characters array
-     * @ingroup Internals
-     */
-    internal sealed class StringHandle : MemoryHandle
-    {
-        /**
-         * Converts an heap-allocated nul-terminated UTF-8 characters array
-         * into a managed string.
-         * @return the resulting managed string.
-         */
-        public override string ToString ()
-        {
-            return U8String.FromNative (handle);
-        }
-
-        /**
-         * Converts the buffer (as in ToString()) and release it.
-         * @return managed string representation of the buffer
-         */
-        public string Transform ()
-        {
-            string value = ToString ();
-            Close ();
-            return value;
-        }
-    };
-};
diff --git a/bindings/cil/tests/.gitignore b/bindings/cil/tests/.gitignore
deleted file mode 100644 (file)
index 7ca215f..0000000
+++ /dev/null
@@ -1 +0,0 @@
-testvlc.exe
diff --git a/bindings/cil/tests/Makefile.am b/bindings/cil/tests/Makefile.am
deleted file mode 100644 (file)
index c463c3f..0000000
+++ /dev/null
@@ -1,14 +0,0 @@
-EXTRA_DIST = $(SOURCES_testvlc)
-MOSTLYCLEANFILES = $(check_SCRIPTS)
-
-noinst_SCRIPTS = testvlc.exe
-dist_check_SCRIPTS = missing_api
-
-SOURCES_testvlc = testvlc.cs
-LDADD_testvlc = -lib:../src -r:VideoLAN.LibVLC.dll
-
-testvlc.exe: $(SOURCES_testvlc) ../src/VideoLAN.LibVLC.dll
-       $(CSC) -target:exe -out:$@ $(CSFLAGS) $(SOURCES_testvlc) \
-               $(LDADD_testvlc)
-
-TESTS = missing_api
diff --git a/bindings/cil/tests/missing_api b/bindings/cil/tests/missing_api
deleted file mode 100755 (executable)
index 4f3fc3a..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-#! /bin/sh
-# Finds LibVLC API mismatch within the CIL bindings
-# Copyright 2008 Rémi Denis-Courmont
-
-if test "${srcdir}" = ""; then
-       srcdir="$(dirname "$0")"
-fi
-
-libvlcsym="${srcdir}/../../../src/libvlc.sym"
-if ! test -f "${libvlcsym}"; then
-       echo "Cannot find ${libvlcsym}\!" >&2
-       exit 77
-fi
-
-cat ${srcdir}/../src/*.cs | \
-sed -n -e 's,^.*EntryPoint="\([^"]*\)".*$,\1,p' | {
-       cat
-       # Symbols we do not need:
-       echo 'libvlc_exception_raise'
-} | \
-sort -u | \
-diff -u - "${libvlcsym}" | \
-grep -ve '^+\(mediacontrol_\|libvlc_playlist_\)' | {
-       read line # ---
-       read line # +++
-       broken=no
-       while read line; do
-               match="${line#+}"
-               if test "${line}" != "${match}"; then
-                       echo "Unimplemented: $match"
-                       broken=yes
-               fi
-
-               match="${line#-}"
-               if test "${line}" != "${match}"; then
-                       echo "Invalid:       $match"
-                       broken=yes
-               fi
-       done
-       test "${broken}" = "no"
-}
diff --git a/bindings/cil/tests/testvlc.cs b/bindings/cil/tests/testvlc.cs
deleted file mode 100644 (file)
index 9ea8a31..0000000
+++ /dev/null
@@ -1,101 +0,0 @@
-/*
- * testvlc.cs - tests for libvlc CIL bindings
- *
- * $Id$
- */
-
-/**********************************************************************
- *  Copyright (C) 2007 Rémi Denis-Courmont.                           *
- *  This program is free software; you can redistribute and/or modify *
- *  it under the terms of the GNU General Public License as published *
- *  by the Free Software Foundation; version 2 of the license, or (at *
- *  your option) any later version.                                   *
- *                                                                    *
- *  This program is distributed in the hope that it will be useful,   *
- *  but WITHOUT ANY WARRANTY; without even the implied warranty of    *
- *  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.              *
- *  See the GNU General Public License for more details.              *
- *                                                                    *
- *  You should have received a copy of the GNU General Public License *
- *  along with this program; if not, you can get it from:             *
- *  http://www.gnu.org/copyleft/gpl.html                              *
- **********************************************************************/
-
-using System;
-using VideoLAN.LibVLC;
-
-namespace VideoLAN.LibVLC.Test
-{
-    public sealed class Test
-    {
-        private static void DumpMedia (Media m)
-        {
-            Console.WriteLine ("Media: {0} {1} (duration: {2}, {3}preparsed)",
-                               m.State, m.Location, m.Duration,
-                               m.IsPreparsed ? "" : "not ");
-        }
-
-        private static void WriteMediaState (Media m, State s)
-        {
-            Console.WriteLine (" -> {0}", s);
-        }
-
-        private static void DumpPlayer (Player p)
-        {
-            if (!p.IsPlaying)
-                return;
-
-            int percent = (int)(p.Position * 100);
-            Console.Write ("{0}: {1} of {2} ms ({3}%)\r", p.State,
-                           p.Time, p.Length, percent);
-        }
-
-        private static void Sleep (int msec)
-        {
-            System.Threading.Thread.Sleep (msec);
-        }
-
-        public static int Main (string[] args)
-        {
-            string[] argv = new string[]{
-                "-vv", "-I", "dummy", "--plugin-path=../../modules"
-            };
-
-            Console.WriteLine ("Running on LibVLC {0} ({1})", VLC.Version,
-                               VLC.ChangeSet);
-            Console.WriteLine (" (compiled with {0})", VLC.Compiler);
-
-            VLC vlc = new VLC (argv);
-            foreach (string mrl in args)
-            {
-                Media media = new Media (vlc, mrl);
-                Player player = new Player (media);
-
-                DumpMedia (media);
-                DumpMedia ((Media)media.Clone ());
-                media.StateChanged += WriteMediaState;
-
-                /*foreach (MetaType type in Enum.GetValues (typeof (MetaType)))
-                {
-                    string meta = media.GetMeta (type);
-                    if (meta != null)
-                        Console.WriteLine (" {0}: {1}", type, meta);
-                }*/
-
-                player.Play ();
-                do
-                {
-                    DumpPlayer (player);
-                    Sleep (500);
-                }
-                while (player.IsPlaying);
-                player.Stop ();
-                media.Dispose ();
-                player.Dispose ();
-            }
-
-            vlc.Dispose ();
-            return 0;
-        }
-    };
-};