#[repr(C)]
pub struct GstElementClass {
pub parent_class: GstObjectClass,
pub metadata: gpointer,
pub elementfactory: *mut GstElementFactory,
pub padtemplates: *mut GList,
pub numpadtemplates: c_int,
pub pad_templ_cookie: u32,
pub pad_added: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPad)>,
pub pad_removed: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPad)>,
pub no_more_pads: Option<unsafe extern "C" fn(_: *mut GstElement)>,
pub request_new_pad: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPadTemplate, _: *const c_char, _: *const GstCaps) -> *mut GstPad>,
pub release_pad: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPad)>,
pub get_state: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstState, _: *mut GstState, _: GstClockTime) -> GstStateChangeReturn>,
pub set_state: Option<unsafe extern "C" fn(_: *mut GstElement, _: GstState) -> GstStateChangeReturn>,
pub change_state: Option<unsafe extern "C" fn(_: *mut GstElement, _: GstStateChange) -> GstStateChangeReturn>,
pub state_changed: Option<unsafe extern "C" fn(_: *mut GstElement, _: GstState, _: GstState, _: GstState)>,
pub set_bus: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstBus)>,
pub provide_clock: Option<unsafe extern "C" fn(_: *mut GstElement) -> *mut GstClock>,
pub set_clock: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstClock) -> gboolean>,
pub send_event: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstEvent) -> gboolean>,
pub query: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstQuery) -> gboolean>,
pub post_message: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstMessage) -> gboolean>,
pub set_context: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstContext)>,
pub _gst_reserved: [gpointer; 18],
}
parent_class: GstObjectClass
metadata: gpointer
elementfactory: *mut GstElementFactory
padtemplates: *mut GList
numpadtemplates: c_int
pad_templ_cookie: u32
pad_added: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPad)>
pad_removed: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPad)>
no_more_pads: Option<unsafe extern "C" fn(_: *mut GstElement)>
request_new_pad: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPadTemplate, _: *const c_char, _: *const GstCaps) -> *mut GstPad>
release_pad: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstPad)>
get_state: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstState, _: *mut GstState, _: GstClockTime) -> GstStateChangeReturn>
set_state: Option<unsafe extern "C" fn(_: *mut GstElement, _: GstState) -> GstStateChangeReturn>
change_state: Option<unsafe extern "C" fn(_: *mut GstElement, _: GstStateChange) -> GstStateChangeReturn>
state_changed: Option<unsafe extern "C" fn(_: *mut GstElement, _: GstState, _: GstState, _: GstState)>
set_bus: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstBus)>
provide_clock: Option<unsafe extern "C" fn(_: *mut GstElement) -> *mut GstClock>
set_clock: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstClock) -> gboolean>
send_event: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstEvent) -> gboolean>
query: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstQuery) -> gboolean>
post_message: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstMessage) -> gboolean>
set_context: Option<unsafe extern "C" fn(_: *mut GstElement, _: *mut GstContext)>
_gst_reserved: [gpointer; 18]