00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017 #ifndef LO_H
00018 #define LO_H
00019
00020 #ifdef __cplusplus
00021 extern "C" {
00022 #endif
00023
00028 #include "lo/lo_endian.h"
00029 #include "lo/lo_types.h"
00030 #include "lo/lo_osc_types.h"
00031 #include "lo/lo_errors.h"
00032 #include "lo/lo_lowlevel.h"
00033
00056 lo_address lo_address_new(const char *host, const char *port);
00057
00072 lo_address lo_address_new_with_proto(int proto, const char *host, const char *port);
00073
00079 lo_address lo_address_new_from_url(const char *url);
00080
00084 void lo_address_free(lo_address t);
00085
00096 void lo_address_set_ttl(lo_address t, int ttl);
00097
00104 int lo_address_get_ttl(lo_address t);
00105
00123 int lo_send(lo_address targ, const char *path, const char *type, ...);
00124
00148 int lo_send_from(lo_address targ, lo_server from, lo_timetag ts,
00149 const char *path, const char *type, ...);
00150
00172 int lo_send_timestamped(lo_address targ, lo_timetag ts, const char *path,
00173 const char *type, ...);
00174
00179 int lo_address_errno(lo_address a);
00180
00185 const char *lo_address_errstr(lo_address a);
00186
00202 lo_server_thread lo_server_thread_new(const char *port, lo_err_handler err_h);
00203
00221 lo_server_thread lo_server_thread_new_multicast(const char *group, const char *port,
00222 lo_err_handler err_h);
00223
00240 lo_server_thread lo_server_thread_new_with_proto(const char *port, int proto,
00241 lo_err_handler err_h);
00242
00248 void lo_server_thread_free(lo_server_thread st);
00249
00264 lo_method lo_server_thread_add_method(lo_server_thread st, const char *path,
00265 const char *typespec, lo_method_handler h,
00266 void *user_data);
00275 void lo_server_thread_del_method(lo_server_thread st, const char *path,
00276 const char *typespec);
00277
00284 int lo_server_thread_start(lo_server_thread st);
00285
00292 int lo_server_thread_stop(lo_server_thread st);
00293
00297 int lo_server_thread_get_port(lo_server_thread st);
00298
00304 char *lo_server_thread_get_url(lo_server_thread st);
00305
00312 lo_server lo_server_thread_get_server(lo_server_thread st);
00313
00316 int lo_server_thread_events_pending(lo_server_thread st);
00317
00325 lo_blob lo_blob_new(int32_t size, const void *data);
00326
00330 void lo_blob_free(lo_blob b);
00331
00337 uint32_t lo_blob_datasize(lo_blob b);
00338
00343 void *lo_blob_dataptr(lo_blob b);
00344
00347 #include "lo/lo_macros.h"
00348
00349 #ifdef __cplusplus
00350 }
00351 #endif
00352
00353 #endif