2 * Automatically generated, do not edit this file directly
5 #ifndef __MOONLIGHT_C_BINDING_H__
6 #define __MOONLIGHT_C_BINDING_H__
19 class ASFMarkerDecoder
;
23 class AssemblyPartCollection
;
28 class BeginStoryboard
;
39 class CodecDownloader
;
41 class CollectionChangedEventArgs
;
42 class CollectionItemChangedEventArgs
;
44 class ColorAnimationUsingKeyFrames
;
46 class ColorKeyFrameCollection
;
47 class ColumnDefinition
;
48 class ColumnDefinitionCollection
;
49 class ContentChangedEventArgs
;
52 class ControlTemplate
;
54 class CursorPositionChangedEventArgs
;
56 class DeepZoomImageTileSource
;
57 class DependencyObject
;
58 class DependencyObjectCollection
;
60 class DiscreteColorKeyFrame
;
61 class DiscreteDoubleKeyFrame
;
62 class DiscreteObjectKeyFrame
;
63 class DiscretePointKeyFrame
;
64 class DispatcherTimer
;
65 class DoubleCollection
;
66 class DoubleAnimation
;
67 class DoubleAnimationUsingKeyFrames
;
69 class DoubleKeyFrameCollection
;
71 class DownloadProgressEventArgs
;
72 class DrawingAttributes
;
73 class EasingColorKeyFrame
;
74 class EasingDoubleKeyFrame
;
75 class EasingFunctionBase
;
76 class EasingPointKeyFrame
;
79 class EllipseGeometry
;
82 class EventListenerProxy
;
85 class ExceptionRoutedEventArgs
;
86 class ExponentialEase
;
87 class ExternalDecoder
;
88 class ExternalDemuxer
;
93 class FrameworkElement
;
94 class FrameworkTemplate
;
95 class GeneralTransform
;
97 class GeometryCollection
;
102 class GradientStopCollection
;
104 class HitTestCollection
;
105 class IImageConverter
;
108 class ImageErrorEventArgs
;
117 class InlineCollection
;
119 class InternalDownloader
;
120 class ItemCollection
;
123 class KeyFrameCollection
;
125 class LayoutInformation
;
127 class LinearColorKeyFrame
;
128 class LinearDoubleKeyFrame
;
129 class LinearGradientBrush
;
130 class LinearPointKeyFrame
;
134 class ManagedStreamSource
;
135 class ManualTimeSource
;
136 class MarkerReachedEventArgs
;
139 class MatrixTransform
;
141 class MediaAttribute
;
142 class MediaAttributeCollection
;
145 class MediaDecodeFrameClosure
;
148 class MediaGetFrameClosure
;
150 class MediaMarkerFoundClosure
;
152 class MediaReportSeekCompletedClosure
;
153 class MediaSeekClosure
;
154 class MemoryNestedSource
;
158 class MmsPlaylistEntry
;
159 class MmsSecondDownloader
;
161 class MouseEventArgs
;
162 class MouseWheelEventArgs
;
164 class MultiScaleImage
;
165 class MultiScaleSubImage
;
166 class MultiScaleSubImageCollection
;
167 class MultiScaleTileSource
;
170 class ObjectAnimationUsingKeyFrames
;
171 class ObjectKeyFrame
;
172 class ObjectKeyFrameCollection
;
174 class ParallelTimeline
;
175 class ParserErrorEventArgs
;
176 class PassThroughDecoder
;
180 class PathFigureCollection
;
183 class PathSegmentCollection
;
187 class PointCollection
;
188 class PointAnimation
;
189 class PointAnimationUsingKeyFrames
;
191 class PointKeyFrameCollection
;
192 class PolyBezierSegment
;
195 class PolyLineSegment
;
196 class PolyQuadraticBezierSegment
;
199 class ProgressEventArgs
;
200 class ProgressiveSource
;
202 class QuadraticBezierSegment
;
206 class RadialGradientBrush
;
208 class RectangleGeometry
;
209 class RenderingEventArgs
;
210 class ResourceDictionary
;
211 class RotateTransform
;
212 class RoutedEventArgs
;
214 class RowDefinitionCollection
;
216 class ScaleTransform
;
219 class SetterBaseCollection
;
222 class SizeChangedEventArgs
;
224 class SolidColorBrush
;
225 class SplineColorKeyFrame
;
226 class SplineDoubleKeyFrame
;
227 class SplinePointKeyFrame
;
230 class StrokeCollection
;
234 class StylusPointCollection
;
236 class SystemTimeSource
;
240 class TextBoxModelChangedEventArgs
;
242 class TextChangedEventArgs
;
245 class TimelineCollection
;
247 class TimelineMarker
;
248 class TimelineMarkerCollection
;
252 class TransformCollection
;
253 class TransformGroup
;
254 class TranslateTransform
;
255 class TriggerCollection
;
257 class TriggerActionCollection
;
260 class UIElementCollection
;
261 class UnmanagedMatrix
;
266 class WriteableBitmap
;
273 class AnimationClock
;
274 class AnimationStorage
;
280 class ASFDemuxerInfo
;
281 class ASFFrameReader
;
282 class ASFMarkerDecoder
;
283 class ASFMarkerDecoderInfo
;
288 class AssemblyPartCollection
;
290 class ASXDemuxerInfo
;
296 class AutoCreatePropertyValueProvider
;
299 class BeginStoryboard
;
311 class CodecDownloader
;
313 class CollectionChangedEventArgs
;
314 class CollectionItemChangedEventArgs
;
315 class CollectionIterator
;
316 class ColorAnimation
;
317 class ColorAnimationUsingKeyFrames
;
319 class ColorKeyFrameCollection
;
320 class ColumnDefinition
;
321 class ColumnDefinitionCollection
;
322 class ContentChangedEventArgs
;
323 class ContentControl
;
324 class ContentDescription
;
325 class ContentDescriptionList
;
327 class ControlTemplate
;
330 class CursorPositionChangedEventArgs
;
333 class DeepTreeWalker
;
334 class DeepZoomImageTileSource
;
335 class DefaultValuePropertyValueProvider
;
337 class DependencyObject
;
338 class DependencyObjectCollection
;
339 class DependencyProperty
;
342 class DiscreteColorKeyFrame
;
343 class DiscreteDoubleKeyFrame
;
344 class DiscreteObjectKeyFrame
;
345 class DiscretePointKeyFrame
;
346 class DispatcherTimer
;
347 class DoubleAnimation
;
348 class DoubleAnimationUsingKeyFrames
;
349 class DoubleCollection
;
350 class DoubleKeyFrame
;
351 class DoubleKeyFrameCollection
;
353 class DownloaderRequest
;
354 class DownloaderResponse
;
355 class DownloadProgressEventArgs
;
356 class DrawingAttributes
;
357 class EasingColorKeyFrame
;
358 class EasingDoubleKeyFrame
;
359 class EasingFunctionBase
;
360 class EasingPointKeyFrame
;
363 class EllipseGeometry
;
364 class ErrorEventArgs
;
366 class EventListenerProxy
;
369 class ExceptionRoutedEventArgs
;
370 class ExponentialEase
;
371 class ExternalDecoder
;
372 class ExternalDecoderInfo
;
373 class ExternalDemuxer
;
375 class FfmpegDecoderInfo
;
377 class FileDownloader
;
381 class FrameworkElement
;
382 class FrameworkElementProvider
;
383 class FrameworkTemplate
;
384 class GeneralTransform
;
386 class GeometryCollection
;
391 class GradientStopCollection
;
393 class HitTestCollection
;
395 class IImageConverter
;
398 class ImageErrorEventArgs
;
405 class InheritedPropertyValueProvider
;
408 class InlineCollection
;
410 class InternalDownloader
;
411 class ItemCollection
;
412 class ITextAttributes
;
416 class KeyFrameCollection
;
418 class LayoutInformation
;
420 class LinearColorKeyFrame
;
421 class LinearDoubleKeyFrame
;
422 class LinearGradientBrush
;
423 class LinearPointKeyFrame
;
428 class LocalPropertyValueProvider
;
429 class ManagedStreamSource
;
430 class ManualTimeSource
;
431 class MarkerReachedEventArgs
;
434 class MatrixTransform
;
436 class MediaAttribute
;
437 class MediaAttributeCollection
;
440 class MediaDecodeFrameClosure
;
442 class MediaElementPropertyValueProvider
;
444 class MediaGetFrameClosure
;
447 class MediaMarkerFoundClosure
;
449 class MediaReportSeekCompletedClosure
;
450 class MediaSeekClosure
;
452 class MemoryNestedSource
;
456 class MmsPlaylistEntry
;
457 class MmsSecondDownloader
;
460 class MoonlightConfiguration
;
463 class MoonWindowless
;
464 class MouseEventArgs
;
465 class MouseWheelEventArgs
;
467 class Mp3DemuxerInfo
;
468 class Mp3FrameReader
;
469 class MultiScaleImage
;
470 class MultiScaleSubImage
;
471 class MultiScaleSubImageCollection
;
472 class MultiScaleTileSource
;
475 class NPStreamRequest
;
477 class NullDecoderInfo
;
478 class ObjectAnimationUsingKeyFrames
;
479 class ObjectKeyFrame
;
480 class ObjectKeyFrameCollection
;
483 class ParallelTimeline
;
484 class ParserErrorEventArgs
;
485 class PassThroughDecoder
;
486 class PassThroughDecoderInfo
;
490 class PathFigureCollection
;
493 class PathSegmentCollection
;
498 class PlaylistParser
;
499 class PlaylistParserInternal
;
501 class PluginDownloader
;
502 class PluginInstance
;
503 class PluginXamlLoader
;
504 class PointAnimation
;
505 class PointAnimationUsingKeyFrames
;
506 class PointCollection
;
508 class PointKeyFrameCollection
;
509 class PolyBezierSegment
;
512 class PolyLineSegment
;
513 class PolyQuadraticBezierSegment
;
516 class ProgressEventArgs
;
517 class ProgressiveSource
;
518 class PropertyValueProvider
;
521 class QuadraticBezierSegment
;
526 class RadialGradientBrush
;
528 class RectangleGeometry
;
530 class RenderingEventArgs
;
532 class ResourceDictionary
;
533 class RotateTransform
;
534 class RoutedEventArgs
;
536 class RowDefinitionCollection
;
538 class ScaleTransform
;
541 class SetterBaseCollection
;
544 class SizeChangedEventArgs
;
546 class SolidColorBrush
;
547 class SplineColorKeyFrame
;
548 class SplineDoubleKeyFrame
;
549 class SplinePointKeyFrame
;
553 class StrokeCollection
;
555 class StylePropertyValueProvider
;
558 class StylusPointCollection
;
560 class SystemTimeSource
;
564 class TextBoxModelChangedEventArgs
;
566 class TextChangedEventArgs
;
568 class TextFontDescription
;
570 class TextLayoutAttributes
;
574 class TimelineCollection
;
576 class TimelineMarker
;
577 class TimelineMarkerCollection
;
580 class ToggleNotifyListener
;
582 class TransformCollection
;
583 class TransformGroup
;
584 class TranslateTransform
;
586 class TriggerActionCollection
;
588 class TriggerCollection
;
592 class UIElementCollection
;
594 class UnmanagedMatrix
;
600 class VisualTreeWalker
;
601 class WriteableBitmap
;
606 class YUVConverterInfo
;
608 struct asf_bitrate_mutual_exclusion
;
609 struct asf_codec_list
;
610 struct asf_content_description
;
612 struct asf_error_correction
;
613 struct asf_error_correction_data
;
614 struct asf_extended_content_description
;
615 struct asf_extended_stream_name
;
616 struct asf_extended_stream_properties
;
617 struct asf_file_properties
;
620 struct asf_header_extension
;
622 struct asf_marker_entry
;
623 struct asf_multiple_payloads
;
625 struct asf_payload_extension_system
;
626 struct asf_payload_parsing_information
;
627 struct asf_script_command
;
628 struct asf_script_command_entry
;
629 struct asf_single_payload
;
630 struct asf_stream_bitrate_properties
;
631 struct asf_stream_properties
;
632 struct asf_video_stream_data
;
634 struct ASFFrameReaderData
;
635 struct ASFFrameReaderIndex
;
637 struct BITMAPINFOHEADER
;
641 struct FontFaceExtents
;
651 struct ManagedStreamCallbacks
;
652 struct ManagedTypeInfo
;
653 struct MmsDataPacket
;
655 struct MmsHeaderReason
;
657 struct MoonlightCollectionObject
;
658 struct MoonlightCollectionType
;
659 struct MoonlightContentObject
;
660 struct MoonlightContentType
;
661 struct MoonlightControlObject
;
662 struct MoonlightControlType
;
663 struct MoonlightCornerRadius
;
664 struct MoonlightCornerRadiusType
;
665 struct MoonlightDependencyObjectObject
;
666 struct MoonlightDependencyObjectType
;
667 struct MoonlightDownloaderObject
;
668 struct MoonlightDownloaderType
;
669 struct MoonlightDownloadProgressEventArgs
;
670 struct MoonlightDownloadProgressEventArgsType
;
671 struct MoonlightDuration
;
672 struct MoonlightDurationType
;
673 struct MoonlightErrorEventArgs
;
674 struct MoonlightErrorEventArgsType
;
675 struct MoonlightEventArgs
;
676 struct MoonlightEventArgsType
;
677 struct MoonlightEventObjectObject
;
678 struct MoonlightEventObjectType
;
679 struct MoonlightImageBrushObject
;
680 struct MoonlightImageBrushType
;
681 struct MoonlightImageObject
;
682 struct MoonlightImageType
;
683 struct MoonlightKeyEventArgsObject
;
684 struct MoonlightKeyEventArgsType
;
685 struct MoonlightKeyTime
;
686 struct MoonlightKeyTimeType
;
687 struct MoonlightMarkerReachedEventArgsObject
;
688 struct MoonlightMarkerReachedEventArgsType
;
689 struct MoonlightMediaElementObject
;
690 struct MoonlightMediaElementType
;
691 struct MoonlightMouseEventArgsObject
;
692 struct MoonlightMouseEventArgsType
;
693 struct MoonlightMultiScaleImageObject
;
694 struct MoonlightMultiScaleImageType
;
695 struct MoonlightObject
;
696 struct MoonlightObjectType
;
697 struct MoonlightPasswordBoxObject
;
698 struct MoonlightPasswordBoxType
;
699 struct MoonlightPoint
;
700 struct MoonlightPointType
;
701 struct MoonlightRect
;
702 struct MoonlightRectType
;
703 struct MoonlightRoutedEventArgs
;
704 struct MoonlightRoutedEventArgsType
;
705 struct MoonlightScriptableObjectObject
;
706 struct MoonlightScriptableObjectType
;
707 struct MoonlightScriptControlObject
;
708 struct MoonlightScriptControlType
;
709 struct MoonlightSettingsObject
;
710 struct MoonlightSettingsType
;
711 struct MoonlightStoryboardObject
;
712 struct MoonlightStoryboardType
;
713 struct MoonlightStrokeCollectionObject
;
714 struct MoonlightStrokeCollectionType
;
715 struct MoonlightStrokeObject
;
716 struct MoonlightStrokeType
;
717 struct MoonlightStylusInfoObject
;
718 struct MoonlightStylusInfoType
;
719 struct MoonlightStylusPointCollectionObject
;
720 struct MoonlightStylusPointCollectionType
;
721 struct MoonlightTextBlockObject
;
722 struct MoonlightTextBlockType
;
723 struct MoonlightTextBoxObject
;
724 struct MoonlightTextBoxType
;
725 struct MoonlightThickness
;
726 struct MoonlightThicknessType
;
727 struct MoonlightTimeSpan
;
728 struct MoonlightTimeSpanType
;
729 struct MoonlightUIElementObject
;
730 struct MoonlightUIElementType
;
731 struct MoonNameIdMapping
;
733 struct MpegFrameHeader
;
734 struct MpegVBRHeader
;
736 struct PropertyChangedEventArgs
;
739 struct RepeatBehavior
;
741 struct TextLayoutGlyphCluster
;
742 struct TextLayoutLine
;
743 struct TextLayoutRun
;
748 struct WAVEFORMATEXTENSIBLE
;
749 struct XamlLoaderCallbacks
;
751 typedef void ( * ApplyDefaultStyleCallback
) ( FrameworkElement
* fwe
, ManagedTypeInfo
* key
) ;
752 typedef void ( * ApplyStyleCallback
) ( FrameworkElement
* fwe
, Style
* style
) ;
753 typedef void * ( * ConvertKeyframeValueCallback
) ( int kind
, DependencyProperty
* property
, Value
* original
, Value
* converted
) ;
754 typedef void * ( * GetResourceCallback
) ( const char * name
, int * size
) ;
755 typedef void ( * TickCallHandler
) ( EventObject
* object
) ;
756 typedef void ( * EventHandler
) ( EventObject
* sender
, EventArgs
* args
, gpointer closure
) ;
757 typedef void ( * ToggleNotifyHandler
) ( EventObject
* sender
, bool isLastRef
) ;
758 typedef void ( * PropertyChangeHandler
) ( DependencyObject
* sender
, PropertyChangedEventArgs
* args
, MoonError
* error
, gpointer closure
) ;
759 typedef void ( * DownloaderResponseHeaderCallback
) ( gpointer context
, const char * header
, const char * value
) ;
760 typedef void ( * DownloaderWriteFunc
) ( void * buf
, gint32 offset
, gint32 n
, gpointer cb_data
) ;
761 typedef void ( * DownloaderNotifySizeFunc
) ( gint64 size
, gpointer cb_data
) ;
762 typedef gpointer ( * DownloaderCreateStateFunc
) ( Downloader
* dl
) ;
763 typedef void ( * DownloaderDestroyStateFunc
) ( gpointer state
) ;
764 typedef void ( * DownloaderOpenFunc
) ( gpointer state
, const char * verb
, const char * uri
, bool custom_header_support
, bool disable_cache
) ;
765 typedef void ( * DownloaderSendFunc
) ( gpointer state
) ;
766 typedef void ( * DownloaderAbortFunc
) ( gpointer state
) ;
767 typedef void ( * DownloaderHeaderFunc
) ( gpointer state
, const char * header
, const char * value
) ;
768 typedef void ( * DownloaderBodyFunc
) ( gpointer state
, void * body
, guint32 length
) ;
769 typedef gpointer ( * DownloaderCreateWebRequestFunc
) ( const char * method
, const char * uri
, gpointer context
) ;
770 typedef void ( * DownloaderSetResponseHeaderCallbackFunc
) ( gpointer state
, DownloaderResponseHeaderCallback callback
, gpointer context
) ;
771 typedef guint32 ( * DownloaderResponseStartedHandler
) ( DownloaderResponse
* response
, gpointer context
) ;
772 typedef guint32 ( * DownloaderResponseDataAvailableHandler
) ( DownloaderResponse
* response
, gpointer context
, char * buffer
, guint32 length
) ;
773 typedef guint32 ( * DownloaderResponseFinishedHandler
) ( DownloaderResponse
* response
, gpointer context
, bool success
, gpointer data
, const char * uri
) ;
774 typedef double ( * EasingFunction
) ( double normalizedTime
) ;
775 typedef Size ( * MeasureOverrideCallback
) ( Size availableSize
) ;
776 typedef Size ( * ArrangeOverrideCallback
) ( Size finalSize
) ;
777 typedef void ( * CloseDemuxerCallback
) ( void * instance
) ;
778 typedef void ( * GetDiagnosticAsyncCallback
) ( void * instance
, int diagnosticKind
) ;
779 typedef void ( * GetFrameAsyncCallback
) ( void * instance
, int mediaStreamType
) ;
780 typedef void ( * OpenDemuxerAsyncCallback
) ( void * instance
, IMediaDemuxer
* demuxer
) ;
781 typedef void ( * SeekAsyncCallback
) ( void * instance
, guint64 seekToTime
) ;
782 typedef void ( * SwitchMediaStreamAsyncCallback
) ( void * instance
, IMediaStream
* mediaStreamDescription
) ;
783 typedef void ( * ExternalDecoder_DecodeFrameAsyncCallback
) ( void * instance
, MediaFrame
* frame
) ;
784 typedef void ( * ExternalDecoder_OpenDecoderAsyncCallback
) ( void * instance
) ;
785 typedef void ( * ExternalDecoder_CleanupCallback
) ( void * instance
, MediaFrame
* frame
) ;
786 typedef void ( * ExternalDecoder_CleanStateCallback
) ( void * instance
) ;
787 typedef bool ( * ExternalDecoder_HasDelayedFrameCallback
) ( void * instance
) ;
788 typedef void ( * ExternalDecoder_DisposeCallback
) ( void * instance
) ;
789 typedef void ( * ExternalDecoder_DtorCallback
) ( void * instance
) ;
790 typedef bool ( * ExternalDecoderInfo_SupportsCallback
) ( void * instance
, const char * codec
) ;
791 typedef IMediaDecoder
* ( * ExternalDecoderInfo_Create
) ( void * instance
, Media
* media
, IMediaStream
* stream
) ;
792 typedef void ( * ExternalDecoderInfo_dtor
) ( void * instance
) ;
793 typedef bool ( * get_image_uri_func
) ( int level
, int posX
, int posY
, Uri
* uri
, void * user_data
) ;
794 typedef gint64 TimeSpan
;
802 /* @GeneratePInvoke */
803 void *plugin_instance_evaluate (PluginInstance
*instance
, const char *code
);
805 /* @GeneratePInvoke */
806 gint32
plugin_instance_get_actual_height (PluginInstance
*instance
);
808 /* @GeneratePInvoke */
809 gint32
plugin_instance_get_actual_width (PluginInstance
*instance
);
811 /* @GeneratePInvoke */
812 bool plugin_instance_get_allow_html_popup_window (PluginInstance
*instance
);
814 /* @GeneratePInvoke */
815 void *plugin_instance_get_browser_host (PluginInstance
*instance
);
817 /* @GeneratePInvoke */
818 bool plugin_instance_get_enable_html_access (PluginInstance
*instance
);
820 /* @GeneratePInvoke */
821 const char *plugin_instance_get_init_params (PluginInstance
*instance
);
823 /* @GeneratePInvoke */
824 const char *plugin_instance_get_source (PluginInstance
*instance
);
826 /* @GeneratePInvoke */
827 const char *plugin_instance_get_source_location (PluginInstance
*instance
);
829 /* @GeneratePInvoke */
830 const char *plugin_instance_get_source_location_original (PluginInstance
*instance
);
832 /* @GeneratePInvoke */
833 const char *plugin_instance_get_source_original (PluginInstance
*instance
);
835 /* @GeneratePInvoke */
836 Surface
*plugin_instance_get_surface (PluginInstance
*instance
);
838 /* @GeneratePInvoke */
839 bool plugin_instance_get_windowless (PluginInstance
*instance
);
841 /* @GeneratePInvoke */
842 void plugin_instance_report_exception (PluginInstance
*instance
, char *msg
, char *details
, char* *stack_trace
, int num_frames
);