pub trait MetaContainerExt: IsA<MetaContainer> + Sealed + 'static {
Show 41 methods
// Provided methods
fn add_metas_from_string(&self, str: &str) -> bool { ... }
fn check_meta_registered(&self, meta_item: &str) -> Option<(MetaFlag, Type)> { ... }
fn foreach<P: FnMut(&MetaContainer, &str, &Value)>(&self, func: P) { ... }
fn boolean(&self, meta_item: &str) -> Option<bool> { ... }
fn date(&self, meta_item: &str) -> Option<Date> { ... }
fn date_time(&self, meta_item: &str) -> Option<DateTime> { ... }
fn double(&self, meta_item: &str) -> Option<f64> { ... }
fn float(&self, meta_item: &str) -> Option<f32> { ... }
fn int(&self, meta_item: &str) -> Option<i32> { ... }
fn int64(&self, meta_item: &str) -> Option<i64> { ... }
fn marker_list(&self, key: &str) -> Option<MarkerList> { ... }
fn meta(&self, key: &str) -> Option<Value> { ... }
fn string(&self, meta_item: &str) -> Option<GString> { ... }
fn uint(&self, meta_item: &str) -> Option<u32> { ... }
fn uint64(&self, meta_item: &str) -> Option<u64> { ... }
fn metas_to_string(&self) -> GString { ... }
fn register_meta(
&self,
flags: MetaFlag,
meta_item: &str,
value: &Value,
) -> bool { ... }
fn register_meta_boolean(
&self,
flags: MetaFlag,
meta_item: &str,
value: bool,
) -> bool { ... }
fn register_meta_date(
&self,
flags: MetaFlag,
meta_item: &str,
value: &Date,
) -> bool { ... }
fn register_meta_date_time(
&self,
flags: MetaFlag,
meta_item: &str,
value: &DateTime,
) -> bool { ... }
fn register_meta_double(
&self,
flags: MetaFlag,
meta_item: &str,
value: f64,
) -> bool { ... }
fn register_meta_float(
&self,
flags: MetaFlag,
meta_item: &str,
value: f32,
) -> bool { ... }
fn register_meta_int(
&self,
flags: MetaFlag,
meta_item: &str,
value: i32,
) -> bool { ... }
fn register_meta_int64(
&self,
flags: MetaFlag,
meta_item: &str,
value: i64,
) -> bool { ... }
fn register_meta_string(
&self,
flags: MetaFlag,
meta_item: &str,
value: &str,
) -> bool { ... }
fn register_meta_uint(
&self,
flags: MetaFlag,
meta_item: &str,
value: u32,
) -> bool { ... }
fn register_meta_uint64(
&self,
flags: MetaFlag,
meta_item: &str,
value: u64,
) -> bool { ... }
fn register_static_meta(
&self,
flags: MetaFlag,
meta_item: &str,
type_: Type,
) -> bool { ... }
fn set_boolean(&self, meta_item: &str, value: bool) -> bool { ... }
fn set_date(&self, meta_item: &str, value: &Date) -> bool { ... }
fn set_date_time(&self, meta_item: &str, value: &DateTime) -> bool { ... }
fn set_double(&self, meta_item: &str, value: f64) -> bool { ... }
fn set_float(&self, meta_item: &str, value: f32) -> bool { ... }
fn set_int(&self, meta_item: &str, value: i32) -> bool { ... }
fn set_int64(&self, meta_item: &str, value: i64) -> bool { ... }
fn set_marker_list(&self, meta_item: &str, list: &MarkerList) -> bool { ... }
fn set_meta(&self, meta_item: &str, value: Option<&Value>) -> bool { ... }
fn set_string(&self, meta_item: &str, value: &str) -> bool { ... }
fn set_uint(&self, meta_item: &str, value: u32) -> bool { ... }
fn set_uint64(&self, meta_item: &str, value: u64) -> bool { ... }
fn connect_notify_meta<F: Fn(&Self, &str, Option<&Value>) + 'static>(
&self,
detail: Option<&str>,
f: F,
) -> SignalHandlerId { ... }
}
Expand description
Trait containing all MetaContainer
methods.
§Implementors
Asset
, AudioSource
, AudioTestSource
, AudioTrack
, AudioTransition
, AudioUriSource
, BaseEffectClip
, BaseEffect
, BaseTransitionClip
, ClipAsset
, Clip
, Container
, EffectAsset
, EffectClip
, Effect
, Group
, ImageSource
, Layer
, Marker
, MetaContainer
, MultiFileSource
, OperationClip
, Operation
, OverlayClip
, Project
, SourceClipAsset
, SourceClip
, Source
, TestClip
, TextOverlayClip
, TextOverlay
, TimelineElement
, Timeline
, TitleClip
, TitleSource
, TrackElementAsset
, TrackElement
, Track
, TransitionClip
, Transition
, UriClipAsset
, UriClip
, UriSourceAsset
, VideoSource
, VideoTestSource
, VideoTrack
, VideoTransition
, VideoUriSource
Provided Methods§
sourcefn add_metas_from_string(&self, str: &str) -> bool
fn add_metas_from_string(&self, str: &str) -> bool
Deserializes the given string, and adds and sets the found fields and
their values on the container. The string should be the return of
metas_to_string()
.
§str
A string to deserialize and add to self
§Returns
true
if the fields in str
was successfully deserialized
and added to self
.
sourcefn check_meta_registered(&self, meta_item: &str) -> Option<(MetaFlag, Type)>
fn check_meta_registered(&self, meta_item: &str) -> Option<(MetaFlag, Type)>
Checks whether the specified field has been registered as static, and
gets the registered type and flags of the field, as used in
register_meta()
and
register_static_meta()
.
§meta_item
The key for the self
field to check
§Returns
true
if the meta_item
field has been registered on
self
.
§flags
A destination to get the registered flags of
the field, or None
to ignore
§type_
A destination to get the registered type of
the field, or None
to ignore
sourcefn foreach<P: FnMut(&MetaContainer, &str, &Value)>(&self, func: P)
fn foreach<P: FnMut(&MetaContainer, &str, &Value)>(&self, func: P)
Calls the given function on each of the meta container’s set metadata fields.
§func
A function to call on each of self
’s set
metadata fields
sourcefn boolean(&self, meta_item: &str) -> Option<bool>
fn boolean(&self, meta_item: &str) -> Option<bool>
Gets the current boolean value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the boolean value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn date(&self, meta_item: &str) -> Option<Date>
fn date(&self, meta_item: &str) -> Option<Date>
Gets the current date value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the date value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn date_time(&self, meta_item: &str) -> Option<DateTime>
fn date_time(&self, meta_item: &str) -> Option<DateTime>
Gets the current date time value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the date time value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn double(&self, meta_item: &str) -> Option<f64>
fn double(&self, meta_item: &str) -> Option<f64>
Gets the current double value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the double value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn float(&self, meta_item: &str) -> Option<f32>
fn float(&self, meta_item: &str) -> Option<f32>
Gets the current float value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the float value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn int(&self, meta_item: &str) -> Option<i32>
fn int(&self, meta_item: &str) -> Option<i32>
Gets the current int value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the int value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn int64(&self, meta_item: &str) -> Option<i64>
fn int64(&self, meta_item: &str) -> Option<i64>
Gets the current int64 value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the int64 value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn marker_list(&self, key: &str) -> Option<MarkerList>
fn marker_list(&self, key: &str) -> Option<MarkerList>
sourcefn uint(&self, meta_item: &str) -> Option<u32>
fn uint(&self, meta_item: &str) -> Option<u32>
Gets the current uint value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the uint value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn uint64(&self, meta_item: &str) -> Option<u64>
fn uint64(&self, meta_item: &str) -> Option<u64>
Gets the current uint64 value of the specified field of the meta container. If the field does not have a set value, or it is of the wrong type, the method will fail.
§meta_item
The key for the self
field to get
§Returns
true
if the uint64 value under meta_item
was copied
to dest
.
§dest
Destination into which the value under meta_item
should be copied.
sourcefn metas_to_string(&self) -> GString
fn metas_to_string(&self) -> GString
sourcefn register_meta(&self, flags: MetaFlag, meta_item: &str, value: &Value) -> bool
fn register_meta(&self, flags: MetaFlag, meta_item: &str, value: &Value) -> bool
Sets the value of the specified field of the meta container to the
given value, and registers the field to only hold a value of the
same type. After calling this, only values of the same type as value
can be set for this field. The given flags can be set to make this
field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold value
types, with the given flags
, and the
field was successfully set to value
.
sourcefn register_meta_boolean(
&self,
flags: MetaFlag,
meta_item: &str,
value: bool,
) -> bool
fn register_meta_boolean( &self, flags: MetaFlag, meta_item: &str, value: bool, ) -> bool
Sets the value of the specified field of the meta container to the given boolean value, and registers the field to only hold a boolean typed value. After calling this, only boolean values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold boolean typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_date(
&self,
flags: MetaFlag,
meta_item: &str,
value: &Date,
) -> bool
fn register_meta_date( &self, flags: MetaFlag, meta_item: &str, value: &Date, ) -> bool
Sets the value of the specified field of the meta container to the given date value, and registers the field to only hold a date typed value. After calling this, only date values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold date typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_date_time(
&self,
flags: MetaFlag,
meta_item: &str,
value: &DateTime,
) -> bool
fn register_meta_date_time( &self, flags: MetaFlag, meta_item: &str, value: &DateTime, ) -> bool
Sets the value of the specified field of the meta container to the given date time value, and registers the field to only hold a date time typed value. After calling this, only date time values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold date time typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_double(
&self,
flags: MetaFlag,
meta_item: &str,
value: f64,
) -> bool
fn register_meta_double( &self, flags: MetaFlag, meta_item: &str, value: f64, ) -> bool
Sets the value of the specified field of the meta container to the given double value, and registers the field to only hold a double typed value. After calling this, only double values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold double typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_float(
&self,
flags: MetaFlag,
meta_item: &str,
value: f32,
) -> bool
fn register_meta_float( &self, flags: MetaFlag, meta_item: &str, value: f32, ) -> bool
Sets the value of the specified field of the meta container to the given float value, and registers the field to only hold a float typed value. After calling this, only float values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold float typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_int(
&self,
flags: MetaFlag,
meta_item: &str,
value: i32,
) -> bool
fn register_meta_int( &self, flags: MetaFlag, meta_item: &str, value: i32, ) -> bool
Sets the value of the specified field of the meta container to the given int value, and registers the field to only hold an int typed value. After calling this, only int values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold int typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_int64(
&self,
flags: MetaFlag,
meta_item: &str,
value: i64,
) -> bool
fn register_meta_int64( &self, flags: MetaFlag, meta_item: &str, value: i64, ) -> bool
Sets the value of the specified field of the meta container to the given int64 value, and registers the field to only hold an int64 typed value. After calling this, only int64 values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold int64 typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_string(
&self,
flags: MetaFlag,
meta_item: &str,
value: &str,
) -> bool
fn register_meta_string( &self, flags: MetaFlag, meta_item: &str, value: &str, ) -> bool
Sets the value of the specified field of the meta container to the given string value, and registers the field to only hold a string typed value. After calling this, only string values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold string typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_uint(
&self,
flags: MetaFlag,
meta_item: &str,
value: u32,
) -> bool
fn register_meta_uint( &self, flags: MetaFlag, meta_item: &str, value: u32, ) -> bool
Sets the value of the specified field of the meta container to the given uint value, and registers the field to only hold a uint typed value. After calling this, only uint values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold uint typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_meta_uint64(
&self,
flags: MetaFlag,
meta_item: &str,
value: u64,
) -> bool
fn register_meta_uint64( &self, flags: MetaFlag, meta_item: &str, value: u64, ) -> bool
Sets the value of the specified field of the meta container to the given uint64 value, and registers the field to only hold a uint64 typed value. After calling this, only uint64 values can be set for this field. The given flags can be set to make this field only readable after calling this method.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§value
The value to set for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold uint64 typed values, with the given flags
,
and the field was successfully set to value
.
sourcefn register_static_meta(
&self,
flags: MetaFlag,
meta_item: &str,
type_: Type,
) -> bool
fn register_static_meta( &self, flags: MetaFlag, meta_item: &str, type_: Type, ) -> bool
Registers a static metadata field on the container to only hold the specified type. After calling this, setting a value under this field can only succeed if its type matches the registered type of the field.
Unlike register_meta()
, no (initial) value is set
for this field, which means you can use this method to reserve the
space to be optionally set later.
Note that if a value has already been set for the field being
registered, then its type must match the registering type, and its
value will be left in place. If the field has no set value, then
you will likely want to include MetaFlag::WRITABLE
in flags
to allow
the value to be set later.
§flags
Flags to be used for the registered field
§meta_item
The key for the self
field to register
§type_
The required value type for the registered field
§Returns
true
if the meta_item
field was successfully registered on
self
to only hold type_
values, with the given flags
.
sourcefn set_boolean(&self, meta_item: &str, value: bool) -> bool
fn set_boolean(&self, meta_item: &str, value: bool) -> bool
sourcefn set_date_time(&self, meta_item: &str, value: &DateTime) -> bool
fn set_date_time(&self, meta_item: &str, value: &DateTime) -> bool
sourcefn set_double(&self, meta_item: &str, value: f64) -> bool
fn set_double(&self, meta_item: &str, value: f64) -> bool
sourcefn set_marker_list(&self, meta_item: &str, list: &MarkerList) -> bool
fn set_marker_list(&self, meta_item: &str, list: &MarkerList) -> bool
sourcefn set_meta(&self, meta_item: &str, value: Option<&Value>) -> bool
fn set_meta(&self, meta_item: &str, value: Option<&Value>) -> bool
Sets the value of the specified field of the meta container to a
copy of the given value. If the given value
is None
, the field
given by meta_item
is removed and true
is returned.
§meta_item
The key for the self
field to set
§value
The value to set under meta_item
, or None
to
remove the corresponding field
§Returns
true
if value
was set under meta_item
for self
.