+ /* 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);
+