Copyright | Will Thompson, Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
GI.Gst.Objects.ControlBinding
Contents
Description
A base class for value mapping objects that attaches control sources to gobject
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.
- newtype ControlBinding = ControlBinding (ManagedPtr ControlBinding)
- class GObject o => IsControlBinding o
- toControlBinding :: IsControlBinding o => o -> IO ControlBinding
- noControlBinding :: Maybe ControlBinding
- data ControlBindingGetGValueArrayMethodInfo
- controlBindingGetGValueArray :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> Word64 -> Word64 -> [GValue] -> m Bool
- data ControlBindingGetValueMethodInfo
- controlBindingGetValue :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> Word64 -> m (Maybe GValue)
- data ControlBindingIsDisabledMethodInfo
- controlBindingIsDisabled :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> m Bool
- data ControlBindingSetDisabledMethodInfo
- controlBindingSetDisabled :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> Bool -> m ()
- data ControlBindingSyncValuesMethodInfo
- controlBindingSyncValues :: (HasCallStack, MonadIO m, IsControlBinding a, IsObject b) => a -> b -> Word64 -> Word64 -> m Bool
- data ControlBindingNamePropertyInfo
- constructControlBindingName :: IsControlBinding o => Text -> IO (GValueConstruct o)
- controlBindingName :: AttrLabelProxy "name"
- getControlBindingName :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Text)
- data ControlBindingObjectPropertyInfo
- constructControlBindingObject :: (IsControlBinding o, IsObject a) => a -> IO (GValueConstruct o)
- controlBindingObject :: AttrLabelProxy "object"
- getControlBindingObject :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Object)
Exported types
newtype ControlBinding Source #
Constructors
ControlBinding (ManagedPtr ControlBinding) |
Instances
GObject ControlBinding Source # | |
IsObject ControlBinding Source # | |
IsObject ControlBinding Source # | |
IsControlBinding ControlBinding Source # | |
((~) * info (ResolveControlBindingMethod t ControlBinding), MethodInfo * info ControlBinding p) => IsLabel t (ControlBinding -> p) Source # | |
((~) * info (ResolveControlBindingMethod t ControlBinding), MethodInfo * info ControlBinding p) => IsLabelProxy t (ControlBinding -> p) Source # | |
HasAttributeList * ControlBinding Source # | |
type AttributeList ControlBinding Source # | |
type SignalList ControlBinding Source # | |
class GObject o => IsControlBinding o Source #
Instances
toControlBinding :: IsControlBinding o => o -> IO ControlBinding Source #
Methods
getGValueArray
data ControlBindingGetGValueArrayMethodInfo Source #
Instances
((~) * signature (Word64 -> Word64 -> [GValue] -> m Bool), MonadIO m, IsControlBinding a) => MethodInfo * ControlBindingGetGValueArrayMethodInfo a signature Source # | |
controlBindingGetGValueArray Source #
Arguments
:: (HasCallStack, MonadIO m, IsControlBinding a) | |
=> a |
|
-> Word64 |
|
-> Word64 |
|
-> [GValue] |
|
-> m Bool | Returns: |
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
data ControlBindingGetValueMethodInfo Source #
Instances
((~) * signature (Word64 -> m (Maybe GValue)), MonadIO m, IsControlBinding a) => MethodInfo * ControlBindingGetValueMethodInfo a signature Source # | |
controlBindingGetValue Source #
Arguments
:: (HasCallStack, MonadIO m, IsControlBinding a) | |
=> a |
|
-> Word64 |
|
-> m (Maybe GValue) | Returns: the GValue of the property at the given time,
or |
Gets the value for the given controlled property at the requested time.
isDisabled
data ControlBindingIsDisabledMethodInfo Source #
Instances
((~) * signature (m Bool), MonadIO m, IsControlBinding a) => MethodInfo * ControlBindingIsDisabledMethodInfo a signature Source # | |
controlBindingIsDisabled Source #
Arguments
:: (HasCallStack, MonadIO m, IsControlBinding a) | |
=> a |
|
-> m Bool | Returns: |
Check if the control binding is disabled.
setDisabled
data ControlBindingSetDisabledMethodInfo Source #
Instances
((~) * signature (Bool -> m ()), MonadIO m, IsControlBinding a) => MethodInfo * ControlBindingSetDisabledMethodInfo a signature Source # | |
controlBindingSetDisabled Source #
Arguments
:: (HasCallStack, MonadIO m, IsControlBinding a) | |
=> a |
|
-> Bool |
|
-> m () |
This function is used to disable a control binding for some time, i.e.
objectSyncValues
will do nothing.
syncValues
data ControlBindingSyncValuesMethodInfo Source #
Instances
((~) * signature (b -> Word64 -> Word64 -> m Bool), MonadIO m, IsControlBinding a, IsObject b) => MethodInfo * ControlBindingSyncValuesMethodInfo a signature Source # | |
controlBindingSyncValues Source #
Arguments
:: (HasCallStack, MonadIO m, IsControlBinding a, IsObject b) | |
=> a |
|
-> b |
|
-> Word64 |
|
-> Word64 |
|
-> m Bool | Returns: |
Sets the property of the object
, according to the GstControlSources
that
handle them 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
data ControlBindingNamePropertyInfo Source #
Instances
constructControlBindingName :: IsControlBinding o => Text -> IO (GValueConstruct o) Source #
controlBindingName :: AttrLabelProxy "name" Source #
getControlBindingName :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Text) Source #
object
data ControlBindingObjectPropertyInfo Source #
Instances
constructControlBindingObject :: (IsControlBinding o, IsObject a) => a -> IO (GValueConstruct o) Source #
controlBindingObject :: AttrLabelProxy "object" Source #
getControlBindingObject :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Object) Source #