Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (inaki@blueleaf.cc) |
Safe Haskell | None |
Language | Haskell2010 |
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.
Synopsis
- newtype ControlBinding = ControlBinding (ManagedPtr ControlBinding)
- class (GObject o, IsDescendantOf ControlBinding o) => IsControlBinding o
- toControlBinding :: (MonadIO m, IsControlBinding o) => o -> m ControlBinding
- noControlBinding :: Maybe ControlBinding
- controlBindingGetGValueArray :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> Word64 -> Word64 -> [GValue] -> m Bool
- controlBindingGetValue :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> Word64 -> m (Maybe GValue)
- controlBindingIsDisabled :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> m Bool
- controlBindingSetDisabled :: (HasCallStack, MonadIO m, IsControlBinding a) => a -> Bool -> m ()
- controlBindingSyncValues :: (HasCallStack, MonadIO m, IsControlBinding a, IsObject b) => a -> b -> Word64 -> Word64 -> m Bool
- constructControlBindingName :: IsControlBinding o => Text -> IO (GValueConstruct o)
- getControlBindingName :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Text)
- constructControlBindingObject :: (IsControlBinding o, IsObject a) => a -> IO (GValueConstruct o)
- getControlBindingObject :: (MonadIO m, IsControlBinding o) => o -> m (Maybe Object)
Exported types
newtype ControlBinding Source #
Memory-managed wrapper type.
Instances
GObject ControlBinding Source # | |
Defined in GI.Gst.Objects.ControlBinding gobjectType :: IO GType # | |
HasParentTypes ControlBinding Source # | |
Defined in GI.Gst.Objects.ControlBinding | |
type ParentTypes ControlBinding Source # | |
Defined in GI.Gst.Objects.ControlBinding |
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
(GObject o, IsDescendantOf ControlBinding o) => IsControlBinding o Source # | |
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
.
noControlBinding :: Maybe ControlBinding Source #
A convenience alias for Nothing
:: Maybe
ControlBinding
.
Methods
getGValueArray
controlBindingGetGValueArray Source #
:: (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
controlBindingGetValue Source #
:: (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
controlBindingIsDisabled Source #
:: (HasCallStack, MonadIO m, IsControlBinding a) | |
=> a |
|
-> m Bool | Returns: |
Check if the control binding is disabled.
setDisabled
controlBindingSetDisabled Source #
:: (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
controlBindingSyncValues Source #
:: (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
No description available in the introspection data.
constructControlBindingName :: IsControlBinding o => Text -> IO (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, IsObject a) => a -> IO (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