Get/set

From XDIF

Jump to: navigation, search

This is part of OSC Plug And Play.

Contents

Draft

get

/input/5/level

Reply:

/osc/reply /input/5/level 0.9

set

/input/5/level 1.3

Reply:

/osc/reply /input/5/level 1.0

Agreed standard

OSCit

OSCit uses a REST based paradigm. GET (get value) and PUT (set value) operations are recognized through the presence of arguments or not:

  • no argument / nil argument ==> GET
  • argument ==> PUT

Example:

get

/input/5/level

Reply:

/.reply /input/5/level 0.9

set

/input/5/level 1.3

Reply:

/.reply /input/5/level 1.0

This also enables us to have an index based OSC path resolution system:

// enable path
osc_index_.set("/some/super/special/path", some_c_function);

// call
if (osc_index_.get("/some/super/special/path", &function)) (*function)(value);

AVBC

get

Example of a"get" operation in AVBC to get input level of input number 5

/input/level 5

Reply:

/input/level 5, 0.8

set

Example of a "set" operation in AVBC:

/input/level 5, 1.3

Reply (example with actual set value clipped to 1.0):

/input/level 5, 1.0


Real-time synchronisation of distributed state

We need to ensure both reply delivery and proper notifications over a transport layer that does not guarantee packet delivery (UDP). Here are some pointers that we could study:

Personal tools