License | BSD-style |
---|---|
Maintainer | Vincent Hanquez <vincent@snarc.org> |
Stability | experimental |
Portability | unknown |
Safe Haskell | None |
Language | Haskell98 |
- data DBusContext
- data DBusTransport = DBusTransport {
- transportGet :: Int -> IO ByteString
- transportPut :: ByteString -> IO ()
- transportClose :: IO ()
- authenticate :: DBusContext -> ByteString -> IO ()
- authenticateUID :: DBusContext -> Int -> IO ()
- connectSession :: IO Handle
- connectSystem :: IO Handle
- contextNew :: Handle -> IO DBusContext
- contextNewWith :: DBusTransport -> IO DBusContext
- busGetSession :: IO DBusContext
- busGetSystem :: IO DBusContext
- busGetNextSerial :: DBusContext -> IO Serial
- busClose :: DBusContext -> IO ()
- messageSend :: DBusContext -> DBusMessage -> IO Serial
- messageSendWithSerial :: DBusContext -> Serial -> DBusMessage -> IO ()
- messageRecv :: DBusContext -> IO DBusMessage
- data MessageType
- data MessageFlag
- data DBusFields = DBusFields {}
- data DBusMessage = DBusMessage {
- msgEndian :: DBusEndian
- msgType :: !MessageType
- msgVersion :: !Int
- msgFlags :: !Int
- msgSerial :: !Serial
- msgFields :: DBusFields
- msgBodyRaw :: ByteString
- type Serial = Word32
- readBody :: DBusMessage -> Body
- readBodyWith :: DBusMessage -> Signature -> Body
- data Type
- type SignatureElem = Type
- type Signature = [Type]
- serializeSignature :: Signature -> ByteString
- unserializeSignature :: ByteString -> Either String Signature
- newtype ObjectPath = ObjectPath {}
- newtype PackedString = PackedString {}
- packedStringToString :: PackedString -> String
- data DBusValue
- = DBusByte Word8
- | DBusBoolean Bool
- | DBusInt16 Int16
- | DBusUInt16 Word16
- | DBusInt32 Int32
- | DBusUInt32 Word32
- | DBusInt64 Int64
- | DBusUInt64 Word64
- | DBusDouble Double
- | DBusString PackedString
- | DBusObjectPath ObjectPath
- | DBusSignature Signature
- | DBusByteArray ByteString
- | DBusArray Type [DBusValue]
- | DBusStruct Signature [DBusValue]
- | DBusDict DBusValue DBusValue
- | DBusVariant DBusValue
- | DBusUnixFD Word32
- class DBusTypeable a where
Documentation
data DBusContext Source #
data DBusTransport Source #
DBusTransport | |
|
authenticate :: DBusContext -> ByteString -> IO () Source #
authenticate to DBus using a raw bytestring.
authenticateUID :: DBusContext -> Int -> IO () Source #
authenticate to DBus using a UID.
connectSession :: IO Handle Source #
connect to the dbus session bus define by the environment variable DBUS_SESSION_BUS_ADDRESS
connectSystem :: IO Handle Source #
connect to the dbus system bus
contextNew :: Handle -> IO DBusContext Source #
create a new DBus context from an handle
contextNewWith :: DBusTransport -> IO DBusContext Source #
create a new DBus context from a transport
busGetSession :: IO DBusContext Source #
create a new DBus context on session bus
busGetSystem :: IO DBusContext Source #
create a new DBus context on system bus
busGetNextSerial :: DBusContext -> IO Serial Source #
get the next serial usable, and increment the serial state.
busClose :: DBusContext -> IO () Source #
close this DBus context
messageSend :: DBusContext -> DBusMessage -> IO Serial Source #
send one message to the bus note that the serial of the message sent is allocated here.
messageSendWithSerial :: DBusContext -> Serial -> DBusMessage -> IO () Source #
send one message to the bus with a predefined serial number.
messageRecv :: DBusContext -> IO DBusMessage Source #
receive one single message from the bus it is not necessarily the reply from a previous sent message.
from Message module
data MessageType Source #
dbus message types
data MessageFlag Source #
dbus message flags
data DBusFields Source #
data DBusMessage Source #
DBusMessage | |
|
read a message body
readBody :: DBusMessage -> Body Source #
read message's body using the signature field as reference
readBodyWith :: DBusMessage -> Signature -> Body Source #
read message's body with a defined signature
from Signature module
One possible signature element
type SignatureElem = Type Source #
Deprecated: use Type instead
serializeSignature :: Signature -> ByteString Source #
serialize a signature
unserializeSignature :: ByteString -> Either String Signature Source #
unserialize a signature
from Type module
newtype ObjectPath Source #
newtype PackedString Source #
DBus Types
class DBusTypeable a where Source #
toSignature :: a -> Type Source #
toDBusValue :: a -> DBusValue Source #
fromDBusValue :: DBusValue -> Maybe a Source #