module Network.Mosquitto.LowLevel.Types ( Mosquitto(..) , MosquittoMessage(..) , MosquittoResult(..) , MosquittoLogType(..) ) where import Foreign.C import Foreign.C.String import Foreign.Ptr data Mosquitto data MosquittoMessage = MosquittoMessage { mid :: CInt , topic :: CString , payload :: Ptr () , payloadLen :: CInt , qos :: CInt , retain :: Bool } data MosquittoLogType = MOSQ_LOG_NONE | MOSQ_LOG_INFO | MOSQ_LOG_NOTICE | MOSQ_LOG_WARNING | MOSQ_LOG_ERR | MOSQ_LOG_DEBUG | MOSQ_LOG_SUBSCRIBE | MOSQ_LOG_UNSUBSCRIBE | MOSQ_LOG_WEBSOCKETS | MOSQ_LOG_ALL deriving (Eq, Show, Read) instance Enum MosquittoLogType where fromEnum MOSQ_LOG_NONE = 0x00 fromEnum MOSQ_LOG_INFO = 0x01 fromEnum MOSQ_LOG_NOTICE = 0x02 fromEnum MOSQ_LOG_WARNING = 0x04 fromEnum MOSQ_LOG_ERR = 0x08 fromEnum MOSQ_LOG_DEBUG = 0x10 fromEnum MOSQ_LOG_SUBSCRIBE = 0x20 fromEnum MOSQ_LOG_UNSUBSCRIBE = 0x40 fromEnum MOSQ_LOG_WEBSOCKETS = 0x80 fromEnum MOSQ_LOG_ALL = 0xFFFF toEnum 0x00 = MOSQ_LOG_NONE toEnum 0x01 = MOSQ_LOG_INFO toEnum 0x02 = MOSQ_LOG_NOTICE toEnum 0x04 = MOSQ_LOG_WARNING toEnum 0x08 = MOSQ_LOG_ERR toEnum 0x10 = MOSQ_LOG_DEBUG toEnum 0x20 = MOSQ_LOG_SUBSCRIBE toEnum 0x40 = MOSQ_LOG_UNSUBSCRIBE toEnum 0x80 = MOSQ_LOG_WEBSOCKETS toEnum 0xFFFF = MOSQ_LOG_ALL data MosquittoResult = MOSQ_ERR_CONN_PENDING | MOSQ_ERR_SUCCESS | MOSQ_ERR_NOMEM | MOSQ_ERR_PROTOCOL | MOSQ_ERR_INVAL | MOSQ_ERR_NO_CONN | MOSQ_ERR_CONN_REFUSED | MOSQ_ERR_NOT_FOUND | MOSQ_ERR_CONN_LOST | MOSQ_ERR_TLS | MOSQ_ERR_PAYLOAD_SIZE | MOSQ_ERR_NOT_SUPPORTED | MOSQ_ERR_AUTH | MOSQ_ERR_ACL_DENIED | MOSQ_ERR_UNKNOWN | MOSQ_ERR_ERRNO | MOSQ_ERR_EAI | MOSQ_ERR_PROXY deriving (Show, Eq, Read) instance Enum MosquittoResult where toEnum (-1) = MOSQ_ERR_CONN_PENDING toEnum 0 = MOSQ_ERR_SUCCESS toEnum 1 = MOSQ_ERR_NOMEM toEnum 2 = MOSQ_ERR_PROTOCOL toEnum 3 = MOSQ_ERR_INVAL toEnum 4 = MOSQ_ERR_NO_CONN toEnum 5 = MOSQ_ERR_CONN_REFUSED toEnum 6 = MOSQ_ERR_NOT_FOUND toEnum 7 = MOSQ_ERR_CONN_LOST toEnum 8 = MOSQ_ERR_TLS toEnum 9 = MOSQ_ERR_PAYLOAD_SIZE toEnum 10 = MOSQ_ERR_NOT_SUPPORTED toEnum 11 = MOSQ_ERR_AUTH toEnum 12 = MOSQ_ERR_ACL_DENIED toEnum 13 = MOSQ_ERR_UNKNOWN toEnum 14 = MOSQ_ERR_ERRNO toEnum 15 = MOSQ_ERR_EAI toEnum 16 = MOSQ_ERR_PROXY fromEnum MOSQ_ERR_CONN_PENDING = -1 fromEnum MOSQ_ERR_SUCCESS = 0 fromEnum MOSQ_ERR_NOMEM = 1 fromEnum MOSQ_ERR_PROTOCOL = 2 fromEnum MOSQ_ERR_INVAL = 3 fromEnum MOSQ_ERR_NO_CONN = 4 fromEnum MOSQ_ERR_CONN_REFUSED = 5 fromEnum MOSQ_ERR_NOT_FOUND = 6 fromEnum MOSQ_ERR_CONN_LOST = 7 fromEnum MOSQ_ERR_TLS = 8 fromEnum MOSQ_ERR_PAYLOAD_SIZE = 9 fromEnum MOSQ_ERR_NOT_SUPPORTED = 10 fromEnum MOSQ_ERR_AUTH = 11 fromEnum MOSQ_ERR_ACL_DENIED = 12 fromEnum MOSQ_ERR_UNKNOWN = 13 fromEnum MOSQ_ERR_ERRNO = 14 fromEnum MOSQ_ERR_EAI = 15 fromEnum MOSQ_ERR_PROXY = 16