[−]Struct gstreamer_video::VideoEncoder
This base class is for video encoders turning raw video into encoded video data.
GstVideoEncoder and subclass should cooperate as follows.
Configuration
- Initially, GstVideoEncoder calls
start
when the encoder element is activated, which allows subclass to perform any global setup. - GstVideoEncoder calls
set_format
to inform subclass of the format of input video data that it is about to receive. Subclass should setup for encoding and configure base class as appropriate (e.g. latency). While unlikely, it might be called more than once, if changing input parameters require reconfiguration. Baseclass will ensure that processing of current configuration is finished. - GstVideoEncoder calls
stop
at end of all processing.
Data processing
-
Base class collects input data and metadata into a frame and hands this to subclass'
handle_frame
. -
If codec processing results in encoded data, subclass should call
VideoEncoder::finish_frame
to have encoded data pushed downstream. -
If implemented, baseclass calls subclass
pre_push
just prior to pushing to allow subclasses to modify some metadata on the buffer. If it returns GST_FLOW_OK, the buffer is pushed downstream. -
GstVideoEncoderClass will handle both srcpad and sinkpad events. Sink events will be passed to subclass if
event
callback has been provided.
Shutdown phase
- GstVideoEncoder class calls
stop
to inform the subclass that data parsing will be stopped.
Subclass is responsible for providing pad template caps for
source and sink pads. The pads need to be named "sink" and "src". It should
also be able to provide fixed src pad caps in getcaps
by the time it calls
VideoEncoder::finish_frame
.
Things that subclass need to take care of:
- Provide pad templates
- Provide source pad caps before pushing the first buffer
- Accept data in
handle_frame
and provide encoded results toVideoEncoder::finish_frame
.
The VideoEncoder:qos
property will enable the Quality-of-Service
features of the encoder which gather statistics about the real-time
performance of the downstream elements. If enabled, subclasses can
use VideoEncoderExt::get_max_encode_time
to check if input frames
are already late and drop them right away to give a chance to the
pipeline to catch up.
Implements
VideoEncoderExt
, gst::ElementExt
, gst::ObjectExt
, glib::object::ObjectExt
Trait Implementations
impl Clone for VideoEncoder
fn clone(&self) -> VideoEncoder
fn clone_from(&mut self, source: &Self)
1.0.0[src]
impl Debug for VideoEncoder
impl Eq for VideoEncoder
impl Hash for VideoEncoder
fn hash<__H: Hasher>(&self, state: &mut __H)
fn hash_slice<H>(data: &[Self], state: &mut H) where
H: Hasher,
1.3.0[src]
H: Hasher,
impl IsA<Element> for VideoEncoder
impl IsA<Object> for VideoEncoder
impl Ord for VideoEncoder
fn cmp(&self, other: &VideoEncoder) -> Ordering
#[must_use]
fn max(self, other: Self) -> Self
1.21.0[src]
#[must_use]
fn min(self, other: Self) -> Self
1.21.0[src]
#[must_use]
fn clamp(self, min: Self, max: Self) -> Self
[src]
impl<T: ObjectType> PartialEq<T> for VideoEncoder
impl<T: ObjectType> PartialOrd<T> for VideoEncoder
fn partial_cmp(&self, other: &T) -> Option<Ordering>
#[must_use]
fn lt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
fn le(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
fn gt(&self, other: &Rhs) -> bool
1.0.0[src]
#[must_use]
fn ge(&self, other: &Rhs) -> bool
1.0.0[src]
impl Send for VideoEncoder
[src]
impl StaticType for VideoEncoder
fn static_type() -> Type
impl Sync for VideoEncoder
[src]
Auto Trait Implementations
Blanket Implementations
impl<T> Any for T where
T: 'static + ?Sized,
[src]
T: 'static + ?Sized,
impl<T> Borrow<T> for T where
T: ?Sized,
[src]
T: ?Sized,
impl<T> BorrowMut<T> for T where
T: ?Sized,
[src]
T: ?Sized,
fn borrow_mut(&mut self) -> &mut T
[src]
impl<Super, Sub> CanDowncast<Sub> for Super where
Sub: IsA<Super>,
Super: IsA<Super>,
[src]
Sub: IsA<Super>,
Super: IsA<Super>,
impl<T> Cast for T where
T: ObjectType,
[src]
T: ObjectType,
fn upcast<T>(self) -> T where
Self: IsA<T>,
T: ObjectType,
[src]
Self: IsA<T>,
T: ObjectType,
fn upcast_ref<T>(&self) -> &T where
Self: IsA<T>,
T: ObjectType,
[src]
Self: IsA<T>,
T: ObjectType,
fn downcast<T>(self) -> Result<T, Self> where
Self: CanDowncast<T>,
T: ObjectType,
[src]
Self: CanDowncast<T>,
T: ObjectType,
fn downcast_ref<T>(&self) -> Option<&T> where
Self: CanDowncast<T>,
T: ObjectType,
[src]
Self: CanDowncast<T>,
T: ObjectType,
fn dynamic_cast<T>(self) -> Result<T, Self> where
T: ObjectType,
[src]
T: ObjectType,
fn dynamic_cast_ref<T>(&self) -> Option<&T> where
T: ObjectType,
[src]
T: ObjectType,
unsafe fn unsafe_cast<T>(self) -> T where
T: ObjectType,
[src]
T: ObjectType,
unsafe fn unsafe_cast_ref<T>(&self) -> &T where
T: ObjectType,
[src]
T: ObjectType,
impl<O> ElementExt for O where
O: IsA<Element>,
[src]
O: IsA<Element>,
fn abort_state(&self)
[src]
fn add_pad<P>(&self, pad: &P) -> Result<(), BoolError> where
P: IsA<Pad>,
[src]
P: IsA<Pad>,
fn create_all_pads(&self)
[src]
fn foreach_pad<P>(&self, func: P) -> bool where
P: FnMut(&Element, &Pad) -> bool,
[src]
P: FnMut(&Element, &Pad) -> bool,
fn foreach_sink_pad<P>(&self, func: P) -> bool where
P: FnMut(&Element, &Pad) -> bool,
[src]
P: FnMut(&Element, &Pad) -> bool,
fn foreach_src_pad<P>(&self, func: P) -> bool where
P: FnMut(&Element, &Pad) -> bool,
[src]
P: FnMut(&Element, &Pad) -> bool,
fn get_base_time(&self) -> ClockTime
[src]
fn get_bus(&self) -> Option<Bus>
[src]
fn get_clock(&self) -> Option<Clock>
[src]
fn get_compatible_pad<P>(&self, pad: &P, caps: Option<&Caps>) -> Option<Pad> where
P: IsA<Pad>,
[src]
P: IsA<Pad>,
fn get_compatible_pad_template(
&self,
compattempl: &PadTemplate
) -> Option<PadTemplate>
[src]
&self,
compattempl: &PadTemplate
) -> Option<PadTemplate>
fn get_context(&self, context_type: &str) -> Option<Context>
[src]
fn get_contexts(&self) -> Vec<Context>
[src]
fn get_factory(&self) -> Option<ElementFactory>
[src]
fn get_request_pad(&self, name: &str) -> Option<Pad>
[src]
fn get_start_time(&self) -> ClockTime
[src]
fn get_static_pad(&self, name: &str) -> Option<Pad>
[src]
fn is_locked_state(&self) -> bool
[src]
fn link<P>(&self, dest: &P) -> Result<(), BoolError> where
P: IsA<Element>,
[src]
P: IsA<Element>,
fn link_filtered<P>(
&self,
dest: &P,
filter: Option<&Caps>
) -> Result<(), BoolError> where
P: IsA<Element>,
[src]
&self,
dest: &P,
filter: Option<&Caps>
) -> Result<(), BoolError> where
P: IsA<Element>,
fn link_pads<P>(
&self,
srcpadname: Option<&str>,
dest: &P,
destpadname: Option<&str>
) -> Result<(), BoolError> where
P: IsA<Element>,
[src]
&self,
srcpadname: Option<&str>,
dest: &P,
destpadname: Option<&str>
) -> Result<(), BoolError> where
P: IsA<Element>,
fn link_pads_filtered<P>(
&self,
srcpadname: Option<&str>,
dest: &P,
destpadname: Option<&str>,
filter: Option<&Caps>
) -> Result<(), BoolError> where
P: IsA<Element>,
[src]
&self,
srcpadname: Option<&str>,
dest: &P,
destpadname: Option<&str>,
filter: Option<&Caps>
) -> Result<(), BoolError> where
P: IsA<Element>,
fn link_pads_full<P>(
&self,
srcpadname: Option<&str>,
dest: &P,
destpadname: Option<&str>,
flags: PadLinkCheck
) -> Result<(), BoolError> where
P: IsA<Element>,
[src]
&self,
srcpadname: Option<&str>,
dest: &P,
destpadname: Option<&str>,
flags: PadLinkCheck
) -> Result<(), BoolError> where
P: IsA<Element>,
fn lost_state(&self)
[src]
fn no_more_pads(&self)
[src]
fn post_message(&self, message: &Message) -> Result<(), BoolError>
[src]
fn provide_clock(&self) -> Option<Clock>
[src]
fn release_request_pad<P>(&self, pad: &P) where
P: IsA<Pad>,
[src]
P: IsA<Pad>,
fn remove_pad<P>(&self, pad: &P) -> Result<(), BoolError> where
P: IsA<Pad>,
[src]
P: IsA<Pad>,
fn request_pad(
&self,
templ: &PadTemplate,
name: Option<&str>,
caps: Option<&Caps>
) -> Option<Pad>
[src]
&self,
templ: &PadTemplate,
name: Option<&str>,
caps: Option<&Caps>
) -> Option<Pad>
fn set_base_time(&self, time: ClockTime)
[src]
fn set_bus(&self, bus: Option<&Bus>)
[src]
fn set_clock<P>(&self, clock: Option<&P>) -> Result<(), BoolError> where
P: IsA<Clock>,
[src]
P: IsA<Clock>,
fn set_context(&self, context: &Context)
[src]
fn set_locked_state(&self, locked_state: bool) -> bool
[src]
fn set_start_time(&self, time: ClockTime)
[src]
fn sync_state_with_parent(&self) -> Result<(), BoolError>
[src]
fn unlink<P>(&self, dest: &P) where
P: IsA<Element>,
[src]
P: IsA<Element>,
fn unlink_pads<P>(&self, srcpadname: &str, dest: &P, destpadname: &str) where
P: IsA<Element>,
[src]
P: IsA<Element>,
fn connect_no_more_pads<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O),
[src]
F: 'static + Send + Sync + Fn(&O),
fn connect_pad_added<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O, &Pad),
[src]
F: 'static + Send + Sync + Fn(&O, &Pad),
fn connect_pad_removed<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O, &Pad),
[src]
F: 'static + Send + Sync + Fn(&O, &Pad),
impl<O> ElementExtManual for O where
O: IsA<Element>,
[src]
O: IsA<Element>,
fn get_element_class(&self) -> &ElementClass
[src]
fn change_state(
&self,
transition: StateChange
) -> Result<StateChangeSuccess, StateChangeError>
[src]
&self,
transition: StateChange
) -> Result<StateChangeSuccess, StateChangeError>
fn continue_state(
&self,
ret: StateChangeReturn
) -> Result<StateChangeSuccess, StateChangeError>
[src]
&self,
ret: StateChangeReturn
) -> Result<StateChangeSuccess, StateChangeError>
fn get_state(
&self,
timeout: ClockTime
) -> (Result<StateChangeSuccess, StateChangeError>, State, State)
[src]
&self,
timeout: ClockTime
) -> (Result<StateChangeSuccess, StateChangeError>, State, State)
fn set_state(
&self,
state: State
) -> Result<StateChangeSuccess, StateChangeError>
[src]
&self,
state: State
) -> Result<StateChangeSuccess, StateChangeError>
fn query(&self, query: &mut QueryRef) -> bool
[src]
fn send_event(&self, event: Event) -> bool
[src]
fn get_metadata<'a>(&self, key: &str) -> Option<&'a str>
[src]
fn get_pad_template(&self, name: &str) -> Option<PadTemplate>
[src]
fn get_pad_template_list(&self) -> Vec<PadTemplate>
[src]
fn set_element_flags(&self, flags: ElementFlags)
[src]
fn unset_element_flags(&self, flags: ElementFlags)
[src]
fn get_element_flags(&self) -> ElementFlags
[src]
fn message_full<T>(
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32
) where
T: MessageErrorDomain,
[src]
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32
) where
T: MessageErrorDomain,
fn message_full_with_details<T>(
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32,
structure: Structure
) where
T: MessageErrorDomain,
[src]
&self,
type_: ElementMessageType,
code: T,
message: Option<&str>,
debug: Option<&str>,
file: &str,
function: &str,
line: u32,
structure: Structure
) where
T: MessageErrorDomain,
fn post_error_message(&self, msg: &ErrorMessage)
[src]
fn iterate_pads(&self) -> Iterator<Pad>
[src]
fn iterate_sink_pads(&self) -> Iterator<Pad>
[src]
fn iterate_src_pads(&self) -> Iterator<Pad>
[src]
fn get_pads(&self) -> Vec<Pad>
[src]
fn get_sink_pads(&self) -> Vec<Pad>
[src]
fn get_src_pads(&self) -> Vec<Pad>
[src]
fn num_pads(&self) -> u16
[src]
fn num_sink_pads(&self) -> u16
[src]
fn num_src_pads(&self) -> u16
[src]
fn add_property_deep_notify_watch(
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
[src]
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
fn add_property_notify_watch(
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
[src]
&self,
property_name: Option<&str>,
include_value: bool
) -> NotifyWatchId
fn remove_property_notify_watch(&self, watch_id: NotifyWatchId)
[src]
fn query_convert<V, U>(&self, src_val: V) -> Option<U> where
U: SpecificFormattedValue,
V: Into<GenericFormattedValue>,
[src]
U: SpecificFormattedValue,
V: Into<GenericFormattedValue>,
fn query_convert_generic<V>(
&self,
src_val: V,
dest_format: Format
) -> Option<GenericFormattedValue> where
V: Into<GenericFormattedValue>,
[src]
&self,
src_val: V,
dest_format: Format
) -> Option<GenericFormattedValue> where
V: Into<GenericFormattedValue>,
fn query_duration<T>(&self) -> Option<T> where
T: SpecificFormattedValue,
[src]
T: SpecificFormattedValue,
fn query_duration_generic(
&self,
format: Format
) -> Option<GenericFormattedValue>
[src]
&self,
format: Format
) -> Option<GenericFormattedValue>
fn query_position<T>(&self) -> Option<T> where
T: SpecificFormattedValue,
[src]
T: SpecificFormattedValue,
fn query_position_generic(
&self,
format: Format
) -> Option<GenericFormattedValue>
[src]
&self,
format: Format
) -> Option<GenericFormattedValue>
fn seek<V>(
&self,
rate: f64,
flags: SeekFlags,
start_type: SeekType,
start: V,
stop_type: SeekType,
stop: V
) -> Result<(), BoolError> where
V: Into<GenericFormattedValue>,
[src]
&self,
rate: f64,
flags: SeekFlags,
start_type: SeekType,
start: V,
stop_type: SeekType,
stop: V
) -> Result<(), BoolError> where
V: Into<GenericFormattedValue>,
fn seek_simple<V>(
&self,
seek_flags: SeekFlags,
seek_pos: V
) -> Result<(), BoolError> where
V: Into<GenericFormattedValue>,
[src]
&self,
seek_flags: SeekFlags,
seek_pos: V
) -> Result<(), BoolError> where
V: Into<GenericFormattedValue>,
fn call_async<F>(&self, func: F) where
F: FnOnce(&O) + Send + 'static,
[src]
F: FnOnce(&O) + Send + 'static,
fn call_async_future<F, T>(
&self,
func: F
) -> Pin<Box<dyn Future<Output = T> + 'static + Send + Unpin>> where
F: FnOnce(&O) -> T + Send + 'static,
T: Send + 'static,
[src]
&self,
func: F
) -> Pin<Box<dyn Future<Output = T> + 'static + Send + Unpin>> where
F: FnOnce(&O) -> T + Send + 'static,
T: Send + 'static,
fn get_current_running_time(&self) -> ClockTime
[src]
fn get_current_clock_time(&self) -> ClockTime
[src]
impl<T> From<T> for T
[src]
impl<O> GObjectExtManualGst for O where
O: IsA<Object>,
[src]
O: IsA<Object>,
fn set_property_from_str(&self, name: &str, value: &str)
[src]
impl<O> GstObjectExt for O where
O: IsA<Object>,
[src]
O: IsA<Object>,
fn default_error(&self, error: &Error, debug: Option<&str>)
[src]
fn get_control_rate(&self) -> ClockTime
[src]
fn get_name(&self) -> GString
[src]
fn get_parent(&self) -> Option<Object>
[src]
fn get_path_string(&self) -> GString
[src]
fn has_active_control_bindings(&self) -> bool
[src]
fn has_ancestor<P>(&self, ancestor: &P) -> bool where
P: IsA<Object>,
[src]
P: IsA<Object>,
fn has_as_ancestor<P>(&self, ancestor: &P) -> bool where
P: IsA<Object>,
[src]
P: IsA<Object>,
fn has_as_parent<P>(&self, parent: &P) -> bool where
P: IsA<Object>,
[src]
P: IsA<Object>,
fn set_control_binding_disabled(&self, property_name: &str, disabled: bool)
[src]
fn set_control_bindings_disabled(&self, disabled: bool)
[src]
fn set_control_rate(&self, control_rate: ClockTime)
[src]
fn set_name(&self, name: &str) -> Result<(), BoolError>
[src]
fn set_parent<P>(&self, parent: &P) -> Result<(), BoolError> where
P: IsA<Object>,
[src]
P: IsA<Object>,
fn suggest_next_sync(&self) -> ClockTime
[src]
fn sync_values(&self, timestamp: ClockTime) -> Result<(), BoolError>
[src]
fn unparent(&self)
[src]
fn connect_property_name_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O),
[src]
F: 'static + Send + Sync + Fn(&O),
fn connect_property_parent_notify<F>(&self, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O),
[src]
F: 'static + Send + Sync + Fn(&O),
impl<O> GstObjectExtManual for O where
O: IsA<Object>,
[src]
O: IsA<Object>,
fn connect_deep_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&O, &Object, &ParamSpec),
[src]
F: 'static + Send + Sync + Fn(&O, &Object, &ParamSpec),
fn set_object_flags(&self, flags: ObjectFlags)
[src]
fn unset_object_flags(&self, flags: ObjectFlags)
[src]
fn get_object_flags(&self) -> ObjectFlags
[src]
impl<T, U> Into<U> for T where
U: From<T>,
[src]
U: From<T>,
impl<T> ObjectExt for T where
T: ObjectType,
[src]
T: ObjectType,
fn is<U>(&self) -> bool where
U: StaticType,
[src]
U: StaticType,
fn get_type(&self) -> Type
[src]
fn get_object_class(&self) -> &ObjectClass
[src]
fn set_property<'a, N>(
&self,
property_name: N,
value: &dyn ToValue
) -> Result<(), BoolError> where
N: Into<&'a str>,
[src]
&self,
property_name: N,
value: &dyn ToValue
) -> Result<(), BoolError> where
N: Into<&'a str>,
fn get_property<'a, N>(&self, property_name: N) -> Result<Value, BoolError> where
N: Into<&'a str>,
[src]
N: Into<&'a str>,
fn block_signal(&self, handler_id: &SignalHandlerId)
[src]
fn unblock_signal(&self, handler_id: &SignalHandlerId)
[src]
fn stop_signal_emission(&self, signal_name: &str)
[src]
fn disconnect(&self, handler_id: SignalHandlerId)
[src]
fn connect_notify<F>(&self, name: Option<&str>, f: F) -> SignalHandlerId where
F: 'static + Send + Sync + Fn(&T, &ParamSpec),
[src]
F: 'static + Send + Sync + Fn(&T, &ParamSpec),
unsafe fn connect_notify_unsafe<F>(
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
[src]
&self,
name: Option<&str>,
f: F
) -> SignalHandlerId where
F: Fn(&T, &ParamSpec),
fn notify<'a, N>(&self, property_name: N) where
N: Into<&'a str>,
[src]
N: Into<&'a str>,
fn notify_by_pspec(&self, pspec: &ParamSpec)
[src]
fn has_property<'a, N>(
&self,
property_name: N,
type_: Option<Type>
) -> Result<(), BoolError> where
N: Into<&'a str>,
[src]
&self,
property_name: N,
type_: Option<Type>
) -> Result<(), BoolError> where
N: Into<&'a str>,
fn get_property_type<'a, N>(&self, property_name: N) -> Option<Type> where
N: Into<&'a str>,
[src]
N: Into<&'a str>,
fn find_property<'a, N>(&self, property_name: N) -> Option<ParamSpec> where
N: Into<&'a str>,
[src]
N: Into<&'a str>,
fn list_properties(&self) -> Vec<ParamSpec>
[src]
fn connect<'a, N, F>(
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
N: Into<&'a str>,
[src]
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value> + Send + Sync + 'static,
N: Into<&'a str>,
fn connect_local<'a, N, F>(
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value> + 'static,
N: Into<&'a str>,
[src]
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value> + 'static,
N: Into<&'a str>,
unsafe fn connect_unsafe<'a, N, F>(
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
N: Into<&'a str>,
[src]
&self,
signal_name: N,
after: bool,
callback: F
) -> Result<SignalHandlerId, BoolError> where
F: Fn(&[Value]) -> Option<Value>,
N: Into<&'a str>,
fn emit<'a, N>(
&self,
signal_name: N,
args: &[&dyn ToValue]
) -> Result<Option<Value>, BoolError> where
N: Into<&'a str>,
[src]
&self,
signal_name: N,
args: &[&dyn ToValue]
) -> Result<Option<Value>, BoolError> where
N: Into<&'a str>,
fn downgrade(&self) -> WeakRef<T>
[src]
fn bind_property<'a, O, N, M>(
&'a self,
source_property: N,
target: &'a O,
target_property: M
) -> BindingBuilder<'a> where
M: Into<&'a str>,
N: Into<&'a str>,
O: ObjectType,
[src]
&'a self,
source_property: N,
target: &'a O,
target_property: M
) -> BindingBuilder<'a> where
M: Into<&'a str>,
N: Into<&'a str>,
O: ObjectType,
fn ref_count(&self) -> u32
[src]
impl<'a, T> ToGlibContainerFromSlice<'a, *const GList> for T where
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
[src]
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
type Storage = (Option<List>, Vec<Stash<'a, <T as GlibPtrDefault>::GlibType, T>>)
fn to_glib_none_from_slice(
t: &'a [T]
) -> (*const GList, <T as ToGlibContainerFromSlice<'a, *const GList>>::Storage)
[src]
t: &'a [T]
) -> (*const GList, <T as ToGlibContainerFromSlice<'a, *const GList>>::Storage)
fn to_glib_container_from_slice(
_t: &'a [T]
) -> (*const GList, <T as ToGlibContainerFromSlice<'a, *const GList>>::Storage)
[src]
_t: &'a [T]
) -> (*const GList, <T as ToGlibContainerFromSlice<'a, *const GList>>::Storage)
fn to_glib_full_from_slice(_t: &[T]) -> *const GList
[src]
impl<'a, T> ToGlibContainerFromSlice<'a, *const GPtrArray> for T where
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
[src]
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
type Storage = (Option<PtrArray>, Vec<Stash<'a, <T as GlibPtrDefault>::GlibType, T>>)
fn to_glib_none_from_slice(
t: &'a [T]
) -> (*const GPtrArray, <T as ToGlibContainerFromSlice<'a, *const GPtrArray>>::Storage)
[src]
t: &'a [T]
) -> (*const GPtrArray, <T as ToGlibContainerFromSlice<'a, *const GPtrArray>>::Storage)
fn to_glib_container_from_slice(
_t: &'a [T]
) -> (*const GPtrArray, <T as ToGlibContainerFromSlice<'a, *const GPtrArray>>::Storage)
[src]
_t: &'a [T]
) -> (*const GPtrArray, <T as ToGlibContainerFromSlice<'a, *const GPtrArray>>::Storage)
fn to_glib_full_from_slice(_t: &[T]) -> *const GPtrArray
[src]
impl<'a, T> ToGlibContainerFromSlice<'a, *mut GArray> for T where
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
[src]
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
type Storage = (Option<Array>, Vec<Stash<'a, <T as GlibPtrDefault>::GlibType, T>>)
fn to_glib_none_from_slice(
t: &'a [T]
) -> (*mut GArray, <T as ToGlibContainerFromSlice<'a, *mut GArray>>::Storage)
[src]
t: &'a [T]
) -> (*mut GArray, <T as ToGlibContainerFromSlice<'a, *mut GArray>>::Storage)
fn to_glib_container_from_slice(
t: &'a [T]
) -> (*mut GArray, <T as ToGlibContainerFromSlice<'a, *mut GArray>>::Storage)
[src]
t: &'a [T]
) -> (*mut GArray, <T as ToGlibContainerFromSlice<'a, *mut GArray>>::Storage)
fn to_glib_full_from_slice(t: &[T]) -> *mut GArray
[src]
impl<'a, T> ToGlibContainerFromSlice<'a, *mut GList> for T where
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
[src]
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
type Storage = (Option<List>, Vec<Stash<'a, <T as GlibPtrDefault>::GlibType, T>>)
fn to_glib_none_from_slice(
t: &'a [T]
) -> (*mut GList, <T as ToGlibContainerFromSlice<'a, *mut GList>>::Storage)
[src]
t: &'a [T]
) -> (*mut GList, <T as ToGlibContainerFromSlice<'a, *mut GList>>::Storage)
fn to_glib_container_from_slice(
t: &'a [T]
) -> (*mut GList, <T as ToGlibContainerFromSlice<'a, *mut GList>>::Storage)
[src]
t: &'a [T]
) -> (*mut GList, <T as ToGlibContainerFromSlice<'a, *mut GList>>::Storage)
fn to_glib_full_from_slice(t: &[T]) -> *mut GList
[src]
impl<'a, T> ToGlibContainerFromSlice<'a, *mut GPtrArray> for T where
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
[src]
T: GlibPtrDefault + ToGlibPtr<'a, <T as GlibPtrDefault>::GlibType>,
type Storage = (Option<PtrArray>, Vec<Stash<'a, <T as GlibPtrDefault>::GlibType, T>>)
fn to_glib_none_from_slice(
t: &'a [T]
) -> (*mut GPtrArray, <T as ToGlibContainerFromSlice<'a, *mut GPtrArray>>::Storage)
[src]
t: &'a [T]
) -> (*mut GPtrArray, <T as ToGlibContainerFromSlice<'a, *mut GPtrArray>>::Storage)
fn to_glib_container_from_slice(
t: &'a [T]
) -> (*mut GPtrArray, <T as ToGlibContainerFromSlice<'a, *mut GPtrArray>>::Storage)
[src]
t: &'a [T]
) -> (*mut GPtrArray, <T as ToGlibContainerFromSlice<'a, *mut GPtrArray>>::Storage)
fn to_glib_full_from_slice(t: &[T]) -> *mut GPtrArray
[src]
impl<T> ToOwned for T where
T: Clone,
[src]
T: Clone,
type Owned = T
The resulting type after obtaining ownership.
fn to_owned(&self) -> T
[src]
fn clone_into(&self, target: &mut T)
[src]
impl<T> ToSendValue for T where
T: ToValue + SetValue + Send + ?Sized,
[src]
T: ToValue + SetValue + Send + ?Sized,
fn to_send_value(&self) -> SendValue
[src]
impl<T> ToValue for T where
T: SetValue + ?Sized,
[src]
T: SetValue + ?Sized,
impl<T, U> TryFrom<U> for T where
U: Into<T>,
[src]
U: Into<T>,
type Error = Infallible
The type returned in the event of a conversion error.
fn try_from(value: U) -> Result<T, <T as TryFrom<U>>::Error>
[src]
impl<T, U> TryInto<U> for T where
U: TryFrom<T>,
[src]
U: TryFrom<T>,