16#if defined(VRPN_USE_LIBUSB_1_0)
89 void flush_input_from_ludl(
void);
90 bool send_usbmac_command(
unsigned device,
unsigned command,
unsigned index,
int value);
92 bool ludl_axis_moving(
unsigned axis);
93 bool move_axis_to_position(
int axis,
int position);
95 bool ludl_axis_position(
unsigned axis, vrpn_int32 *position_return);
102 vrpn_float64 *_axis_destination;
Generic connection class not specific to the transport mechanism.
vrpn_uint8 _inbuffer[_INBUFFER_SIZE]
void report_changes(vrpn_uint32 class_of_service=vrpn_CONNECTION_RELIABLE)
int register_types(void)
Register the types of messages this device sends/receives. Return 0 on success, -1 on fail.
bool interpret_usbmac_ascii_response(const vrpn_uint8 *buffer, int *device_return, int *command_return, int *index_return, int *value_return)
static int VRPN_CALLBACK handle_connect_message(void *userdata, vrpn_HANDLERPARAM p)
Responds to a connection request with a report of the values.
static int VRPN_CALLBACK handle_request_message(void *userdata, vrpn_HANDLERPARAM p)
Responds to a request to change one of the values by setting the channel to that value.
virtual void mainloop()
Called once through each main loop iteration to handle updates. Remote object mainloop() should call ...
void report(vrpn_uint32 class_of_service=vrpn_CONNECTION_RELIABLE)
struct libusb_device_handle * _device_handle
struct timeval _timestamp
vrpn_LUDL_USBMAC6000(const char *name, vrpn_Connection *c=0, bool do_recenter=false)
virtual ~vrpn_LUDL_USBMAC6000()
struct libusb_context * _context
static int VRPN_CALLBACK handle_request_channels_message(void *userdata, vrpn_HANDLERPARAM p)
Responds to a request to change multiple channels at once.
static const unsigned _INBUFFER_SIZE
This structure is what is passed to a vrpn_Connection message callback.
const vrpn_uint32 vrpn_CONNECTION_RELIABLE
Classes of service for messages, specify multiple by ORing them together Priority of satisfying these...