/**************************************************************************************************/ /* */ /* Copyright (C) 2004 Bauhaus University Weimar */ /* Released into the public domain on 6/23/2007 as part of the VRPN project */ /* by Jan P. Springer. */ /* */ /*************************************************************************************************/ /* */ /* module : vrpn_Event.h */ /* project : */ /* description: provide functionality for event interface */ /* */ /**************************************************************************************************/ #ifndef _VRPN_EVENT_H_ #define _VRPN_EVENT_H_ #include "vrpn_Shared.h" // For struct timeval namespace vrpn_Event { // the struct read by the system when reading struct input_event { struct timeval time; unsigned short type; unsigned short code; unsigned int value; }; // open the specified event interface // return a valid handle to the event interface or -1 if the open fails // file - full path of the event interface file int vrpn_open_event( const char* file); // close the event interface // fd - handle to the event interface void vrpn_close_event( const int fd); // read from the interface // returns the number of bytes read successfully // fd - handle for the event interface // data - handle to the read data // max_elements - maximum number of elements to read int vrpn_read_event( int fd, input_event * data, int max_elements); } #endif // _VRPN_EVENT_H_