![]() |
RflySimSDK v3.05
RflySimSDK说明文档
|
Public 成员函数 | |
vrpn_Microsoft_Controller_Raw (vrpn_HidAcceptor *filter, const char *name, vrpn_Connection *c=0, vrpn_uint16 vendor=0, vrpn_uint16 product=0) | |
virtual void | mainloop (void)=0 |
![]() | |
vrpn_BaseClass (const char *name, vrpn_Connection *c=NULL) | |
![]() | |
vrpn_Connection * | connectionPtr () |
Returns a pointer to the connection this object is using | |
Protected 成员函数 | |
void | init_hid (void) |
void | on_data_received (size_t bytes, vrpn_uint8 *buffer) |
Derived class reimplements this callback. It is called whenever a read returns some data. | |
virtual void | decodePacket (size_t bytes, vrpn_uint8 *buffer)=0 |
int | register_types (void) |
![]() | |
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) |
![]() | |
void | send_data (size_t bytes, const vrpn_uint8 *buffer) |
Call this to send data to the device | |
void | send_feature_report (size_t bytes, const vrpn_uint8 *buffer) |
int | get_feature_report (size_t bytes, vrpn_uint8 *buffer) |
vrpn_HidInterface (vrpn_HidAcceptor *acceptor, vrpn_uint16 vendor=0, vrpn_uint16 product=0, hid_device *device=NULL) | |
vrpn_HidInterface (vrpn_HidAcceptor *acceptor, hid_device *device) | |
vrpn_HidInterface (const char *device_path, vrpn_HidAcceptor *acceptor, vrpn_uint16 vendor=0, vrpn_uint16 product=0) | |
virtual bool | connected () const |
Returns true iff the last device I/O succeeded | |
virtual void | update () |
virtual bool | reconnect () |
vrpn_uint16 | vendor () const |
vrpn_uint16 | product () const |
int | interface_number () const |
静态 Protected 成员函数 | |
static int VRPN_CALLBACK | on_connect (void *thisPtr, vrpn_HANDLERPARAM p) |
static int VRPN_CALLBACK | on_last_disconnect (void *thisPtr, vrpn_HANDLERPARAM p) |
![]() | |
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 | |
Protected 属性 | |
struct timeval | _timestamp |
vrpn_HidAcceptor * | _filter |
![]() | |
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 | |
![]() | |
vrpn_HidAcceptor * | m_acceptor |
This is the HidAcceptor we use when reconnecting. | |
bool | m_working |
vrpn_uint16 | m_vendor |
vrpn_uint16 | m_product |
int | m_interface |
vrpn_uint16 | m_vendor_sought |
What vendor we want | |
vrpn_uint16 | m_product_sought |
What product we want | |
额外继承的成员函数 | |
![]() | |
bool | shutup |
|
pure virtual |
Called once through each main loop iteration to handle updates. Remote object mainloop() should call client_mainloop() and then call d_connection->mainloop(). Server object mainloop() should service the device and then call server_mainloop(), but should not normally call d_connection->mainloop().
实现了 vrpn_BaseClass.
在 vrpn_Microsoft_Controller_Raw_Xbox_360_base, vrpn_Microsoft_Controller_Raw_Xbox_S, vrpn_Microsoft_SideWinder , 以及 vrpn_Microsoft_SideWinder_Precision_2 内被实现.
|
protectedvirtual |
Derived class reimplements this callback. It is called whenever a read returns some data.
WARNING! The data returned by this function differs when the device sends multiple report types and when it only has one. When it can have more than one, the report type is sent as the first byte. When it only has one, the report type is NOT included. This is the behavior of the HIDAPI library we are using. It is surprising to me, but that's how it behaves.
实现了 vrpn_HidInterface.
|
inlineprotectedvirtual |
Register the types of messages this device sends/receives. Return 0 on success, -1 on fail.
实现了 vrpn_BaseClass.