};
/**
- * @section Internals
- */
-
- /**
- * libvlc_exception_t: structure for unmanaged LibVLC exceptions
+ * @brief NativeException: CIL representation for libvlc_exception_t.
+ * @ingroup Internals
*/
[StructLayout (LayoutKind.Sequential)]
public sealed class NativeException : IDisposable
*/
internal sealed class InstanceHandle : NonNullHandle
{
+ /**
+ * NonNullHandle.Destroy
+ */
protected override void Destroy ()
{
LibVLC.Release (handle, null);
}
}
+ /**
+ * Destroys an handle. Cannot fail.
+ */
protected abstract void Destroy ();
/**
this.handle = null;
}
+ /**
+ * Checks if the LibVLC run-time raised an exception
+ * If so, raises a CIL exception.
+ */
protected void Raise ()
{
ex.Raise ();
*/
internal sealed class MediaHandle : NonNullHandle
{
+ /**
+ * NonNullHandle.Destroy
+ */
protected override void Destroy ()
{
LibVLC.MediaRelease (handle);
/**
* @brief Media: a source media
- * Use this class to extract meta-informations from a media.
+ * @ingroup API
+ * Each media object represents an input media, such as a file or an URL.
*/
public class Media : BaseObject
{
Raise ();
}
+ /**
+ * Add VLC input item options to the media.
+ * @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).
+ * @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
+ */
public void AddOptions (string options, bool trusted)
{
U8String uopts = new U8String (options);