Message

Api for sending messages

Namespace: dmMessage
Include: #include <>
TYPES
dmMessage::StringURL Helper struct for parsing a string of the form "so...
dmMMessage::MessageDestroyCallback A callback for messages that needs cleanup after b...
HSocket Socket handle
ENUMS
dmMessage::Result Result enum
STRUCTS
struct dmMessage::URL URL specifying a sender/receiver of messages
struct Message
struct Message Message data desc used at dispatch callback. When ...
FUNCTIONS
dmhash_t GetFragment(dmMessage::URL url) Get the message fragment
dmhash_t GetPath(dmMessage::URL url) Get the message path
dmMessage::HSocket GetSocket(dmMessage::URL url) Get the message socket
const char* GetSocketName(dmMessage::HSocket socket) Get socket name
dmhash_t GetSocketNameHash(dmMessage::HSocket socket) Get socket name hash
bool IsSocketValid(dmMessage::HSocket socket) Tests if a socket is valid (not deleted).
 ParseUrl(const char* uri, dmMessage::StringUrl out) Convert a string to a URL struct
void ResetUrl(dmMessage::URL url) Resets the given URL to default values.
void SetFragment(dmMessage::URL url, dmhash_t fragment) Set the message fragment
void SetPath(dmMessage::URL url, dmhash_t path) Set the message path
void SetSocket(dmMessage::URL url, dmMessage::HSocket socket) Set the socket

Functions

GetFragment

dmhash_t GetFragment(dmMessage::URL url)

Get the message fragment

PARAMETERS

dmMessage::URL url url

RETURNS

dmhash_t

GetPath

dmhash_t GetPath(dmMessage::URL url)

Get the message path

PARAMETERS

dmMessage::URL url url

RETURNS

dmhash_t

GetSocket

dmMessage::HSocket GetSocket(dmMessage::URL url)

Get the message socket

PARAMETERS

dmMessage::URL url url

RETURNS

dmMessage::HSocket

GetSocketName

const char* GetSocketName(dmMessage::HSocket socket)

Get socket name

PARAMETERS

dmMessage::HSocket socket Socket

RETURNS

const char* socket name. 0 if it was not found

GetSocketNameHash

dmhash_t GetSocketNameHash(dmMessage::HSocket socket)

Get socket name hash

PARAMETERS

dmMessage::HSocket socket Socket

RETURNS

dmhash_t socket name hash. 0 if it was not found

IsSocketValid

bool IsSocketValid(dmMessage::HSocket socket)

Tests if a socket is valid (not deleted).

PARAMETERS

dmMessage::HSocket socket Socket

RETURNS

bool if the socket is valid or not

ParseUrl

 ParseUrl(const char* uri, dmMessage::StringUrl out)

Convert a string to a URL struct

PARAMETERS

const char* uri string of the format ][path[#fragment]
dmMessage::StringUrl out url in string format, must not be 0x0

RETURNS

RESULT_OK on success - RESULT_MALFORMED_URL if the uri could not be parsed

ResetUrl

void ResetUrl(dmMessage::URL url)

Resets the given URL to default values.

PARAMETERS

dmMessage::URL url URL to reset

SetFragment

void SetFragment(dmMessage::URL url, dmhash_t fragment)

Set the message fragment

PARAMETERS

dmMessage::URL url url
dmhash_t fragment

SetPath

void SetPath(dmMessage::URL url, dmhash_t path)

Set the message path

PARAMETERS

dmMessage::URL url url
dmhash_t path

SetSocket

void SetSocket(dmMessage::URL url, dmMessage::HSocket socket)

Set the socket

PARAMETERS

dmMessage::URL url url
dmMessage::HSocket socket

Structs

dmMessage::URL

TYPE

struct dmMessage::URL

URL specifying a sender/receiver of messages


Message

TYPE

struct Message


Message

TYPE

struct Message

Message data desc used at dispatch callback. When a message is posted, the actual object is copied into the sockets internal buffer.

MEMBERS

dmMessage::URL m_Sender Sender uri
dmMessage::URL m_Receiver Receiver uri
dmhash_t m_Id Unique id of message
uintptr_t m_UserData1 User data pointer
uintptr_t m_UserData2 User data pointer
uintptr_t m_Descriptor User specified descriptor of the message data
uint32_t m_DataSize Size of message data in bytes
dmMessage::Message* m_Next Ptr to next message (or 0 if last)
dmMessage::MessageDestroyCallback m_DestroyCallback If set, will be called after each dispatch
uint8_t* m_Data Payload


Types

dmMessage::StringURL

Helper struct for parsing a string of the form "socket:path#fragment"


dmMMessage::MessageDestroyCallback

A callback for messages that needs cleanup after being dispatched. E.g. for freeing resources/memory.


HSocket

Socket handle


Enums

dmMessage::Result

Result enum

RESULT_OK = 0
RESULT_SOCKET_EXISTS = -1
RESULT_SOCKET_NOT_FOUND = -2
RESULT_SOCKET_OUT_OF_RESOURCES = -3
RESULT_INVALID_SOCKET_NAME = -4
RESULT_MALFORMED_URL = -5
RESULT_NAME_OK_SOCKET_NOT_FOUND = -6