11/*
2+ * Copyright (c) 2020 Neil C Smith
23 * Copyright (c) 2014 Tom Greenwood <[email protected] > 34 * Copyright (c) 2009 Levente Farkas
45 * Copyright (c) 2007, 2008 Wayne Meissner
3536import org .freedesktop .gstreamer .lowlevel .annotations .Invalidate ;
3637
3738import com .sun .jna .Pointer ;
39+ import com .sun .jna .Structure .FieldOrder ;
40+ import com .sun .jna .ptr .IntByReference ;
41+ import com .sun .jna .ptr .LongByReference ;
3842import com .sun .jna .ptr .PointerByReference ;
39- import java .util .Arrays ;
40- import java .util .List ;
4143
4244/*
4345 * GstMessage functions
4446 */
4547public interface GstMessageAPI extends com .sun .jna .Library {
4648 GstMessageAPI GSTMESSAGE_API = GstNative .load (GstMessageAPI .class );
4749
50+ @ FieldOrder ({"mini_object" , "type" , "timestamp" , "src" ,
51+ "seqnum" , "lock" , "cond" })
4852 public static final class MessageStruct extends com .sun .jna .Structure {
4953 public volatile MiniObjectStruct mini_object ;
50- public volatile MessageType type ;
54+ public volatile int type ;
5155 public volatile long timestamp ;
52- public volatile GstObject src ;
56+ public volatile GstObjectPtr src ;
5357 public volatile int seqnum ;
5458
5559 public volatile Pointer lock ;
@@ -63,39 +67,48 @@ public MessageStruct() {
6367 public MessageStruct (Pointer ptr ) {
6468 useMemory (ptr );
6569 }
66-
67- @ Override
68- protected List <String > getFieldOrder () {
69- return Arrays .asList (new String []{
70- "mini_object" ,
71- "type" , "timestamp" , "src" ,
72- "seqnum" ,
73- "lock" , "cond"
74- });
70+
71+ int typeOffset () {
72+ return fieldOffset ("type" );
73+ }
74+
75+ int srcOffset () {
76+ return fieldOffset ("src" );
7577 }
7678 }
7779
7880 GType gst_message_get_type ();
7981 String gst_message_type_get_name (MessageType type );
8082 void gst_message_parse_state_changed (Message msg , State [] old , State [] current , State [] pending );
83+ void gst_message_parse_state_changed (GstMessagePtr msg , IntByReference old , IntByReference current , IntByReference pending );
8184 void gst_message_parse_tag (Message msg , PointerByReference tagList );
85+ void gst_message_parse_tag (GstMessagePtr msg , PointerByReference tagList );
8286 void gst_message_parse_clock_provide (Message msg , PointerByReference clock , int [] reader );
8387 void gst_message_parse_new_clock (Message msg , PointerByReference clock );
8488 void gst_message_parse_error (Message msg , PointerByReference err , PointerByReference debug );
89+ void gst_message_parse_error (GstMessagePtr msg , PointerByReference err , PointerByReference debug );
8590 void gst_message_parse_error (Message msg , GErrorStruct [] err , Pointer [] debug );
8691 void gst_message_parse_warning (Message msg , PointerByReference err , PointerByReference debug );
92+ void gst_message_parse_warning (GstMessagePtr msg , PointerByReference err , PointerByReference debug );
8793 void gst_message_parse_warning (Message msg , GErrorStruct [] err , Pointer [] debug );
8894 void gst_message_parse_info (Message msg , PointerByReference err , PointerByReference debug );
95+ void gst_message_parse_info (GstMessagePtr msg , PointerByReference err , PointerByReference debug );
8996 void gst_message_parse_info (Message msg , GErrorStruct [] err , Pointer [] debug );
9097 void gst_message_parse_buffering (Message msg , int [] percent );
98+ void gst_message_parse_buffering (GstMessagePtr msg , IntByReference percent );
9199 void gst_message_parse_segment_start (Message message , Format [] format , long [] position );
100+ void gst_message_parse_segment_start (GstMessagePtr msg , IntByReference format , LongByReference position );
92101 void gst_message_parse_segment_done (Message message , Format [] format , long [] position );
102+ void gst_message_parse_segment_done (GstMessagePtr msg , IntByReference format , LongByReference position );
93103 void gst_message_parse_duration (Message message , Format [] format , long [] position );
104+ void gst_message_parse_duration (GstMessagePtr msg , IntByReference format , LongByReference position );
94105 void gst_message_parse_async_start (Message message , boolean [] new_base_time );
95-
96106 boolean gst_message_parse_context_type (Message message , String [] context_type );
107+ boolean gst_message_parse_context_type (GstMessagePtr msg , PointerByReference /*String*/ context_type );
108+
97109 @ CallerOwnsReturn Message gst_message_new_eos (GstObject src );
98110 Pointer ptr_gst_message_new_eos (GstObject src );
111+ @ CallerOwnsReturn GstMessagePtr gst_message_new_eos (GstObjectPtr src );
99112 @ CallerOwnsReturn Message gst_message_new_error (GstObject src , GErrorStruct error , String debug );
100113 @ CallerOwnsReturn Message gst_message_new_warning (GstObject src , GErrorStruct error , String debug );
101114 @ CallerOwnsReturn Message gst_message_new_info (GstObject src , GErrorStruct error , String debug );
0 commit comments