gstreamer-rs/gstreamer/Gir.toml
Marijn Suijten 1e58dd553c treewide: Add missing external external types to manual list
Gir now uses analyzed objects to generate documentation, and to know
exactly what is available.  Additionally, this allows more bindings to
be generated.
2021-06-01 13:40:52 +00:00

1791 lines
38 KiB
TOML

[options]
girs_directories = ["../gir-files", "../gst-gir-files"]
library = "Gst"
version = "1.0"
min_cfg_version = "1.8"
work_mode = "normal"
concurrency = "send+sync"
generate_safety_asserts = true
single_version_file = true
generate_display_trait = false
trust_return_value_nullability = true
external_libraries = [
"GLib",
"GObject",
]
generate = [
"Gst.BufferingMode",
"Gst.BusSyncReply",
"Gst.CapsIntersectMode",
"Gst.ClockEntryType",
"Gst.ClockTimeDiff",
"Gst.CoreError",
"Gst.DebugColorFlags",
"Gst.DebugGraphDetails",
"Gst.DebugLevel",
"Gst.EventTypeFlags",
"Gst.LibraryError",
"Gst.PadDirection",
"Gst.PadMode",
"Gst.PadPresence",
"Gst.PadProbeReturn",
"Gst.ParseError",
"Gst.PluginAPIFlags",
"Gst.PluginError",
"Gst.PluginFlags",
"Gst.ProgressType",
"Gst.PromiseResult",
"Gst.QOSType",
"Gst.ResourceError",
"Gst.SchedulingFlags",
"Gst.SeekType",
"Gst.State",
"Gst.StreamError",
"Gst.StreamStatusType",
"Gst.StreamType",
"Gst.StructureChangeType",
"Gst.SystemClock",
"Gst.TagFlag",
"Gst.TagMergeMode",
"Gst.TaskState",
"Gst.TocSetter",
"Gst.URIError",
"Gst.URIHandler",
"Gst.URIType",
]
manual = [
"GLib.DateTime",
"GLib.Error",
"GLib.MainContext",
"GLib.Quark",
"GLib.Source",
"GLib.Type",
"GObject.Object",
"GObject.Value",
"Gst.AllocationParams",
"Gst.Memory",
"Gst.Segment",
"Gst.StaticCaps",
"Gst.StaticPadTemplate",
]
[[object]]
name = "Gst.Allocator"
status = "generate"
[[object.function]]
name = "alloc"
[object.function.return]
nullable_return_is_error = "Failed to allocate memory"
[[object.function.parameter]]
name = "params"
const = true
[[object]]
name = "Gst.Bin"
status = "generate"
trait_name = "GstBinExt"
[[object.signal]]
name = "do-latency"
# Use Result<(), glib::BoolError>
manual = true
[[object.function]]
name = "add"
[object.function.return]
bool_return_is_error = "Failed to add element"
[[object.function]]
name = "remove"
[object.function.return]
bool_return_is_error = "Failed to remove element"
[[object.function]]
name = "recalculate_latency"
[object.function.return]
bool_return_is_error = "Failed to recalculate latency"
[[object.function]]
name = "sync_children_states"
[object.function.return]
bool_return_is_error = "Failed to sync children states"
[[object]]
name = "Gst.BinFlags"
status = "generate"
[[object.member]]
name = "last"
ignore = true
[[object.member]]
name = "streams_aware"
version = "1.10"
[[object]]
name = "Gst.Bus"
status = "generate"
final_type = true
[[object.function]]
name = "set_sync_handler"
# Into<Option<_>> makes this hard to use
manual = true
[[object.function]]
name = "add_signal_watch_full"
# Priority
manual = true
[[object.function]]
name = "timed_pop_filtered"
# Uses enum as flags
manual = true
[[object.function]]
name = "pop_filtered"
# Uses enum as flags
manual = true
[[object.function]]
name = "poll"
# Uses enum as flags
manual = true
[[object.function]]
name = "create_watch"
# More convenient manual implementation
manual = true
[[object.function]]
name = "add_watch"
# More specific trait bounds possible for the closure
manual = true
[[object.function]]
name = "add_watch_full"
# More specific trait bounds possible for the closure
manual = true
[[object.function]]
name = "remove_watch"
[object.function.return]
bool_return_is_error = "Bus has no event source"
[[object.signal]]
name = "message"
concurrency = "send"
[[object.function]]
name = "post"
[object.function.return]
bool_return_is_error = "Failed to post message"
[[object]]
name = "Gst.BufferFlags"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.member]]
name = "non_droppable"
version = "1.14"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.BufferCopyFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.BufferPoolAcquireFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.ChildProxy"
status = "generate"
manual_traits = ["ChildProxyExtManual"]
[[object.function]]
name = "get_property"
manual = true
[[object.function]]
name = "set_property"
manual = true
[[object]]
name = "Gst.ClockTime"
status = "manual"
conversion_type = "scalar"
[[object]]
name = "Gst.ClockFlags"
status = "generate"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.ElementFactoryListType"
status = "manual"
conversion_type = "scalar"
[[object]]
name = "Gst.Format"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.derive]]
name = "Debug, PartialEq, Eq, PartialOrd, Ord, Hash"
[[object.function]]
name = "register"
# Needs manual work
ignore = true
[[object]]
name = "Gst.SeekFlags"
status = "generate"
[[object.member]]
name = "trickmode_forward_predicted"
version = "1.18"
[[object.member]]
name = "instant_rate_change"
version = "1.18"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.SegmentFlags"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.member]]
name = "trickmode_forward_predicted"
version = "1.18"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.StackTraceFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.StreamFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.TagSetter"
status = "generate"
manual_traits = ["TagSetterExtManual"]
[[object.function]]
name = "add_tag_value"
manual = true
[[object]]
name = "Gst.TocScope"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.derive]]
name = "Debug, PartialEq, Eq, PartialOrd, Ord, Hash"
[[object]]
name = "Gst.TocEntryType"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.derive]]
name = "Debug, PartialEq, Eq, PartialOrd, Ord, Hash"
[[object]]
name = "Gst.TocLoopType"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.derive]]
name = "Debug, PartialEq, Eq, PartialOrd, Ord, Hash"
[[object]]
name = "Gst.Rank"
status = "generate"
[[object.derive]]
name = "Debug"
[[object]]
name = "Gst.TypeFindProbability"
status = "generate"
[[object.derive]]
name = "Debug"
[[object]]
name = "Gst.EventType"
status = "generate"
[[object.derive]]
name = "Debug, PartialEq, Eq, Hash"
[[object.member]]
name = "select_streams"
version = "1.10"
[[object.member]]
name = "stream_selection"
version = "1.10"
[[object.member]]
name = "stream_group_done"
version = "1.10"
[[object.member]]
name = "instant_rate_change"
version = "1.18"
[[object.member]]
name = "instant_rate_sync_time"
version = "1.18"
[[object]]
name = "Gst.Structure"
status = "manual"
ref_mode = "ref-mut"
[[object]]
name = "Gst.ParseContext"
status = "manual"
ref_mode = "ref-mut"
[[object]]
name = "Gst.ParseFlags"
status = "generate"
[[object.member]]
name = "place_in_bin"
version = "1.10"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.PipelineFlags"
status = "generate"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.PluginDependencyFlags"
status = "generate"
[[object.member]]
name = "none"
ignore = true
[[object]]
name = "Gst.Caps"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Buffer"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.BufferList"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Sample"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Message"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Event"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.TagList"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.TagScope"
status = "generate"
[[object.derive]]
name = "serde::Serialize, serde::Deserialize"
cfg_condition = "feature = \"ser_de\""
[[object.derive]]
name = "Debug, PartialEq, Eq, PartialOrd, Ord, Hash"
[[object]]
name = "Gst.Query"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Context"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Toc"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.TocEntry"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Pipeline"
status = "generate"
[[object]]
name = "Gst.Promise"
status = "manual"
ref_mode = "ref"
[[object]]
name = "Gst.Clock"
status = "generate"
manual_traits = ["ClockExtManual"]
[[object.function]]
name = "set_master"
[object.function.return]
bool_return_is_error = "Failed to set master clock"
[[object.function]]
name = "wait_for_sync"
[object.function.return]
bool_return_is_error = "Timed out waiting for sync"
[[object.function]]
name = "adjust_with_calibration"
# Useless clock parameter
ignore = true
[[object.function]]
name = "unadjust_with_calibration"
# Useless clock parameter
ignore = true
[[object]]
name = "Gst.ClockType"
status = "generate"
[[object.member]]
name = "tai"
version = "1.18"
[[object]]
name = "Gst.ElementFlags"
status = "generate"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.MemoryFlags"
status = "generate"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.Element"
status = "generate"
manual_traits = ["ElementExtManual"]
[[object.function]]
name = "call_async"
# more specific closure type possible
manual = true
[[object.function]]
name = "get_current_running_time"
# manual implementation also works for earlier versions
manual = true
[[object.function]]
name = "get_current_clock_time"
# manual implementation also works for earlier versions
manual = true
[[object.function]]
name = "get_request_pad"
# rename to more explicite name and avoid conflict with `request_pad`
rename = "request_pad_simple"
[[object.function]]
name = "post_message"
# takes ownership of message
manual = true
[[object.function]]
name = "add_pad"
[object.function.return]
bool_return_is_error = "Failed to add pad"
[[object.function]]
name = "remove_pad"
[object.function.return]
bool_return_is_error = "Failed to remove pad"
[[object.function]]
name = "link"
[object.function.return]
bool_return_is_error = "Failed to link elements"
[[object.function]]
name = "link_filtered"
[[object.function.parameter]]
name = "filter"
# Can use `link` instead
nullable = false
[object.function.return]
bool_return_is_error = "Failed to link elements"
[[object.function]]
name = "link_pads"
[object.function.return]
bool_return_is_error = "Failed to link pads"
[[object.function]]
name = "link_pads_filtered"
[[object.function.parameter]]
name = "filter"
# Can use `link` instead
nullable = false
[object.function.return]
bool_return_is_error = "Failed to link pads"
[[object.function]]
name = "link_pads_full"
[object.function.return]
bool_return_is_error = "Failed to link pads"
[[object.function]]
name = "set_clock"
[object.function.return]
bool_return_is_error = "Failed to set clock"
[[object.function]]
name = "sync_state_with_parent"
[object.function.return]
bool_return_is_error = "Failed to sync state with parent"
[[object.function]]
name = "query"
# correct mutability
manual = true
[[object.function]]
name = "send_event"
# Pass by value
manual = true
[[object.function]]
name = "get_context_unlocked"
# Unsafe
ignore = true
[[object.function]]
name = "add_property_deep_notify_watch"
# ulong
manual = true
[[object.function]]
name = "add_property_notify_watch"
# ulong
manual = true
[[object.function]]
name = "remove_property_notify_watch"
# ulong
manual = true
[[object.function]]
name = "query_duration"
# formatted value
manual = true
[[object.function]]
name = "query_position"
# formatted value
manual = true
[[object.function]]
name = "query_convert"
# formatted value
manual = true
[[object.function]]
name = "seek"
# formatted value
manual = true
[[object.function]]
name = "seek_simple"
# formatted value
manual = true
[[object.function]]
name = "state_change_return_get_name"
# Wrong place
ignore = true
[[object.function]]
name = "state_get_name"
# Wrong place
ignore = true
[[object.function]]
name = "get_metadata"
# better manual function
manual = true
[[object.function]]
name = "get_pad_template"
# better manual function
manual = true
[[object.function]]
name = "get_pad_template_list"
# better manual function
manual = true
[[object.function]]
name = "register"
manual = true
[[object]]
name = "Gst.ElementFactory"
status = "generate"
final_type = true
[[object.function]]
name = "create"
[object.function.return]
nullable_return_is_error = "Failed to create element from factory"
[[object.function]]
name = "make"
[object.function.return]
nullable_return_is_error = "Failed to create element from factory name"
[[object]]
name = "Gst.TypeFindFactory"
status = "generate"
final_type = true
[[object]]
name = "Gst.DeviceProviderFactory"
status = "generate"
final_type = true
[[object]]
name = "Gst.DeviceProvider"
status = "generate"
manual_traits = ["DeviceProviderExtManual"]
[[object.function]]
name = "start"
[object.function.return]
bool_return_is_error = "Failed to start"
[[object.function]]
name = "register"
manual = true
[[object.function]]
name = "get_metadata"
# better manual function
manual = true
[[object]]
name = "Gst.DeviceMonitor"
status = "generate"
manual_traits = ["DeviceMonitorExtManual"]
[[object.function]]
name = "new"
# Work-around for 1.14 switch from transfer-floating to transfer-full
manual = true
[[object.function]]
name = "add_filter"
# Return Option<DeviceMonitorFilterId>
manual = true
[[object.function]]
name = "start"
[object.function.return]
bool_return_is_error = "Failed to start"
[[object.function]]
name = "remove_filter"
# Use DeviceMonitorFilterId and return Result<(), glib::BoolError>
manual = true
[[object]]
name = "Gst.Device"
status = "generate"
[[object.function]]
name = "reconfigure_element"
[object.function.return]
bool_return_is_error = "Failed to reconfigure the element to use this device"
[[object.function]]
name = "create_element"
[object.function.return]
nullable_return_is_error = "Failed to create element for device"
[[object]]
name = "Gst.Object"
# For renaming the trait...
status = "generate"
trait_name = "GstObjectExt"
[[object.function]]
name = "set_name"
# Don't allow changing the name at random times
ignore = true
[[object.property]]
name = "name"
# There are accessor functions for this
ignore = true
[[object.function]]
name = "get_name"
[object.function.return]
# Nullable state only occurs during instance init and finalize
# which cannot be observed from Rust
nullable = false
[[object.function]]
name = "set_parent"
[object.function.return]
bool_return_is_error = "Failed to set parent object"
[[object.function]]
name = "sync_values"
[object.function.return]
bool_return_is_error = "Failed to sync values"
[[object.function]]
name = "get_g_value_array"
ignore = true
[[object.function]]
name = "add_control_binding"
[object.function.return]
bool_return_is_error = "Failed to add control binding"
[[object]]
name = "Gst.ObjectFlags"
status = "generate"
[[object.member]]
name = "may_be_leaked"
version = "1.10"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.PadFlags"
status = "generate"
[[object.member]]
name = "last"
ignore = true
[[object]]
name = "Gst.PadLinkCheck"
status = "generate"
[[object.member]]
name = "nothing"
ignore = true
[[object]]
name = "Gst.PadProbeType"
status = "generate"
[[object.member]]
name = "invalid"
ignore = true
[[object]]
name = "Gst.Pad"
status = "generate"
manual_traits = ["PadExtManual"]
[[object.function]]
name = "link_maybe_ghosting"
[object.function.return]
bool_return_is_error = "Failed to link pads, possibly ghosting"
[[object.function]]
name = "link_maybe_ghosting_full"
[object.function.return]
bool_return_is_error = "Failed to link pads, possibly ghosting"
[[object.function]]
name = "unlink"
[object.function.return]
bool_return_is_error = "Failed to unlink pad"
[[object.function]]
name = "pause_task"
[object.function.return]
bool_return_is_error = "Failed to pause pad task"
[[object.function]]
name = "stop_task"
[object.function.return]
bool_return_is_error = "Failed to stop pad task"
[[object.function]]
name = "set_active"
[object.function.return]
bool_return_is_error = "Failed to activate pad"
[[object.function]]
name = "activate_mode"
[object.function.return]
bool_return_is_error = "Failed to activate mode pad"
[[object.function]]
name = "remove_probe"
# Don't use a ulong
manual = true
[[object.function]]
name = "chain"
# Move buffer
manual = true
[[object.function]]
name = "push"
# Move buffer
manual = true
[[object.function]]
name = "chain_list"
# Move buffer
manual = true
[[object.function]]
name = "push_list"
# Move buffer
manual = true
[[object.function]]
name = "pull_range"
# Buffer can be NULL
manual = true
[[object.function]]
name = "get_range"
# Buffer can be NULL
manual = true
[[object.function]]
name = "get_last_flow_return"
# Use Result<FlowSuccess, FlowError>
rename = "last_flow_result"
[[object.function]]
name = "query"
# Correct mutability
manual = true
[[object.function]]
name = "peer_query"
# Correct mutability
manual = true
[[object.function]]
name = "query_default"
# Correct mutability
manual = true
[[object.function]]
name = "proxy_query_caps"
# Correct mutability
manual = true
[[object.function]]
name = "proxy_query_accept_caps"
# Correct mutability
manual = true
[[object.function]]
name = "event_default"
# Pass by value
manual = true
[[object.function]]
name = "push_event"
# Pass by value
manual = true
[[object.function]]
name = "send_event"
# Pass by value
manual = true
[[object.function]]
name = "new"
# Builder
manual = true
[[object.function]]
name = "new_from_template"
# Builder
manual = true
[[object.function]]
name = "new_from_static_template"
# Builder
manual = true
[[object.function]]
name = "query_duration"
# formatted value
manual = true
[[object.function]]
name = "query_position"
# formatted value
manual = true
[[object.function]]
name = "query_convert"
# formatted value
manual = true
[[object.function]]
name = "peer_query_duration"
# formatted value
manual = true
[[object.function]]
name = "peer_query_position"
# formatted value
manual = true
[[object.function]]
name = "peer_query_convert"
# formatted value
manual = true
[[object.function]]
name = "link_get_name"
# Wrong place
manual = true
[[object.function]]
pattern = "set_.*_function_full"
# More specific closure trait bounds possible
manual = true
[[object.function]]
name = "start_task"
# More specific closure trait bounds possible
manual = true
[[object.function]]
name = "sticky_events_foreach"
# Complex closure argument handling
manual = true
[[object.function]]
name = "add_probe"
# Complex closure argument handling
manual = true
[[object.property]]
name = "template"
# Has a proper getter
ignore = true
[[object]]
name = "Gst.PadTemplate"
status = "generate"
final_type = true
[[object.function]]
name = "new"
[object.function.return]
nullable_return_is_error = "Failed to create pad template"
[[object.function]]
name = "new_with_gtype"
[object.function.return]
nullable_return_is_error = "Failed to create pad template"
[[object.function]]
name = "new_from_static_pad_template_with_gtype"
# static pad template manual
manual = true
[[object]]
name = "Gst.GhostPad"
status = "generate"
[[object.function]]
name = "set_target"
[object.function.return]
bool_return_is_error = "Failed to set target"
[[object.function]]
name = "new"
manual = true
[[object.function]]
name = "new_from_template"
manual = true
[[object.function]]
name = "new_no_target"
manual = true
[[object.function]]
name = "new_no_target_from_template"
manual = true
[[object.function]]
name = "construct"
ignore = true
[[object.function]]
name = "activate_mode_default"
# wrong instance type
manual = true
[[object.function]]
name = "internal_activate_mode_default"
# wrong instance type
manual = true
[[object]]
name = "Gst.ProxyPad"
status = "generate"
manual_traits = ["ProxyPadExtManual"]
[[object.function]]
name = "chain_default"
# Buffer move
manual = true
[[object.function]]
name = "chain_list_default"
# Buffer move
manual = true
[[object.function]]
name = "getrange_default"
# Buffer move
manual = true
[[object]]
name = "Gst.Stream"
status = "generate"
final_type = true
[[object.function]]
name = "new"
# Work-around for 1.14 switch from transfer-floating to transfer-full
manual = true
[[object.property]]
name = "caps"
version = "1.10"
[[object.property]]
name = "stream-flags"
version = "1.10"
[[object.property]]
name = "stream-id"
version = "1.10"
[[object.property]]
name = "stream-type"
version = "1.10"
[[object.property]]
name = "tags"
version = "1.10"
[[object]]
name = "Gst.StreamCollection"
status = "generate"
final_type = true
[[object.function]]
name = "new"
# Work-around for 1.14 switch from transfer-floating to transfer-full
manual = true
[[object.function]]
name = "add_stream"
# Ignore return value which is always `true`
manual = true
[[object.property]]
name = "upstream-id"
version = "1.10"
generate = ["get"]
[[object]]
name = "Gst.Plugin"
status = "generate"
final_type = true
[[object.function]]
pattern = "register_static.*"
# Needs manual implementation
ignore = true
[[object.function]]
name = "list_free"
# useless and unsafe
ignore = true
[[object.function]]
name = "set_cache_data"
# pass by value
manual = true
[[object.function]]
name = "get_cache_data"
# structure ref
manual = true
[[object.function]]
name = "load"
[object.function.return]
nullable_return_is_error = "Failed to load plugin"
[[object.function]]
name = "load_by_name"
[object.function.return]
nullable_return_is_error = "Failed to load plugin"
[[object]]
name = "Gst.PluginFeature"
status = "generate"
manual_traits = ["PluginFeatureExtManual"]
[[object.function]]
pattern = "list_.*"
ignore = true
[[object.function]]
name = "rank_compare_func"
ignore = true
[[object.function]]
name = "get_rank"
manual = true
[[object.function]]
name = "set_rank"
manual = true
[[object.function]]
name = "load"
manual = true
[[object]]
name = "Gst.Registry"
status = "generate"
final_type = true
[[object.function]]
pattern = "fork_.*"
ignore = true
[[object.function]]
name = "add_feature"
[object.function.return]
bool_return_is_error = "Failed to add feature"
[[object.function]]
name = "add_plugin"
[object.function.return]
bool_return_is_error = "Failed to add plugin"
[[object]]
name = "Gst.BufferPool"
status = "generate"
manual_traits = ["BufferPoolExtManual"]
[[object.function]]
pattern = "config_.*"
# A different type
ignore = true
[[object.function]]
name = "get_config"
# A different type
manual = true
[[object.function]]
name = "set_config"
# Takes ownership
manual = true
[[object.function]]
name = "acquire_buffer"
# Params and return value
manual = true
[[object.function]]
name = "release_buffer"
# Takes ownership
manual = true
[[object.function]]
name = "new"
# Work-around for 1.14 switch from transfer-floating to transfer-full
manual = true
[[object.function]]
name = "set_active"
[object.function.return]
bool_return_is_error = "Failed to activate buffer pool"
[[object]]
name = "Gst.Preset"
status = "generate"
[[object.function]]
name = "set_app_dir"
[object.function.return]
bool_return_is_error = "Failed to set app preset directory"
[[object.function]]
name = "delete_preset"
[object.function.return]
bool_return_is_error = "Failed to delete preset"
[[object.function]]
name = "load_preset"
[object.function.return]
bool_return_is_error = "Failed to load preset"
[[object.function]]
name = "save_preset"
[object.function.return]
bool_return_is_error = "Failed to save preset"
[[object.function]]
name = "rename_preset"
[object.function.return]
bool_return_is_error = "Failed to rename preset"
[[object.function]]
name = "set_meta"
[object.function.return]
bool_return_is_error = "Failed to set preset meta"
[[object]]
name = "Gst.*"
status = "generate"
# We'll opt-in for constants at a later time
[[object.constant]]
pattern = ".+"
ignore = true
[[object.function]]
name = "util_dump_mem"
ignore = true
[[object.function]]
name = "util_dump_buffer"
# We have our Debug impl on buffers
ignore = true
[[object.function]]
name = "protection_select_system"
# unsupported array type
ignore = true
[[object.function]]
name = "calculate_linear_regression"
ignore = true
[[object.function]]
pattern = "value_.*"
ignore = true
[[object.function]]
pattern = ".*_get_type"
ignore = true
[[object.function]]
pattern = "tag_.*"
ignore = true
[[object.function]]
pattern = "segtrap_.*"
ignore = true
[[object.function]]
pattern = "util_[g]?double_.*"
ignore = true
[[object.function]]
pattern = "util_fraction_.*"
ignore = true
[[object.function]]
pattern = "util_greatest_.*"
ignore = true
[[object.function]]
pattern = "util_[g]?uint64.*"
ignore = true
[[object.function]]
name = "deinit"
ignore = true
[[object.function]]
name = "util_set_object_arg"
ignore = true
[[object.function]]
name = "util_seqnum_compare"
ignore = true
[[object.function]]
name = "dynamic_type_register"
ignore = true
[[object.function]]
name = "flow_get_name"
ignore = true
[[object.function]]
name = "filename_to_uri"
ignore = true
[[object.function]]
name = "is_initialized"
ignore = true
[[object.function]]
name = "debug_add_log_function"
ignore = true
[[object.function]]
name = "debug_remove_log_function"
ignore = true
[[object.function]]
name = "debug_remove_log_function_by_data"
ignore = true
[[object.function]]
name = "debug_construct_term_color"
ignore = true
[[object.function]]
name = "debug_construct_win_color"
ignore = true
[[object.function]]
name = "debug_get_all_categories"
ignore = true
[[object.function]]
name = "debug_get_color_mode"
ignore = true
[[object.function]]
pattern = "debug_log.*"
ignore = true
[[object.function]]
name = "debug_set_color_mode"
ignore = true
[[object.function]]
name = "debug_set_color_mode_from_string"
ignore = true
[[object.function]]
name = "error_get_message"
ignore = true
[[object.function]]
name = "flow_to_quark"
ignore = true
[[object.function]]
name = "formats_contains"
ignore = true
[[object.function]]
pattern = "info_.*"
ignore = true
[[object.function]]
pattern = "print.*"
ignore = true
[[object.function]]
pattern = "init.*"
ignore = true
[[object.function]]
pattern = "param_spec_.*"
ignore = true
[[object.function]]
name = "is_caps_features"
ignore = true
[[object.function]]
name = "make_element_message_details"
ignore = true
[[object.function]]
name = "util_array_binary_search"
ignore = true
[[object.function]]
name = "util_get_object_array"
ignore = true
[[object.function]]
name = "util_set_object_array"
ignore = true
[[object.function]]
name = "util_set_value_from_string"
ignore = true
[[object.function]]
pattern = "parse.*full"
# wrong mutable for context parameter
ignore = true
[[object.function]]
name = "update_registry"
[object.function.return]
bool_return_is_error = "Failed to update the registry"
[[object.function]]
name = "util_group_id_next"
# newtype wrapper
ignore = true
[[object.function]]
name = "util_seqnum_next"
# newtype wrapper
ignore = true
[[object.function]]
name = "protection_filter_systems_by_available_decryptors"
# wrong array annotations
ignore = true
[[object.function]]
pattern = "clear_.*"
# C memory management
ignore = true
[[object.function]]
name = "debug_get_stack_trace"
# can be called before gst_init()
assertion = "skip"
[object.function.return]
nullable_return_is_error = "Failed to get stack trace"
[[object.function]]
name = "get_main_executable_path"
[object.function.return]
nullable_return_is_error = "Failed to get main executable path"
[[object.function]]
name = "debug_set_default_threshold"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_get_default_threshold"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_set_threshold_for_name"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_set_threshold_from_string"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_unset_threshold_for_name"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_print_stack_trace"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_is_active"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_is_colored"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_set_active"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_set_colored"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_add_ring_buffer_logger"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_remove_ring_buffer_logger"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "debug_ring_buffer_logger_get_logs"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "util_get_timestamp"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "version"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "version_string"
# can be called before gst_init()
assertion = "skip"
[[object.function]]
name = "type_is_plugin_api"
# confusing return type
ignore = true
[[object]]
name = "Gst.StateChange"
status = "generate"
[[object.function]]
name = "get_name"
# Manual function for < v1_14:
manual = true
# Always generate the trait, without version constraint:
version = "1.8"
[[object]]
name = "Gst.StateChangeReturn"
status = "generate"
must_use = true
[object.conversion_type]
variant = "Result"
ok_type = "StateChangeSuccess"
err_type = "StateChangeError"
[[object]]
name = "Gst.FlowReturn"
status = "generate"
must_use = true
[object.conversion_type]
variant = "Result"
ok_type = "FlowSuccess"
err_type = "FlowError"
[[object]]
name = "Gst.PadLinkReturn"
status = "generate"
must_use = true
[object.conversion_type]
variant = "Result"
ok_type = "PadLinkSuccess"
err_type = "PadLinkError"
[[object]]
name = "Gst.ClockReturn"
status = "generate"
must_use = true
[object.conversion_type]
variant = "Result"
ok_type = "ClockSuccess"
err_type = "ClockError"
[[object]]
name = "Gst.DateTime"
status = "generate"
[[object.derive]]
# Don't auto-implement traits
name = ""
[[object.function]]
name = "new"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "new_local_time"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "new_y"
# Needs manual checking of invariants
manual = true
[object.function.return]
nullable = true
[[object.function]]
name = "new_ym"
# Needs manual checking of invariants
manual = true
[object.function.return]
nullable = true
[[object.function]]
name = "new_ymd"
# Needs manual checking of invariants
manual = true
[object.function.return]
nullable = true
[[object.function]]
name = "get_month"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "get_day"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "get_hour"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "get_minute"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "get_second"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "get_microsecond"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "get_time_zone_offset"
# Needs manual checking of invariants
manual = true
[[object.function]]
name = "new_from_g_date_time"
# Function only ever returns NULL if the argument is NULL
[[object.function.parameter]]
name = "dt"
nullable = false
[object.function.return]
nullable = false
[[object.function]]
name = "to_g_date_time"
[object.function.return]
nullable_return_is_error = "Can't create glib::DateTime from DateTime"
[[object.function]]
name = "new_from_iso8601_string"
[object.function.return]
nullable_return_is_error = "Failed to create DateTime from ISO-8601 string"
[[object.function]]
name = "to_iso8601_string"
[object.function.return]
nullable_return_is_error = "Failed to create ISO-8601 string from DateTime"
[[object.function]]
name = "new_from_unix_epoch_local_time"
[object.function.return]
nullable_return_is_error = "Can't create DateTime from UNIX epoch"
[[object.function]]
name = "new_from_unix_epoch_local_time_usecs"
[object.function.return]
nullable_return_is_error = "Can't create DateTime from UNIX epoch"
[[object.function]]
name = "new_from_unix_epoch_utc"
[object.function.return]
nullable_return_is_error = "Can't create DateTime from UNIX epoch"
[[object.function]]
name = "new_from_unix_epoch_utc_usecs"
[object.function.return]
nullable_return_is_error = "Can't create DateTime from UNIX epoch"
[[object]]
name = "Gst.ControlSource"
status = "generate"
manual_traits = ["ControlSourceExtManual"]
generate_builder = true
[[object.function]]
name = "control_source_get_value"
rename = "value"
[[object.function]]
name = "control_source_get_value_array"
manual = true
[[object]]
name = "Gst.ControlBinding"
status = "generate"
manual_traits = ["ControlBindingExtManual"]
generate_builder = true
[[object.function]]
name = "get_g_value_array"
manual = true