Work in progress OSC Control manager

Support for log, output and source targets. Now needs to be developed for all attributes.
This commit is contained in:
Bruno Herbelin
2021-12-19 01:11:29 +01:00
parent a612154123
commit 3a9c6f56bf
8 changed files with 213 additions and 14 deletions

View File

@@ -3,6 +3,39 @@
#include "NetworkToolkit.h"
#define OSC_SEPARATOR '/'
#define OSC_LOG "log"
#define OSC_LOG_INFO "info"
#define OSC_OUTPUT "output"
#define OSC_OUTPUT_ENABLE "enable"
#define OSC_OUTPUT_DISABLE "disable"
#define OSC_OUTPUT_FADING "fading"
#define OSC_CURRENT "current"
#define OSC_CURRENT_NONE "none"
#define OSC_CURRENT_NEXT "next"
#define OSC_CURRENT_PREVIOUS "previous"
#define OSC_SOURCE_PLAY "play"
#define OSC_SOURCE_PAUSE "pause"
#define OSC_SOURCE_ALPHA "alpha"
#define OSC_SOURCE_ALPHA_XY "alphaXY"
#define OSC_SOURCE_ALPHA_X "alphaX"
#define OSC_SOURCE_ALPHA_Y "alphaY"
#define OSC_SOURCE_TRANSPARENT "transparency"
#define OSC_SOURCE_POSITION "position"
#define OSC_SOURCE_POSITION_X "positionX"
#define OSC_SOURCE_POSITION_Y "positionY"
#define OSC_SOURCE_SCALE "scale"
#define OSC_SOURCE_SCALE_X "scaleX"
#define OSC_SOURCE_SCALE_Y "scaleY"
#define OSC_SOURCE_ANGLE "angle"
class Session;
class Source;
class Control
{
// Private Constructor
@@ -33,6 +66,12 @@ protected:
const IpEndpointName& remoteEndpoint );
};
void setOutputAttribute(const std::string &attribute,
osc::ReceivedMessageArgumentStream arguments);
void setSourceAttribute(Source *target, const std::string &attribute,
osc::ReceivedMessageArgumentStream arguments);
private:
static void listen();