![]() |
RflySimSDK v3.05
RflySimSDK说明文档
|
Public 成员函数 | |
vrpn_Tracker_Fastrak (const char *name, vrpn_Connection *c, const char *port="/dev/ttyS1", long baud=19200, int enable_filtering=1, int numstations=vrpn_FASTRAK_MAX_STATIONS, const char *additional_reset_commands=NULL, int is900_timestamps=0) | |
int | add_fastrak_stylus_button (const char *button_device_name, int sensor, int numbuttons=1) |
int | add_is900_button (const char *button_device_name, int sensor, int numbuttons=5) |
int | add_is900_analog (const char *analog_device_name, int sensor, double c0Min=-1, double c0Low=0, double c0Hi=0, double c0Max=1, double c1Min=-1, double c1Low=0, double c1Hi=0, double c1Max=1) |
![]() | |
vrpn_Tracker_Serial (const char *name, vrpn_Connection *c, const char *port="/dev/ttyS1", long baud=38400) | |
virtual void | mainloop () |
![]() | |
vrpn_Tracker (const char *name, vrpn_Connection *c=NULL, const char *tracker_cfg_file_name=NULL) | |
int | read_config_file (FILE *config_file, const char *tracker_name) |
void | print_latest_report (void) |
int | register_server_handlers (void) |
void | get_local_t2r (vrpn_float64 *vec, vrpn_float64 *quat) |
void | get_local_u2s (vrpn_int32 sensor, vrpn_float64 *vec, vrpn_float64 *quat) |
![]() | |
vrpn_BaseClass (const char *name, vrpn_Connection *c=NULL) | |
![]() | |
vrpn_Connection * | connectionPtr () |
Returns a pointer to the connection this object is using | |
Protected 成员函数 | |
virtual int | get_report (void) |
virtual void | reset () |
Reset the tracker. | |
int | set_sensor_output_format (int sensor) |
Augments the basic Fastrak format to include IS900 features if needed | |
int | report_length (int sensor) |
Augments the basic Fastrak report length to include IS900 features if needed | |
![]() | |
virtual void | send_report (void) |
![]() | |
bool | ensure_enough_unit2sensors (unsigned num) |
virtual int | register_types (void) |
virtual int | encode_to (char *buf) |
virtual int | encode_vel_to (char *buf) |
virtual int | encode_acc_to (char *buf) |
virtual int | encode_tracker2room_to (char *buf) |
virtual int | encode_unit2sensor_to (char *buf) |
virtual int | encode_workspace_to (char *buf) |
![]() | |
virtual int | init (void) |
virtual int | register_senders (void) |
![]() | |
int | register_autodeleted_handler (vrpn_int32 type, vrpn_MESSAGEHANDLER handler, void *userdata, vrpn_int32 sender=vrpn_ANY_SENDER) |
int | send_text_message (const char *msg, struct timeval timestamp, vrpn_TEXT_SEVERITY type=vrpn_TEXT_NORMAL, vrpn_uint32 level=0) |
Sends a NULL-terminated text message from the device d_sender_id | |
SendTextMessageBoundCall | send_text_message (vrpn_TEXT_SEVERITY type=vrpn_TEXT_NORMAL) |
void | server_mainloop (void) |
void | client_mainloop (void) |
Protected 属性 | |
struct timeval | reset_time |
int | do_filter |
int | num_stations |
char | add_reset_cmd [2048] |
int | num_resets |
bool | really_fastrak |
int | do_is900_timestamps |
struct timeval | is900_zerotime |
vrpn_Button_Server * | is900_buttons [vrpn_FASTRAK_MAX_STATIONS] |
vrpn_Clipping_Analog_Server * | is900_analogs [vrpn_FASTRAK_MAX_STATIONS] |
vrpn_uint32 | REPORT_LEN |
![]() | |
char | portname [VRPN_TRACKER_BUF_SIZE] |
long | baudrate |
int | serial_fd |
unsigned char | buffer [VRPN_TRACKER_BUF_SIZE] |
vrpn_uint32 | bufcount |
![]() | |
vrpn_int32 | position_m_id |
vrpn_int32 | velocity_m_id |
vrpn_int32 | accel_m_id |
vrpn_int32 | tracker2room_m_id |
vrpn_int32 | unit2sensor_m_id |
vrpn_int32 | request_t2r_m_id |
vrpn_int32 | request_u2s_m_id |
vrpn_int32 | request_workspace_m_id |
vrpn_int32 | workspace_m_id |
vrpn_int32 | update_rate_id |
vrpn_int32 | connection_dropped_m_id |
vrpn_int32 | reset_origin_m_id |
vrpn_int32 | d_sensor |
vrpn_float64 | pos [3] |
vrpn_float64 | d_quat [4] |
vrpn_float64 | vel [3] |
vrpn_float64 | vel_quat [4] |
vrpn_float64 | vel_quat_dt |
vrpn_float64 | acc [3] |
vrpn_float64 | acc_quat [4] |
vrpn_float64 | acc_quat_dt |
struct timeval | timestamp |
vrpn_int32 | frame_count |
struct timeval | watchdog_timestamp |
vrpn_float64 | tracker2room [3] |
vrpn_float64 | tracker2room_quat [4] |
vrpn_int32 | num_sensors |
vrpn_Tracker_Pos * | unit2sensor |
vrpn_Tracker_Quat * | unit2sensor_quat |
unsigned | num_unit2sensors |
vrpn_float64 | workspace_min [3] |
vrpn_float64 | workspace_max [3] |
int | status |
![]() | |
vrpn_Connection * | d_connection |
Connection that this object talks to | |
char * | d_servicename |
vrpn_int32 | d_sender_id |
part | |
vrpn_int32 | d_text_message_id |
ID for text messages | |
vrpn_int32 | d_ping_message_id |
Ask the server if they are there | |
vrpn_int32 | d_pong_message_id |
Server telling that it is there | |
额外继承的成员函数 | |
![]() | |
static int VRPN_CALLBACK | handle_t2r_request (void *userdata, vrpn_HANDLERPARAM p) |
static int VRPN_CALLBACK | handle_u2s_request (void *userdata, vrpn_HANDLERPARAM p) |
static int VRPN_CALLBACK | handle_workspace_request (void *userdata, vrpn_HANDLERPARAM p) |
![]() | |
bool | shutup |
![]() | |
static int | encode_text_message_to_buffer (char *buf, vrpn_TEXT_SEVERITY severity, vrpn_uint32 level, const char *msg) |
static int | decode_text_message_from_buffer (char *msg, vrpn_TEXT_SEVERITY *severity, vrpn_uint32 *level, const char *buf) |
Decodes the body of the text message from a buffer from the connection | |
vrpn_Tracker_Fastrak | ( | const char * | name, |
vrpn_Connection * | c, | ||
const char * | port = "/dev/ttyS1", | ||
long | baud = 19200, | ||
int | enable_filtering = 1, | ||
int | numstations = vrpn_FASTRAK_MAX_STATIONS, | ||
const char * | additional_reset_commands = NULL, | ||
int | is900_timestamps = 0 ) |
The constructor is given the name of the tracker (the name of the sender it should use), the connection on which it is to send its messages, the name of the serial port it is to open (default is /dev/ttyS1 (first serial port in Linux)), the baud rate at which it is to communicate (default 19200), whether filtering is enabled (default yes), and the number of stations that are possible on this Fastrak (default 4). The station select switches on the front of the Fastrak determine which stations are active. The final parameter is a string that can contain additional commands that are set to the tracker as part of its reset routine. These might be used to set the hemisphere or other things that are not normally included; see the Fastrak manual for a list of these. There can be multiple lines of them but putting <CR> into the string.
int add_is900_analog | ( | const char * | analog_device_name, |
int | sensor, | ||
double | c0Min = -1, | ||
double | c0Low = 0, | ||
double | c0Hi = 0, | ||
double | c0Max = 1, | ||
double | c1Min = -1, | ||
double | c1Low = 0, | ||
double | c1Hi = 0, | ||
double | c1Max = 1 ) |
Add the analog part of an IS900 joystick device to one of the sensors This allows configuration of an InterSense IS-900 The optional parameters specify the clipping and scaling to take the reports from the two joystick axes into the range [-1..1]. The default is unscaled.
int add_is900_button | ( | const char * | button_device_name, |
int | sensor, | ||
int | numbuttons = 5 ) |
Add an IS900 button device to one of the sensors This allows configuration of an InterSense IS-900
|
protectedvirtual |
Gets a report if one is available, returns 0 if not, 1 if complete report.
实现了 vrpn_Tracker_Serial.
|
protected |
Augments the basic Fastrak report length to include IS900 features if needed
|
protectedvirtual |
Reset the tracker.
实现了 vrpn_Tracker_Serial.
|
protected |
Augments the basic Fastrak format to include IS900 features if needed