1 // This file was generated by gir (https://github.com/gtk-rs/gir) 2 // from gir-files (https://github.com/gtk-rs/gir-files) 3 // from gst-gir-files (https://gitlab.freedesktop.org/gstreamer/gir-files-rs.git) 4 // DO NOT EDIT 5 6 use crate::RTPHeaderExtensionFlags; 7 use glib::object::IsA; 8 use glib::translate::*; 9 10 glib::wrapper! { 11 #[doc(alias = "GstRTPHeaderExtension")] 12 pub struct RTPHeaderExtension(Object<ffi::GstRTPHeaderExtension, ffi::GstRTPHeaderExtensionClass>); 13 14 match fn { 15 type_ => || ffi::gst_rtp_header_extension_get_type(), 16 } 17 } 18 19 impl RTPHeaderExtension { 20 #[doc(alias = "gst_rtp_header_extension_create_from_uri")] create_from_uri(uri: &str) -> Option<RTPHeaderExtension>21 pub fn create_from_uri(uri: &str) -> Option<RTPHeaderExtension> { 22 assert_initialized_main_thread!(); 23 unsafe { 24 from_glib_full(ffi::gst_rtp_header_extension_create_from_uri( 25 uri.to_glib_none().0, 26 )) 27 } 28 } 29 } 30 31 unsafe impl Send for RTPHeaderExtension {} 32 unsafe impl Sync for RTPHeaderExtension {} 33 34 pub const NONE_RTP_HEADER_EXTENSION: Option<&RTPHeaderExtension> = None; 35 36 pub trait RTPHeaderExtensionExt: 'static { 37 #[doc(alias = "gst_rtp_header_extension_get_id")] 38 #[doc(alias = "get_id")] id(&self) -> u3239 fn id(&self) -> u32; 40 41 #[doc(alias = "gst_rtp_header_extension_get_max_size")] 42 #[doc(alias = "get_max_size")] max_size(&self, input_meta: &gst::Buffer) -> usize43 fn max_size(&self, input_meta: &gst::Buffer) -> usize; 44 45 #[doc(alias = "gst_rtp_header_extension_get_sdp_caps_field_name")] 46 #[doc(alias = "get_sdp_caps_field_name")] sdp_caps_field_name(&self) -> glib::GString47 fn sdp_caps_field_name(&self) -> glib::GString; 48 49 #[doc(alias = "gst_rtp_header_extension_get_supported_flags")] 50 #[doc(alias = "get_supported_flags")] supported_flags(&self) -> RTPHeaderExtensionFlags51 fn supported_flags(&self) -> RTPHeaderExtensionFlags; 52 53 #[doc(alias = "gst_rtp_header_extension_get_uri")] 54 #[doc(alias = "get_uri")] uri(&self) -> Option<glib::GString>55 fn uri(&self) -> Option<glib::GString>; 56 57 #[doc(alias = "gst_rtp_header_extension_set_attributes_from_caps")] set_attributes_from_caps(&self, caps: &gst::Caps) -> bool58 fn set_attributes_from_caps(&self, caps: &gst::Caps) -> bool; 59 60 #[doc(alias = "gst_rtp_header_extension_set_attributes_from_caps_simple_sdp")] set_attributes_from_caps_simple_sdp(&self, caps: &gst::Caps) -> bool61 fn set_attributes_from_caps_simple_sdp(&self, caps: &gst::Caps) -> bool; 62 63 #[doc(alias = "gst_rtp_header_extension_set_caps_from_attributes")] set_caps_from_attributes(&self, caps: &gst::Caps) -> bool64 fn set_caps_from_attributes(&self, caps: &gst::Caps) -> bool; 65 66 #[doc(alias = "gst_rtp_header_extension_set_caps_from_attributes_simple_sdp")] set_caps_from_attributes_simple_sdp(&self, caps: &gst::Caps) -> bool67 fn set_caps_from_attributes_simple_sdp(&self, caps: &gst::Caps) -> bool; 68 69 #[doc(alias = "gst_rtp_header_extension_set_id")] set_id(&self, ext_id: u32)70 fn set_id(&self, ext_id: u32); 71 72 #[doc(alias = "gst_rtp_header_extension_set_non_rtp_sink_caps")] set_non_rtp_sink_caps(&self, caps: &gst::Caps) -> bool73 fn set_non_rtp_sink_caps(&self, caps: &gst::Caps) -> bool; 74 75 #[doc(alias = "gst_rtp_header_extension_set_wants_update_non_rtp_src_caps")] set_wants_update_non_rtp_src_caps(&self, state: bool)76 fn set_wants_update_non_rtp_src_caps(&self, state: bool); 77 78 #[doc(alias = "gst_rtp_header_extension_update_non_rtp_src_caps")] update_non_rtp_src_caps(&self, caps: &gst::Caps) -> bool79 fn update_non_rtp_src_caps(&self, caps: &gst::Caps) -> bool; 80 81 #[doc(alias = "gst_rtp_header_extension_wants_update_non_rtp_src_caps")] wants_update_non_rtp_src_caps(&self) -> bool82 fn wants_update_non_rtp_src_caps(&self) -> bool; 83 } 84 85 impl<O: IsA<RTPHeaderExtension>> RTPHeaderExtensionExt for O { id(&self) -> u3286 fn id(&self) -> u32 { 87 unsafe { ffi::gst_rtp_header_extension_get_id(self.as_ref().to_glib_none().0) } 88 } 89 max_size(&self, input_meta: &gst::Buffer) -> usize90 fn max_size(&self, input_meta: &gst::Buffer) -> usize { 91 unsafe { 92 ffi::gst_rtp_header_extension_get_max_size( 93 self.as_ref().to_glib_none().0, 94 input_meta.to_glib_none().0, 95 ) 96 } 97 } 98 sdp_caps_field_name(&self) -> glib::GString99 fn sdp_caps_field_name(&self) -> glib::GString { 100 unsafe { 101 from_glib_full(ffi::gst_rtp_header_extension_get_sdp_caps_field_name( 102 self.as_ref().to_glib_none().0, 103 )) 104 } 105 } 106 supported_flags(&self) -> RTPHeaderExtensionFlags107 fn supported_flags(&self) -> RTPHeaderExtensionFlags { 108 unsafe { 109 from_glib(ffi::gst_rtp_header_extension_get_supported_flags( 110 self.as_ref().to_glib_none().0, 111 )) 112 } 113 } 114 uri(&self) -> Option<glib::GString>115 fn uri(&self) -> Option<glib::GString> { 116 unsafe { 117 from_glib_none(ffi::gst_rtp_header_extension_get_uri( 118 self.as_ref().to_glib_none().0, 119 )) 120 } 121 } 122 set_attributes_from_caps(&self, caps: &gst::Caps) -> bool123 fn set_attributes_from_caps(&self, caps: &gst::Caps) -> bool { 124 unsafe { 125 from_glib(ffi::gst_rtp_header_extension_set_attributes_from_caps( 126 self.as_ref().to_glib_none().0, 127 caps.to_glib_none().0, 128 )) 129 } 130 } 131 set_attributes_from_caps_simple_sdp(&self, caps: &gst::Caps) -> bool132 fn set_attributes_from_caps_simple_sdp(&self, caps: &gst::Caps) -> bool { 133 unsafe { 134 from_glib( 135 ffi::gst_rtp_header_extension_set_attributes_from_caps_simple_sdp( 136 self.as_ref().to_glib_none().0, 137 caps.to_glib_none().0, 138 ), 139 ) 140 } 141 } 142 set_caps_from_attributes(&self, caps: &gst::Caps) -> bool143 fn set_caps_from_attributes(&self, caps: &gst::Caps) -> bool { 144 unsafe { 145 from_glib(ffi::gst_rtp_header_extension_set_caps_from_attributes( 146 self.as_ref().to_glib_none().0, 147 caps.to_glib_none().0, 148 )) 149 } 150 } 151 set_caps_from_attributes_simple_sdp(&self, caps: &gst::Caps) -> bool152 fn set_caps_from_attributes_simple_sdp(&self, caps: &gst::Caps) -> bool { 153 unsafe { 154 from_glib( 155 ffi::gst_rtp_header_extension_set_caps_from_attributes_simple_sdp( 156 self.as_ref().to_glib_none().0, 157 caps.to_glib_none().0, 158 ), 159 ) 160 } 161 } 162 set_id(&self, ext_id: u32)163 fn set_id(&self, ext_id: u32) { 164 unsafe { 165 ffi::gst_rtp_header_extension_set_id(self.as_ref().to_glib_none().0, ext_id); 166 } 167 } 168 set_non_rtp_sink_caps(&self, caps: &gst::Caps) -> bool169 fn set_non_rtp_sink_caps(&self, caps: &gst::Caps) -> bool { 170 unsafe { 171 from_glib(ffi::gst_rtp_header_extension_set_non_rtp_sink_caps( 172 self.as_ref().to_glib_none().0, 173 caps.to_glib_none().0, 174 )) 175 } 176 } 177 set_wants_update_non_rtp_src_caps(&self, state: bool)178 fn set_wants_update_non_rtp_src_caps(&self, state: bool) { 179 unsafe { 180 ffi::gst_rtp_header_extension_set_wants_update_non_rtp_src_caps( 181 self.as_ref().to_glib_none().0, 182 state.into_glib(), 183 ); 184 } 185 } 186 update_non_rtp_src_caps(&self, caps: &gst::Caps) -> bool187 fn update_non_rtp_src_caps(&self, caps: &gst::Caps) -> bool { 188 unsafe { 189 from_glib(ffi::gst_rtp_header_extension_update_non_rtp_src_caps( 190 self.as_ref().to_glib_none().0, 191 caps.to_glib_none().0, 192 )) 193 } 194 } 195 wants_update_non_rtp_src_caps(&self) -> bool196 fn wants_update_non_rtp_src_caps(&self) -> bool { 197 unsafe { 198 from_glib(ffi::gst_rtp_header_extension_wants_update_non_rtp_src_caps( 199 self.as_ref().to_glib_none().0, 200 )) 201 } 202 } 203 } 204