Difference between revisions of "MESSAGE BUS SERVER"

From truxwiki.com
Jump to navigation Jump to search
Line 12: Line 12:
 
     MESSAGE_BUS_SERVER_OPEN    open;
 
     MESSAGE_BUS_SERVER_OPEN    open;
 
};
 
};
 +
</syntaxhighlight>
 +
 +
=Defines=
 +
<syntaxhighlight lang="C++">
 +
#define MESSAGE_BUS_SERVER_SIGNATURE (0x726576726553424DULL)
 +
#define MESSAGE_BUS_SERVER_PROVIDER_ENTRY_POINT_NAME "TruxtonMessageBusServer"
 +
 +
#define MESSAGE_BUS_SERVER_LOG_INFORMATION (0)
 +
#define MESSAGE_BUS_SERVER_LOG_WARNING    (1)
 +
#define MESSAGE_BUS_SERVER_LOG_ERROR      (2)
 +
#define MESSAGE_BUS_SERVER_LOG_VERBOSE    (3)
 
</syntaxhighlight>
 
</syntaxhighlight>
  
Line 22: Line 33:
 
using MESSAGE_BUS_SERVER_DESTROY    = void  (*)(void * handle, char const * name);
 
using MESSAGE_BUS_SERVER_DESTROY    = void  (*)(void * handle, char const * name);
 
using MESSAGE_BUS_SERVER_OPEN        = void * (*)(void * library_handle, void * context, MESSAGE_BUS_SERVER_GET_SETTING, void * log_context, MESSAGE_BUS_SERVER_LOG log);
 
using MESSAGE_BUS_SERVER_OPEN        = void * (*)(void * library_handle, void * context, MESSAGE_BUS_SERVER_GET_SETTING, void * log_context, MESSAGE_BUS_SERVER_LOG log);
 +
 +
using MESSAGE_BUS_SERVER_PROVIDER_ENTRY_POINT = void (*)(MESSAGE_BUS_SERVER *);
 
</syntaxhighlight>
 
</syntaxhighlight>

Revision as of 17:46, 1 September 2020

Interface

struct MESSAGE_BUS_PROVIDER
{
    uint64_t signature;
    void *   library_handle;
    void *   implementation_handle;

    MESSAGE_BUS_SERVER_CLOSE   close;
    MESSAGE_BUS_SERVER_CREATE  create;
    MESSAGE_BUS_SERVER_DESTROY destroy;
    MESSAGE_BUS_SERVER_OPEN    open;
};

Defines

#define MESSAGE_BUS_SERVER_SIGNATURE (0x726576726553424DULL)
#define MESSAGE_BUS_SERVER_PROVIDER_ENTRY_POINT_NAME "TruxtonMessageBusServer"

#define MESSAGE_BUS_SERVER_LOG_INFORMATION (0)
#define MESSAGE_BUS_SERVER_LOG_WARNING     (1)
#define MESSAGE_BUS_SERVER_LOG_ERROR       (2)
#define MESSAGE_BUS_SERVER_LOG_VERBOSE     (3)

Function Types

using MESSAGE_BUS_SERVER_LOG         = void   (*)(void * logging_handle, int level, char const * message);
using MESSAGE_BUS_SERVER_GET_SETTING = int    (*)(void * context, char const * name, char * destination, int destination_size);
using MESSAGE_BUS_SERVER_CLOSE       = void   (*)(void * handle);
using MESSAGE_BUS_SERVER_CREATE      = void   (*)(void * handle, char const * name);
using MESSAGE_BUS_SERVER_DESTROY     = void   (*)(void * handle, char const * name);
using MESSAGE_BUS_SERVER_OPEN        = void * (*)(void * library_handle, void * context, MESSAGE_BUS_SERVER_GET_SETTING, void * log_context, MESSAGE_BUS_SERVER_LOG log);

using MESSAGE_BUS_SERVER_PROVIDER_ENTRY_POINT = void (*)(MESSAGE_BUS_SERVER *);