Copyright | Will Thompson and Iñaki García Etxebarria |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria |
Safe Haskell | Safe-Inferred |
Language | Haskell2010 |
Information about a D-Bus interface.
Since: 2.26
Synopsis
- newtype DBusInterfaceInfo = DBusInterfaceInfo (ManagedPtr DBusInterfaceInfo)
- newZeroDBusInterfaceInfo :: MonadIO m => m DBusInterfaceInfo
- dBusInterfaceInfoCacheBuild :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> m ()
- dBusInterfaceInfoCacheRelease :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> m ()
- dBusInterfaceInfoGenerateXml :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> Word32 -> String -> m ()
- dBusInterfaceInfoLookupMethod :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> Text -> m (Maybe DBusMethodInfo)
- dBusInterfaceInfoLookupProperty :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> Text -> m (Maybe DBusPropertyInfo)
- dBusInterfaceInfoLookupSignal :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> Text -> m (Maybe DBusSignalInfo)
- dBusInterfaceInfoRef :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> m DBusInterfaceInfo
- dBusInterfaceInfoUnref :: (HasCallStack, MonadIO m) => DBusInterfaceInfo -> m ()
- clearDBusInterfaceInfoAnnotations :: MonadIO m => DBusInterfaceInfo -> m ()
- getDBusInterfaceInfoAnnotations :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusAnnotationInfo])
- setDBusInterfaceInfoAnnotations :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusAnnotationInfo) -> m ()
- clearDBusInterfaceInfoMethods :: MonadIO m => DBusInterfaceInfo -> m ()
- getDBusInterfaceInfoMethods :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusMethodInfo])
- setDBusInterfaceInfoMethods :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusMethodInfo) -> m ()
- clearDBusInterfaceInfoName :: MonadIO m => DBusInterfaceInfo -> m ()
- getDBusInterfaceInfoName :: MonadIO m => DBusInterfaceInfo -> m (Maybe Text)
- setDBusInterfaceInfoName :: MonadIO m => DBusInterfaceInfo -> CString -> m ()
- clearDBusInterfaceInfoProperties :: MonadIO m => DBusInterfaceInfo -> m ()
- getDBusInterfaceInfoProperties :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusPropertyInfo])
- setDBusInterfaceInfoProperties :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusPropertyInfo) -> m ()
- getDBusInterfaceInfoRefCount :: MonadIO m => DBusInterfaceInfo -> m Int32
- setDBusInterfaceInfoRefCount :: MonadIO m => DBusInterfaceInfo -> Int32 -> m ()
- clearDBusInterfaceInfoSignals :: MonadIO m => DBusInterfaceInfo -> m ()
- getDBusInterfaceInfoSignals :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusSignalInfo])
- setDBusInterfaceInfoSignals :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusSignalInfo) -> m ()
Exported types
newtype DBusInterfaceInfo Source #
Memory-managed wrapper type.
Instances
newZeroDBusInterfaceInfo :: MonadIO m => m DBusInterfaceInfo Source #
Construct a DBusInterfaceInfo
struct initialized to zero.
Methods
Click to display all available methods, including inherited ones
Methods
cacheBuild, cacheRelease, generateXml, lookupMethod, lookupProperty, lookupSignal, ref, unref.
Getters
None.
Setters
None.
cacheBuild
dBusInterfaceInfoCacheBuild Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> m () |
Builds a lookup-cache to speed up
dBusInterfaceInfoLookupMethod
,
dBusInterfaceInfoLookupSignal
and
dBusInterfaceInfoLookupProperty
.
If this has already been called with info
, the existing cache is
used and its use count is increased.
Note that info
cannot be modified until
dBusInterfaceInfoCacheRelease
is called.
Since: 2.30
cacheRelease
dBusInterfaceInfoCacheRelease Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> m () |
Decrements the usage count for the cache for info
built by
dBusInterfaceInfoCacheBuild
(if any) and frees the
resources used by the cache if the usage count drops to zero.
Since: 2.30
generateXml
dBusInterfaceInfoGenerateXml Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> Word32 |
|
-> String |
|
-> m () |
Appends an XML representation of info
(and its children) to stringBuilder
.
This function is typically used for generating introspection XML
documents at run-time for handling the
org.freedesktop.DBus.Introspectable.Introspect
method.
Since: 2.26
lookupMethod
dBusInterfaceInfoLookupMethod Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> Text |
|
-> m (Maybe DBusMethodInfo) | Returns: A |
Looks up information about a method.
The cost of this function is O(n) in number of methods unless
dBusInterfaceInfoCacheBuild
has been used on info
.
Since: 2.26
lookupProperty
dBusInterfaceInfoLookupProperty Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> Text |
|
-> m (Maybe DBusPropertyInfo) | Returns: A |
Looks up information about a property.
The cost of this function is O(n) in number of properties unless
dBusInterfaceInfoCacheBuild
has been used on info
.
Since: 2.26
lookupSignal
dBusInterfaceInfoLookupSignal Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> Text |
|
-> m (Maybe DBusSignalInfo) | Returns: A |
Looks up information about a signal.
The cost of this function is O(n) in number of signals unless
dBusInterfaceInfoCacheBuild
has been used on info
.
Since: 2.26
ref
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> m DBusInterfaceInfo | Returns: The same |
If info
is statically allocated does nothing. Otherwise increases
the reference count.
Since: 2.26
unref
dBusInterfaceInfoUnref Source #
:: (HasCallStack, MonadIO m) | |
=> DBusInterfaceInfo |
|
-> m () |
If info
is statically allocated, does nothing. Otherwise decreases
the reference count of info
. When its reference count drops to 0,
the memory used is freed.
Since: 2.26
Properties
annotations
A pointer to a Nothing
-terminated array of pointers to DBusAnnotationInfo
structures or Nothing
if there are no annotations.
clearDBusInterfaceInfoAnnotations :: MonadIO m => DBusInterfaceInfo -> m () Source #
Set the value of the “annotations
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#annotations
getDBusInterfaceInfoAnnotations :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusAnnotationInfo]) Source #
Get the value of the “annotations
” field.
When overloading is enabled, this is equivalent to
get
dBusInterfaceInfo #annotations
setDBusInterfaceInfoAnnotations :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusAnnotationInfo) -> m () Source #
Set the value of the “annotations
” field.
When overloading is enabled, this is equivalent to
set
dBusInterfaceInfo [ #annotations:=
value ]
methods
A pointer to a Nothing
-terminated array of pointers to DBusMethodInfo
structures or Nothing
if there are no methods.
clearDBusInterfaceInfoMethods :: MonadIO m => DBusInterfaceInfo -> m () Source #
Set the value of the “methods
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#methods
getDBusInterfaceInfoMethods :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusMethodInfo]) Source #
Get the value of the “methods
” field.
When overloading is enabled, this is equivalent to
get
dBusInterfaceInfo #methods
setDBusInterfaceInfoMethods :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusMethodInfo) -> m () Source #
Set the value of the “methods
” field.
When overloading is enabled, this is equivalent to
set
dBusInterfaceInfo [ #methods:=
value ]
name
The name of the D-Bus interface, e.g. "org.freedesktop.DBus.Properties".
clearDBusInterfaceInfoName :: MonadIO m => DBusInterfaceInfo -> m () Source #
Set the value of the “name
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#name
getDBusInterfaceInfoName :: MonadIO m => DBusInterfaceInfo -> m (Maybe Text) Source #
Get the value of the “name
” field.
When overloading is enabled, this is equivalent to
get
dBusInterfaceInfo #name
setDBusInterfaceInfoName :: MonadIO m => DBusInterfaceInfo -> CString -> m () Source #
Set the value of the “name
” field.
When overloading is enabled, this is equivalent to
set
dBusInterfaceInfo [ #name:=
value ]
properties
A pointer to a Nothing
-terminated array of pointers to DBusPropertyInfo
structures or Nothing
if there are no properties.
clearDBusInterfaceInfoProperties :: MonadIO m => DBusInterfaceInfo -> m () Source #
Set the value of the “properties
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#properties
getDBusInterfaceInfoProperties :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusPropertyInfo]) Source #
Get the value of the “properties
” field.
When overloading is enabled, this is equivalent to
get
dBusInterfaceInfo #properties
setDBusInterfaceInfoProperties :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusPropertyInfo) -> m () Source #
Set the value of the “properties
” field.
When overloading is enabled, this is equivalent to
set
dBusInterfaceInfo [ #properties:=
value ]
refCount
The reference count or -1 if statically allocated.
getDBusInterfaceInfoRefCount :: MonadIO m => DBusInterfaceInfo -> m Int32 Source #
Get the value of the “ref_count
” field.
When overloading is enabled, this is equivalent to
get
dBusInterfaceInfo #refCount
setDBusInterfaceInfoRefCount :: MonadIO m => DBusInterfaceInfo -> Int32 -> m () Source #
Set the value of the “ref_count
” field.
When overloading is enabled, this is equivalent to
set
dBusInterfaceInfo [ #refCount:=
value ]
signals
A pointer to a Nothing
-terminated array of pointers to DBusSignalInfo
structures or Nothing
if there are no signals.
clearDBusInterfaceInfoSignals :: MonadIO m => DBusInterfaceInfo -> m () Source #
Set the value of the “signals
” field to Nothing
.
When overloading is enabled, this is equivalent to
clear
#signals
getDBusInterfaceInfoSignals :: MonadIO m => DBusInterfaceInfo -> m (Maybe [DBusSignalInfo]) Source #
Get the value of the “signals
” field.
When overloading is enabled, this is equivalent to
get
dBusInterfaceInfo #signals
setDBusInterfaceInfoSignals :: MonadIO m => DBusInterfaceInfo -> Ptr (Ptr DBusSignalInfo) -> m () Source #
Set the value of the “signals
” field.
When overloading is enabled, this is equivalent to
set
dBusInterfaceInfo [ #signals:=
value ]