gi-gst-1.0.30: GStreamer bindings
CopyrightWill Thompson and Iñaki García Etxebarria
LicenseLGPL-2.1
MaintainerIñaki García Etxebarria
Safe HaskellSafe-Inferred
LanguageHaskell2010

GI.Gst.Objects.ControlBinding

Description

A base class for value mapping objects that attaches control sources to Object properties. Such an object is taking one or more ControlSource instances, combines them and maps the resulting value to the type and value range of the bound property.

Synopsis

Exported types

newtype ControlBinding Source #

Memory-managed wrapper type.

Constructors

ControlBinding (ManagedPtr ControlBinding) 

Instances

Instances details
Eq ControlBinding Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

GObject ControlBinding Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

ManagedPtrNewtype ControlBinding Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

TypedObject ControlBinding Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

Methods

glibType :: IO GType

HasParentTypes ControlBinding Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

IsGValue (Maybe ControlBinding) Source #

Convert ControlBinding to and from GValue. See toGValue and fromGValue.

Instance details

Defined in GI.Gst.Objects.ControlBinding

Methods

gvalueGType_ :: IO GType

gvalueSet_ :: Ptr GValue -> Maybe ControlBinding -> IO ()

gvalueGet_ :: Ptr GValue -> IO (Maybe ControlBinding)

type ParentTypes ControlBinding Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

type ParentTypes ControlBinding = '[Object, Object]

class (GObject o, IsDescendantOf ControlBinding o) => IsControlBinding o Source #

Type class for types which can be safely cast to ControlBinding, for instance with toControlBinding.

Instances

Instances details
(GObject o, IsDescendantOf ControlBinding o) => IsControlBinding o Source # 
Instance details

Defined in GI.Gst.Objects.ControlBinding

toControlBinding :: (MonadIO m, IsControlBinding o) => o -> m ControlBinding Source #

Cast to ControlBinding, for types for which this is known to be safe. For general casts, use castTo.

Methods

getGValueArray

controlBindingGetGValueArray Source #

Arguments

:: (HasCallStack, MonadIO m, IsControlBinding a) 
=> a

binding: the control binding

-> Word64

timestamp: the time that should be processed

-> Word64

interval: the time spacing between subsequent values

-> [GValue]

values: array to put control-values in

-> m Bool

Returns: True if the given array could be filled, False otherwise

Gets a number of GValues for the given controlled property starting at the requested time. The array values need to hold enough space for nValues of Value.

This function is useful if one wants to e.g. draw a graph of the control curve or apply a control curve sample by sample.

getValue

controlBindingGetValue Source #

Arguments

:: (HasCallStack, MonadIO m, IsControlBinding a) 
=> a

binding: the control binding

-> Word64

timestamp: the time the control-change should be read from

-> m (Maybe GValue)

Returns: the GValue of the property at the given time, or Nothing if the property isn't controlled.

Gets the value for the given controlled property at the requested time.

isDisabled

controlBindingIsDisabled Source #

Arguments

:: (HasCallStack, MonadIO m, IsControlBinding a) 
=> a

binding: the control binding

-> m Bool

Returns: True if the binding is inactive

Checks if the control binding is disabled.

setDisabled

controlBindingSetDisabled Source #

Arguments

:: (HasCallStack, MonadIO m, IsControlBinding a) 
=> a

binding: the control binding

-> Bool

disabled: boolean that specifies whether to disable the controller or not.

-> m () 

This function is used to disable a control binding for some time, i.e. objectSyncValues will do nothing.

syncValues

controlBindingSyncValues Source #

Arguments

:: (HasCallStack, MonadIO m, IsControlBinding a, IsObject b) 
=> a

binding: the control binding

-> b

object: the object that has controlled properties

-> Word64

timestamp: the time that should be processed

-> Word64

lastSync: the last time this was called

-> m Bool

Returns: True if the controller value could be applied to the object property, False otherwise

Sets the property of the object, according to the GstControlSources that handles it and for the given timestamp.

If this function fails, it is most likely the application developers fault. Most probably the control sources are not setup correctly.

Properties

name

No description available in the introspection data.

constructControlBindingName :: (IsControlBinding o, MonadIO m) => Text -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “name” property. This is rarely needed directly, but it is used by new.

getControlBindingName :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Text) Source #

Get the value of the “name” property. When overloading is enabled, this is equivalent to

get controlBinding #name

object

No description available in the introspection data.

constructControlBindingObject :: (IsControlBinding o, MonadIO m, IsObject a) => a -> m (GValueConstruct o) Source #

Construct a GValueConstruct with valid value for the “object” property. This is rarely needed directly, but it is used by new.

getControlBindingObject :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Object) Source #

Get the value of the “object” property. When overloading is enabled, this is equivalent to

get controlBinding #object