Open Lighting Architecture
Latest Git
|
Information required to use the StreamingClient as a plugin.
Sometimes it's useful for client applications to avoid linking against libola, say for instance if they install separately from OLA. By deferring the linking and using libola as a plugin, clients can use OLA if it's installed on the system or if not, take some other action like displaing a message or using another output mechanism.
This file provides plugin interfaces so that a client code can load a small subset of libola at runtime. For each function we #define the symbol name and then provide the function type signature and the actual function itself.
http://www.tldp.org/HOWTO/html_single/C++-dlopen provides some good background.
Go to the source code of this file.
Namespaces | |
ola | |
The namespace containing all OLA symbols. | |
ola::client | |
OLA C++ API. | |
Macros | |
#define | OLA_NEW_STREAMING_CLIENT "ola_new_streaming_client" |
The symbol for the function to create a new StreamingClient. | |
#define | OLA_DELETE_STREAMING_CLIENT "ola_delete_streaming_client" |
The symbol for the function to delete a StreamingClient. | |
#define | OLA_NEW_DMXBUFFER "ola_new_dmxbuffer" |
The symbol for the function to create a new DmxBuffer. | |
#define | OLA_DELETE_DMXBUFFER "ola_delete_dmxbuffer" |
The symbol for the function to delete a DmxBuffer. | |
#define | OLA_SET_DMXBUFFER "ola_set_dmxbuffer" |
The symbol for the function to set the contents of a DmxBuffer. | |
Typedefs | |
typedef ola::client::StreamingClientInterface * | ola_new_streaming_client_t(const ola::client::StreamingClient::Options &options) |
A function pointer to create a new StreamingClient. | |
typedef void | ola_delete_streaming_client_t(ola::client::StreamingClientInterface *client) |
A function pointer to delete a StreamingClient. | |
typedef ola::DmxBuffer * | ola_new_dmxbuffer_t() |
A function pointer to create a new DmxBuffer. | |
typedef void | ola_delete_dmxbuffer_t(ola::DmxBuffer *buffer) |
A function pointer to delete a DmxBuffer. | |
typedef void | ola_set_dmxbuffer_t(ola::DmxBuffer *buffer, const uint8_t *data, unsigned int size) |
A function pointer to set the contents of a DmxBuffer. More... | |
Functions | |
ola::client::StreamingClientInterface * | ola_new_streaming_client (const ola::client::StreamingClient::Options &options) |
void | ola_delete_streaming_client (ola::client::StreamingClientInterface *client) |
ola::DmxBuffer * | ola_new_dmxbuffer () |
void | ola_delete_dmxbuffer (ola::DmxBuffer *buffer) |
void | ola_set_dmxbuffer (ola::DmxBuffer *buffer, const uint8_t *data, unsigned int size) |
typedef void ola_set_dmxbuffer_t(ola::DmxBuffer *buffer, const uint8_t *data, unsigned int size) |
A function pointer to set the contents of a DmxBuffer.
To avoid the vtable penalty with DmxBuffer we expose a function to call Set(). If you want to access other methods in DmxBuffer please send a patch.