Open Lighting Architecture  0.9.5
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
Public Types | Public Member Functions | List of all members
ola::OlaServerServiceImpl Class Reference

Detailed Description

The OLA Server RPC methods.

After the RPC system un-marshalls the data, it invokes the methods of this class. This therefore contains all the methods a client can invoke on the server.

There is no client specific member data, so a single OlaServerServiceImpl is created. Any OLA client data is passed via the user data in the ola::rpc::RpcSession object, accessible via the ola::rpc::RpcController.

Public Types

typedef Callback0< void > ReloadPluginsCallback
 A Callback used to reload all the plugins.

Public Member Functions

 OlaServerServiceImpl (class UniverseStore *universe_store, class DeviceManager *device_manager, class PluginManager *plugin_manager, class PortManager *port_manager, class ClientBroker *broker, const class TimeStamp *wake_up_time, ReloadPluginsCallback *reload_plugins_callback)
 Create a new OlaServerServiceImpl.
void GetDmx (ola::rpc::RpcController *controller, const ola::proto::UniverseRequest *request, ola::proto::DmxData *response, ola::rpc::RpcService::CompletionCallback *done)
 Returns the current DMX values for a particular universe.
void RegisterForDmx (ola::rpc::RpcController *controller, const ola::proto::RegisterDmxRequest *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Register a client to receive DMX data.
void UpdateDmxData (ola::rpc::RpcController *controller, const ola::proto::DmxData *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Update the DMX values for a single universe.
void StreamDmxData (ola::rpc::RpcController *controller, const ::ola::proto::DmxData *request,::ola::proto::STREAMING_NO_RESPONSE *response, ola::rpc::RpcService::CompletionCallback *done)
 Handle a streaming DMX update, no response is sent.
void SetUniverseName (ola::rpc::RpcController *controller, const ola::proto::UniverseNameRequest *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Sets the name of a universe.
void SetMergeMode (ola::rpc::RpcController *controller, const ola::proto::MergeModeRequest *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Set the merge mode for a universe.
void PatchPort (ola::rpc::RpcController *controller, const ola::proto::PatchPortRequest *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Patch a port to a universe.
void SetPortPriority (ola::rpc::RpcController *controller, const ola::proto::PortPriorityRequest *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Set the priority of one or more ports.
void GetUniverseInfo (ola::rpc::RpcController *controller, const ola::proto::OptionalUniverseRequest *request, ola::proto::UniverseInfoReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Returns information on the active universes.
void GetPlugins (ola::rpc::RpcController *controller, const ola::proto::PluginListRequest *request, ola::proto::PluginListReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Return info on available plugins.
void ReloadPlugins (ola::rpc::RpcController *controller, const ::ola::proto::PluginReloadRequest *request,::ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Reload the plugins.
void GetPluginDescription (ola::rpc::RpcController *controller, const ola::proto::PluginDescriptionRequest *request, ola::proto::PluginDescriptionReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Return the description for a plugin.
void GetPluginState (ola::rpc::RpcController *controller, const ola::proto::PluginStateRequest *request, ola::proto::PluginStateReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Return the state for a plugin.
void GetDeviceInfo (ola::rpc::RpcController *controller, const ola::proto::DeviceInfoRequest *request, ola::proto::DeviceInfoReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Return information on available devices.
void GetCandidatePorts (ola::rpc::RpcController *controller, const ola::proto::OptionalUniverseRequest *request, ola::proto::DeviceInfoReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Handle a GetCandidatePorts request.
void ConfigureDevice (ola::rpc::RpcController *controller, const ola::proto::DeviceConfigRequest *request, ola::proto::DeviceConfigReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Handle a ConfigureDevice request.
void GetUIDs (ola::rpc::RpcController *controller, const ola::proto::UniverseRequest *request, ola::proto::UIDListReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Fetch the UID list for a universe.
void ForceDiscovery (ola::rpc::RpcController *controller, const ola::proto::DiscoveryRequest *request, ola::proto::UIDListReply *response, ola::rpc::RpcService::CompletionCallback *done)
 Force RDM discovery for a universe.
void RDMCommand (ola::rpc::RpcController *controller, const ::ola::proto::RDMRequest *request, ola::proto::RDMResponse *response, ola::rpc::RpcService::CompletionCallback *done)
 Handle an RDM Command.
void RDMDiscoveryCommand (ola::rpc::RpcController *controller, const ::ola::proto::RDMDiscoveryRequest *request, ola::proto::RDMResponse *response, ola::rpc::RpcService::CompletionCallback *done)
 Handle an RDM Discovery Command.
void SetSourceUID (ola::rpc::RpcController *controller, const ::ola::proto::UID *request, ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Set this client's source UID.
void SendTimeCode (ola::rpc::RpcController *controller, const ::ola::proto::TimeCode *request,::ola::proto::Ack *response, ola::rpc::RpcService::CompletionCallback *done)
 Send Timecode.
template<class PortClass >
void PopulatePort (const PortClass &port, PortInfo *port_info) const

Member Function Documentation

void ola::OlaServerServiceImpl::RDMDiscoveryCommand ( ola::rpc::RpcController controller,
const ::ola::proto::RDMDiscoveryRequest *  request,
ola::proto::RDMResponse *  response,
ola::rpc::RpcService::CompletionCallback done 
)

Handle an RDM Discovery Command.

This is used by the RDM responder tests. Normally clients don't need to send raw discovery packets and can just use the GetUIDs method.


The documentation for this class was generated from the following files: