26void error(
int num,
const char *m,
const char *path);
28int generic_handler(
const char *path,
const char *types,
lo_arg ** argv,
29 int argc,
void *data,
void *user_data);
31int foo_handler(
const char *path,
const char *types,
lo_arg ** argv,
32 int argc,
void *data,
void *user_data);
34int blobtest_handler(
const char *path,
const char *types,
lo_arg ** argv,
35 int argc,
void *data,
void *user_data);
37int quit_handler(
const char *path,
const char *types,
lo_arg ** argv,
38 int argc,
void *data,
void *user_data);
73void error(
int num,
const char *msg,
const char *path)
75 printf(
"liblo server error %d in path %s: %s\n", num, path, msg);
81int generic_handler(
const char *path,
const char *types,
lo_arg ** argv,
82 int argc,
void *data,
void *user_data)
86 printf(
"path: <%s>\n", path);
87 for (i = 0; i < argc; i++) {
88 printf(
"arg %d '%c' ", i, types[i]);
98int foo_handler(
const char *path,
const char *types,
lo_arg ** argv,
99 int argc,
void *data,
void *user_data)
102 printf(
"%s <- f:%f, i:%d\n\n", path, argv[0]->f, argv[1]->i);
108int blobtest_handler(
const char *path,
const char *types,
lo_arg ** argv,
109 int argc,
void *data,
void *user_data)
112 int i, size = argv[0]->
blob.size;
125 for (i=0; i<6 && i<blobsize; i++)
126 if (blobdata[i] >=
'A' && blobdata[i] <=
'Z')
127 mydata[i] = blobdata[i];
132 printf(
"%s <- length:%d '%s'\n", path, size, mydata);
138int quit_handler(
const char *path,
const char *types,
lo_arg ** argv,
139 int argc,
void *data,
void *user_data)
142 printf(
"quiting\n\n");
lo_type
An enumeration of the OSC types liblo can send and receive.
uint32_t lo_blob_datasize(lo_blob b)
Return the amount of valid data in a lo_blob object.
void * lo_blob_dataptr(lo_blob b)
Return a pointer to the start of the blob data to allow contents to be changed.
void lo_arg_pp(lo_type type, void *data)
Pretty-print a set of typed arguments.
int lo_server_thread_start(lo_server_thread st)
Start the server thread.
lo_server_thread lo_server_thread_new(const char *port, lo_err_handler err_h)
Create a new server thread to handle incoming OSC messages.
void lo_server_thread_free(lo_server_thread st)
Free memory taken by a server thread.
lo_method lo_server_thread_add_method(lo_server_thread st, const char *path, const char *typespec, lo_method_handler h, const void *user_data)
Add an OSC method to the specifed server thread.
void * lo_server_thread
An object representing a thread containing an OSC server.
void * lo_blob
A object to store an opaque binary data object.
Union used to read values from incoming messages.