vrpn 07.35
Virtual Reality Peripheral Network
|
#include <vrpn_ForceDevice.h>
Public Types | |
enum | ConstraintGeometry { NO_CONSTRAINT , POINT_CONSTRAINT , LINE_CONSTRAINT , PLANE_CONSTRAINT } |
Public Member Functions | |
vrpn_ForceDevice (const char *name, vrpn_Connection *c) | |
virtual | ~vrpn_ForceDevice (void) |
void | print_report (void) |
void | print_plane (void) |
void | setSurfaceKspring (vrpn_float32 k) |
void | setSurfaceKdamping (vrpn_float32 d) |
void | setSurfaceFstatic (vrpn_float32 ks) |
void | setSurfaceFdynamic (vrpn_float32 kd) |
void | setRecoveryTime (int rt) |
void | setSurfaceKadhesionNormal (vrpn_float32 k) |
void | setSurfaceKadhesionLateral (vrpn_float32 k) |
void | setSurfaceBuzzFrequency (vrpn_float32 freq) |
void | setSurfaceBuzzAmplitude (vrpn_float32 amp) |
void | setSurfaceTextureWavelength (vrpn_float32 wl) |
void | setSurfaceTextureAmplitude (vrpn_float32 amp) |
void | setCustomEffect (vrpn_int32 effectId, vrpn_float32 *params=NULL, vrpn_uint32 nbParams=0) |
void | setFF_Origin (vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
void | setFF_Origin (vrpn_float32 x[3]) |
void | setFF_Force (vrpn_float32 fx, vrpn_float32 fy, vrpn_float32 fz) |
void | setFF_Force (vrpn_float32 f[3]) |
void | setFF_Jacobian (vrpn_float32 dfxdx, vrpn_float32 dfxdy, vrpn_float32 dfxdz, vrpn_float32 dfydx, vrpn_float32 dfydy, vrpn_float32 dfydz, vrpn_float32 dfzdx, vrpn_float32 dfzdy, vrpn_float32 dfzdz) |
void | setFF_Radius (vrpn_float32 r) |
void | set_plane (vrpn_float32 *p) |
void | set_plane (vrpn_float32 *p, vrpn_float32 d) |
void | set_plane (vrpn_float32 a, vrpn_float32 b, vrpn_float32 c, vrpn_float32 d) |
void | sendError (int error_code) |
int | getRecoveryTime (void) |
int | connectionAvailable (void) |
![]() | |
vrpn_BaseClass (const char *name, vrpn_Connection *c=NULL) | |
Names the device and assigns or opens connection, calls registration methods. | |
virtual | ~vrpn_BaseClass () |
virtual void | mainloop ()=0 |
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_BaseClassUnique () | |
virtual | ~vrpn_BaseClassUnique () |
Unregister all of the message handlers that were to be autodeleted. | |
vrpn_Connection * | connectionPtr () |
Returns a pointer to the connection this object is using. | |
Protected Member Functions | |
virtual int | register_types (void) |
Register the types of messages this device sends/receives. Return 0 on success, -1 on fail. | |
![]() | |
virtual int | init (void) |
Initialize things that the constructor can't. Returns 0 on success, -1 on failure. | |
virtual int | register_senders (void) |
Register the sender for this device (by default, the name of the device). Return 0 on success, -1 on fail. | |
![]() | |
int | register_autodeleted_handler (vrpn_int32 type, vrpn_MESSAGEHANDLER handler, void *userdata, vrpn_int32 sender=vrpn_ANY_SENDER) |
Registers a handler with the connection, and remembers to delete at destruction. | |
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) |
Returns an object you can stream into to send a text message from the device like send_text_message(vrpn_TEXT_WARNING) << "Value of i is: " << i; This use requires including vrpn_SendTextMessageStreamProxy.h. | |
void | server_mainloop (void) |
Handles functions that all servers should provide in their mainloop() (ping/pong, for example) Should be called by all servers in their mainloop() | |
void | client_mainloop (void) |
Handles functions that all clients should provide in their mainloop() (warning of no server, for example) Should be called by all clients in their mainloop() | |
Static Protected Member Functions | |
static char * | encode_custom_effect (vrpn_int32 &len, vrpn_uint32 effectId, const vrpn_float32 *params, vrpn_uint32 nbParams) |
static char * | encode_force (vrpn_int32 &length, const vrpn_float64 *force) |
static char * | encode_scp (vrpn_int32 &length, const vrpn_float64 *pos, const vrpn_float64 *quat) |
static char * | encode_plane (vrpn_int32 &length, const vrpn_float32 *plane, const vrpn_float32 kspring, const vrpn_float32 kdamp, const vrpn_float32 fdyn, const vrpn_float32 fstat, const vrpn_int32 plane_index, const vrpn_int32 n_rec_cycles) |
static char * | encode_surface_effects (vrpn_int32 &len, const vrpn_float32 k_adhesion_norm, const vrpn_float32 k_adhesion_lat, const vrpn_float32 tex_amp, const vrpn_float32 tex_wl, const vrpn_float32 buzz_amp, const vrpn_float32 buzz_freq) |
static char * | encode_vertex (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 vertNum, const vrpn_float32 x, const vrpn_float32 y, const vrpn_float32 z) |
static char * | encode_normal (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 vertNum, const vrpn_float32 x, const vrpn_float32 y, const vrpn_float32 z) |
static char * | encode_triangle (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 triNum, const vrpn_int32 vert0, const vrpn_int32 vert1, const vrpn_int32 vert2, const vrpn_int32 norm0, const vrpn_int32 norm1, const vrpn_int32 norm2) |
static char * | encode_removeTriangle (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 triNum) |
static char * | encode_updateTrimeshChanges (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_float32 kspring, const vrpn_float32 kdamp, const vrpn_float32 fdyn, const vrpn_float32 fstat) |
static char * | encode_setTrimeshType (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 type) |
static char * | encode_trimeshTransform (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_float32 homMatrix[16]) |
static char * | encode_addObject (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 ParentNum) |
static char * | encode_addObjectExScene (vrpn_int32 &len, const vrpn_int32 objNum) |
static char * | encode_objectPosition (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_float32 Pos[3]) |
static char * | encode_objectOrientation (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_float32 axis[3], const vrpn_float32 angle) |
static char * | encode_objectScale (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_float32 Scale[3]) |
static char * | encode_removeObject (vrpn_int32 &len, const vrpn_int32 objNum) |
static char * | encode_clearTrimesh (vrpn_int32 &len, const vrpn_int32 objNum) |
static char * | encode_moveToParent (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_int32 parentNum) |
static char * | encode_setHapticOrigin (vrpn_int32 &len, const vrpn_float32 Pos[3], const vrpn_float32 axis[3], const vrpn_float32 angle) |
static char * | encode_setSceneOrigin (vrpn_int32 &len, const vrpn_float32 Pos[3], const vrpn_float32 axis[3], const vrpn_float32 angle) |
static char * | encode_setHapticScale (vrpn_int32 &len, const vrpn_float32 Scale) |
static char * | encode_setObjectIsTouchable (vrpn_int32 &len, const vrpn_int32 objNum, const vrpn_bool isTouchable) |
static char * | encode_forcefield (vrpn_int32 &len, const vrpn_float32 origin[3], const vrpn_float32 force[3], const vrpn_float32 jacobian[3][3], const vrpn_float32 radius) |
static char * | encode_error (vrpn_int32 &len, const vrpn_int32 error_code) |
static vrpn_int32 | decode_custom_effect (const char *buffer, const vrpn_int32 len, vrpn_uint32 *effectId, vrpn_float32 **params, vrpn_uint32 *nbParams) |
static vrpn_int32 | decode_force (const char *buffer, const vrpn_int32 len, vrpn_float64 *force) |
static vrpn_int32 | decode_scp (const char *buffer, const vrpn_int32 len, vrpn_float64 *pos, vrpn_float64 *quat) |
static vrpn_int32 | decode_plane (const char *buffer, const vrpn_int32 len, vrpn_float32 *plane, vrpn_float32 *kspring, vrpn_float32 *kdamp, vrpn_float32 *fdyn, vrpn_float32 *fstat, vrpn_int32 *plane_index, vrpn_int32 *n_rec_cycles) |
static vrpn_int32 | decode_surface_effects (const char *buffer, const vrpn_int32 len, vrpn_float32 *k_adhesion_norm, vrpn_float32 *k_adhesion_lat, vrpn_float32 *tex_amp, vrpn_float32 *tex_wl, vrpn_float32 *buzz_amp, vrpn_float32 *buzz_freq) |
static vrpn_int32 | decode_vertex (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *vertNum, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static vrpn_int32 | decode_normal (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *vertNum, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static vrpn_int32 | decode_triangle (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *triNum, vrpn_int32 *vert0, vrpn_int32 *vert1, vrpn_int32 *vert2, vrpn_int32 *norm0, vrpn_int32 *norm1, vrpn_int32 *norm2) |
static vrpn_int32 | decode_removeTriangle (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *triNum) |
static vrpn_int32 | decode_updateTrimeshChanges (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_float32 *kspring, vrpn_float32 *kdamp, vrpn_float32 *fdyn, vrpn_float32 *fstat) |
static vrpn_int32 | decode_setTrimeshType (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *type) |
static vrpn_int32 | decode_trimeshTransform (const char *buffer, const vrpn_int32 len, vrpn_int32 *objNum, vrpn_float32 homMatrix[16]) |
static vrpn_int32 | decode_addObject (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *ParentNum) |
static vrpn_int32 | decode_addObjectExScene (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum) |
static vrpn_int32 | decode_objectPosition (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum, vrpn_float32 Pos[3]) |
static vrpn_int32 | decode_objectOrientation (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum, vrpn_float32 axis[3], vrpn_float32 *angle) |
static vrpn_int32 | decode_objectScale (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum, vrpn_float32 Scale[3]) |
static vrpn_int32 | decode_removeObject (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum) |
static vrpn_int32 | decode_clearTrimesh (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum) |
static vrpn_int32 | decode_moveToParent (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum, vrpn_int32 *parentNum) |
static vrpn_int32 | decode_setHapticOrigin (const char *buffer, vrpn_int32 len, vrpn_float32 Pos[3], vrpn_float32 axis[3], vrpn_float32 *angle) |
static vrpn_int32 | decode_setHapticScale (const char *buffer, vrpn_int32 len, vrpn_float32 *Scale) |
static vrpn_int32 | decode_setSceneOrigin (const char *buffer, vrpn_int32 len, vrpn_float32 Pos[3], vrpn_float32 axis[3], vrpn_float32 *angle) |
static vrpn_int32 | decode_setObjectIsTouchable (const char *buffer, vrpn_int32 len, vrpn_int32 *objNum, vrpn_bool *isTouchable) |
static vrpn_int32 | decode_forcefield (const char *buffer, const vrpn_int32 len, vrpn_float32 origin[3], vrpn_float32 force[3], vrpn_float32 jacobian[3][3], vrpn_float32 *radius) |
static vrpn_int32 | decode_error (const char *buffer, const vrpn_int32 len, vrpn_int32 *error_code) |
static char * | encode_enableConstraint (vrpn_int32 &len, vrpn_int32 enable) |
static vrpn_int32 | decode_enableConstraint (const char *buffer, const vrpn_int32 len, vrpn_int32 *enable) |
static char * | encode_setConstraintMode (vrpn_int32 &len, ConstraintGeometry mode) |
static vrpn_int32 | decode_setConstraintMode (const char *buffer, const vrpn_int32 len, ConstraintGeometry *mode) |
static char * | encode_setConstraintPoint (vrpn_int32 &len, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
static vrpn_int32 | decode_setConstraintPoint (const char *buffer, const vrpn_int32 len, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static char * | encode_setConstraintLinePoint (vrpn_int32 &len, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
static vrpn_int32 | decode_setConstraintLinePoint (const char *buffer, const vrpn_int32 len, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static char * | encode_setConstraintLineDirection (vrpn_int32 &len, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
static vrpn_int32 | decode_setConstraintLineDirection (const char *buffer, const vrpn_int32 len, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static char * | encode_setConstraintPlanePoint (vrpn_int32 &len, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
static vrpn_int32 | decode_setConstraintPlanePoint (const char *buffer, const vrpn_int32 len, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static char * | encode_setConstraintPlaneNormal (vrpn_int32 &len, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
static vrpn_int32 | decode_setConstraintPlaneNormal (const char *buffer, const vrpn_int32 len, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
static char * | encode_setConstraintKSpring (vrpn_int32 &len, vrpn_float32 k) |
static vrpn_int32 | decode_setConstraintKSpring (const char *buffer, const vrpn_int32 len, vrpn_float32 *k) |
static char * | encodePoint (vrpn_int32 &len, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) |
static vrpn_int32 | decodePoint (const char *buffer, const vrpn_int32 len, vrpn_float32 *x, vrpn_float32 *y, vrpn_float32 *z) |
![]() | |
static int | encode_text_message_to_buffer (char *buf, vrpn_TEXT_SEVERITY severity, vrpn_uint32 level, const char *msg) |
Encodes the body of the text message into a buffer, preparing for sending. | |
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. | |
Additional Inherited Members | |
![]() | |
bool | shutup |
Definition at line 39 of file vrpn_ForceDevice.h.
Enumerator | |
---|---|
NO_CONSTRAINT | |
POINT_CONSTRAINT | |
LINE_CONSTRAINT | |
PLANE_CONSTRAINT |
Definition at line 131 of file vrpn_ForceDevice.h.
vrpn_ForceDevice::vrpn_ForceDevice | ( | const char * | name, |
vrpn_Connection * | c ) |
Definition at line 52 of file vrpn_ForceDevice.C.
References customEffectId, customEffectParams, errorCode, FD_OK, vrpn_BaseClass::init(), nbCustomEffectParams, numRecCycles, SurfaceBuzzAmp, SurfaceBuzzFreq, SurfaceFdynamic, SurfaceFstatic, SurfaceKadhesionLateral, SurfaceKadhesionNormal, SurfaceKdamping, SurfaceKspring, SurfaceTextureAmplitude, SurfaceTextureWavelength, and timestamp.
|
virtual |
Definition at line 193 of file vrpn_ForceDevice.C.
References customEffectParams.
|
inline |
Definition at line 127 of file vrpn_ForceDevice.h.
|
staticprotected |
Definition at line 898 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_addObject_message().
|
staticprotected |
Definition at line 937 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_addObjectExScene_message().
|
staticprotected |
Definition at line 1154 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_clearTrimesh_message().
|
staticprotected |
Definition at line 294 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
|
staticprotected |
Definition at line 1585 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
|
staticprotected |
Definition at line 1492 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDevice_Remote::handle_error_change_message().
|
staticprotected |
Definition at line 246 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDevice_Remote::handle_force_change_message().
|
staticprotected |
Definition at line 1442 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
|
staticprotected |
Definition at line 1193 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_moveToParent_message().
|
staticprotected |
Definition at line 601 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setNormal_message().
|
staticprotected |
Definition at line 1026 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setObjectOrientation_message().
|
staticprotected |
Definition at line 978 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setObjectPosition_message().
|
staticprotected |
Definition at line 1075 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setObjectScale_message().
|
staticprotected |
Definition at line 433 of file vrpn_ForceDevice.C.
References CHECK, plane, and vrpn_unbuffer().
|
staticprotected |
Definition at line 1117 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_removeObject_message().
|
staticprotected |
Definition at line 710 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_removeTriangle_message().
|
staticprotected |
Definition at line 374 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDevice_Remote::handle_scp_change_message().
|
staticprotected |
Definition at line 1796 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
|
staticprotected |
Definition at line 1734 of file vrpn_ForceDevice.C.
References decodePoint().
|
staticprotected |
Definition at line 1715 of file vrpn_ForceDevice.C.
References decodePoint().
|
staticprotected |
Definition at line 1646 of file vrpn_ForceDevice.C.
References CHECK, LINE_CONSTRAINT, NO_CONSTRAINT, PLANE_CONSTRAINT, POINT_CONSTRAINT, and vrpn_unbuffer().
|
staticprotected |
Definition at line 1768 of file vrpn_ForceDevice.C.
References decodePoint().
|
staticprotected |
Definition at line 1751 of file vrpn_ForceDevice.C.
References decodePoint().
|
staticprotected |
Definition at line 1696 of file vrpn_ForceDevice.C.
References decodePoint().
|
staticprotected |
Definition at line 1243 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setHapticOrigin_message().
|
staticprotected |
Definition at line 1289 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setHapticScale_message().
|
staticprotected |
Definition at line 1385 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setObjectIsTouchable_message().
|
staticprotected |
Definition at line 1336 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setSceneOrigin_message().
|
staticprotected |
Definition at line 808 of file vrpn_ForceDevice.C.
References CHECK, vrpn_BaseClassUnique::type, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setTrimeshType_message().
|
staticprotected |
Definition at line 492 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
|
staticprotected |
Definition at line 659 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setTriangle_message().
|
staticprotected |
Definition at line 854 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_transformTrimesh_message().
|
staticprotected |
Definition at line 759 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_updateTrimeshChanges_message().
|
staticprotected |
Definition at line 547 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by vrpn_ForceDeviceServer::handle_setVertex_message().
|
staticprotected |
Definition at line 1842 of file vrpn_ForceDevice.C.
References CHECK, and vrpn_unbuffer().
Referenced by decode_setConstraintLineDirection(), decode_setConstraintLinePoint(), decode_setConstraintPlaneNormal(), decode_setConstraintPlanePoint(), and decode_setConstraintPoint().
|
staticprotected |
Definition at line 877 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::addObject().
|
staticprotected |
Definition at line 918 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::addObjectExScene().
|
staticprotected |
Definition at line 1135 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::clearObjectTrimesh().
|
staticprotected |
Definition at line 267 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::startEffect(), and vrpn_ForceDevice_Remote::stopEffect().
|
staticprotected |
Definition at line 1565 of file vrpn_ForceDevice.C.
References vrpn_buffer().
|
staticprotected |
Definition at line 1472 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by sendError().
|
staticprotected |
Definition at line 219 of file vrpn_ForceDevice.C.
References vrpn_buffer().
|
staticprotected |
Definition at line 1408 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::sendForceField(), and vrpn_ForceDevice_Remote::stopForceField().
|
staticprotected |
Definition at line 1172 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::moveToParent().
|
staticprotected |
Definition at line 573 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectNormal().
|
staticprotected |
Definition at line 1001 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectOrientation().
|
staticprotected |
Definition at line 955 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectPosition().
|
staticprotected |
Definition at line 1052 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectScale().
|
staticprotected |
Definition at line 398 of file vrpn_ForceDevice.C.
References plane, and vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), and vrpn_ForceDevice_Remote::stopSurface().
|
staticprotected |
Definition at line 1098 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::removeObject().
|
staticprotected |
Definition at line 687 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::removeObjectTriangle().
|
staticprotected |
Definition at line 348 of file vrpn_ForceDevice.C.
References vrpn_buffer().
|
staticprotected |
Definition at line 1776 of file vrpn_ForceDevice.C.
References vrpn_buffer().
|
staticprotected |
Definition at line 1725 of file vrpn_ForceDevice.C.
References encodePoint().
|
staticprotected |
Definition at line 1706 of file vrpn_ForceDevice.C.
References encodePoint().
|
staticprotected |
Definition at line 1605 of file vrpn_ForceDevice.C.
References LINE_CONSTRAINT, NO_CONSTRAINT, PLANE_CONSTRAINT, POINT_CONSTRAINT, and vrpn_buffer().
|
staticprotected |
Definition at line 1759 of file vrpn_ForceDevice.C.
References encodePoint().
|
staticprotected |
Definition at line 1742 of file vrpn_ForceDevice.C.
References encodePoint().
|
staticprotected |
Definition at line 1687 of file vrpn_ForceDevice.C.
References encodePoint().
|
staticprotected |
Definition at line 1215 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setHapticOrigin().
|
staticprotected |
Definition at line 1270 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setHapticScale().
|
staticprotected |
Definition at line 1364 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectIsTouchable().
|
staticprotected |
Definition at line 1308 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setSceneOrigin().
|
staticprotected |
Definition at line 785 of file vrpn_ForceDevice.C.
References vrpn_BaseClassUnique::type, and vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::useGhost(), and vrpn_ForceDevice_Remote::useHcollide().
|
staticprotected |
Definition at line 462 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::sendSurface().
|
staticprotected |
Definition at line 630 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectTriangle().
|
staticprotected |
Definition at line 831 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectTrimeshTransform().
|
staticprotected |
Definition at line 733 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::updateObjectTrimeshChanges().
|
staticprotected |
Definition at line 518 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by vrpn_ForceDevice_Remote::setObjectVertex().
|
staticprotected |
Definition at line 1820 of file vrpn_ForceDevice.C.
References vrpn_buffer().
Referenced by encode_setConstraintLineDirection(), encode_setConstraintLinePoint(), encode_setConstraintPlaneNormal(), encode_setConstraintPlanePoint(), and encode_setConstraintPoint().
|
inline |
Definition at line 126 of file vrpn_ForceDevice.h.
void vrpn_ForceDevice::print_plane | ( | void | ) |
Definition at line 205 of file vrpn_ForceDevice.C.
References plane.
void vrpn_ForceDevice::print_report | ( | void | ) |
Definition at line 210 of file vrpn_ForceDevice.C.
References timestamp.
|
protectedvirtual |
Register the types of messages this device sends/receives. Return 0 on success, -1 on fail.
Implements vrpn_BaseClass.
Definition at line 110 of file vrpn_ForceDevice.C.
References addObject_message_id, addObjectExScene_message_id, clearTrimesh_message_id, custom_effect_message_id, vrpn_BaseClassUnique::d_connection, enableConstraint_message_id, error_message_id, force_message_id, forcefield_message_id, getNewObjectID_message_id, moveToParent_message_id, plane_effects_message_id, plane_message_id, vrpn_Connection::register_message_type(), removeObject_message_id, removeTriangle_message_id, scp_message_id, setConstraintKSpring_message_id, setConstraintLineDirection_message_id, setConstraintLinePoint_message_id, setConstraintMode_message_id, setConstraintPlaneNormal_message_id, setConstraintPlanePoint_message_id, setConstraintPoint_message_id, setHapticOrigin_message_id, setHapticScale_message_id, setNormal_message_id, setObjectIsTouchable_message_id, setObjectOrientation_message_id, setObjectPosition_message_id, setObjectScale_message_id, setSceneOrigin_message_id, setTriangle_message_id, setTrimeshType_message_id, setVertex_message_id, transformTrimesh_message_id, and updateTrimeshChanges_message_id.
void vrpn_ForceDevice::sendError | ( | int | error_code | ) |
Definition at line 1536 of file vrpn_ForceDevice.C.
References vrpn_BaseClassUnique::d_connection, vrpn_BaseClassUnique::d_sender_id, encode_error(), error_message_id, vrpn_Connection::pack_message(), timestamp, vrpn_CONNECTION_RELIABLE, and vrpn_gettimeofday.
void vrpn_ForceDevice::set_plane | ( | vrpn_float32 * | p | ) |
Definition at line 1511 of file vrpn_ForceDevice.C.
References plane.
Referenced by vrpn_ForceDevice_Remote::stopSurface().
void vrpn_ForceDevice::set_plane | ( | vrpn_float32 * | p, |
vrpn_float32 | d ) |
Definition at line 1527 of file vrpn_ForceDevice.C.
References plane.
void vrpn_ForceDevice::set_plane | ( | vrpn_float32 | a, |
vrpn_float32 | b, | ||
vrpn_float32 | c, | ||
vrpn_float32 | d ) |
Definition at line 1518 of file vrpn_ForceDevice.C.
References plane.
void vrpn_ForceDevice::setCustomEffect | ( | vrpn_int32 | effectId, |
vrpn_float32 * | params = NULL, | ||
vrpn_uint32 | nbParams = 0 ) |
Definition at line 86 of file vrpn_ForceDevice.C.
References customEffectId, customEffectParams, and nbCustomEffectParams.
Referenced by vrpn_ForceDevice_Remote::stopEffect().
|
inline |
Definition at line 95 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 89 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::constraintToForceField().
|
inline |
Definition at line 101 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::constraintToForceField().
|
inline |
Definition at line 77 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::constraintToForceField().
|
inline |
Definition at line 83 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 117 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::constraintToForceField().
|
inline |
Definition at line 52 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 64 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 63 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 51 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 50 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 59 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 55 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 49 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 48 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 69 of file vrpn_ForceDevice.h.
|
inline |
Definition at line 65 of file vrpn_ForceDevice.h.
|
protected |
Definition at line 166 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::addObject(), register_types(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 167 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::addObjectExScene(), register_types(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 180 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::clearObjectTrimesh(), register_types(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 190 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::startEffect(), and vrpn_ForceDevice_Remote::stopEffect().
|
protected |
Definition at line 481 of file vrpn_ForceDevice.h.
Referenced by setCustomEffect(), vrpn_ForceDevice_Remote::startEffect(), vrpn_ForceDevice_Remote::stopEffect(), and vrpn_ForceDevice().
|
protected |
Definition at line 482 of file vrpn_ForceDevice.h.
Referenced by setCustomEffect(), vrpn_ForceDevice_Remote::startEffect(), vrpn_ForceDevice_Remote::stopEffect(), vrpn_ForceDevice(), and ~vrpn_ForceDevice().
|
protected |
d_force isn't used in vrpn_ForceDevice, but seems to be used by derived classes? What's the meaning?
Definition at line 453 of file vrpn_ForceDevice.h.
|
protected |
Definition at line 149 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 162 of file vrpn_ForceDevice.h.
Referenced by register_types(), sendError(), and vrpn_ForceDevice_Remote::vrpn_ForceDevice_Remote().
|
protected |
Definition at line 471 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice().
|
protected |
Definition at line 462 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendForceField().
|
protected |
Definition at line 463 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendForceField().
|
protected |
Definition at line 461 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendForceField().
|
protected |
Definition at line 464 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendForceField().
|
protected |
Definition at line 141 of file vrpn_ForceDevice.h.
Referenced by register_types(), and vrpn_ForceDevice_Remote::vrpn_ForceDevice_Remote().
|
protected |
Definition at line 144 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::sendForceField(), and vrpn_ForceDevice_Remote::stopForceField().
|
protected |
Definition at line 186 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 168 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::moveToParent(), register_types(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 483 of file vrpn_ForceDevice.h.
Referenced by setCustomEffect(), vrpn_ForceDevice_Remote::startEffect(), vrpn_ForceDevice_Remote::stopEffect(), and vrpn_ForceDevice().
|
protected |
Definition at line 470 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 459 of file vrpn_ForceDevice.h.
Referenced by decode_plane(), encode_plane(), print_plane(), vrpn_ForceDevice_Remote::sendSurface(), set_plane(), set_plane(), set_plane(), vrpn_ForceDevice_Remote::startSurface(), and vrpn_ForceDevice_Remote::stopSurface().
|
protected |
Definition at line 143 of file vrpn_ForceDevice.h.
Referenced by register_types(), and vrpn_ForceDevice_Remote::sendSurface().
|
protected |
Definition at line 142 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), and vrpn_ForceDevice_Remote::stopSurface().
|
protected |
Definition at line 172 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::removeObject(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 176 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::removeObjectTriangle(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 145 of file vrpn_ForceDevice.h.
Referenced by register_types(), and vrpn_ForceDevice_Remote::vrpn_ForceDevice_Remote().
|
protected |
Definition at line 457 of file vrpn_ForceDevice.h.
|
protected |
Definition at line 458 of file vrpn_ForceDevice.h.
|
protected |
Definition at line 156 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 153 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 152 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 150 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 155 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 154 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 151 of file vrpn_ForceDevice.h.
Referenced by register_types().
|
protected |
Definition at line 183 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setHapticOrigin(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 184 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setHapticScale(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 174 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectNormal(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 187 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectIsTouchable(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 170 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectOrientation(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 169 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectPosition(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 171 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectScale(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 185 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setSceneOrigin(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 175 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectTriangle(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 179 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::useGhost(), vrpn_ForceDevice_Remote::useHcollide(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 173 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectVertex(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 476 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 475 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 469 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDeviceServer::handle_updateTrimeshChanges_message(), vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopSurface(), vrpn_ForceDevice_Remote::updateObjectTrimeshChanges(), and vrpn_ForceDevice().
|
protected |
Definition at line 468 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDeviceServer::handle_updateTrimeshChanges_message(), vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopSurface(), vrpn_ForceDevice_Remote::updateObjectTrimeshChanges(), and vrpn_ForceDevice().
|
protected |
Definition at line 473 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 474 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 467 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDeviceServer::handle_updateTrimeshChanges_message(), vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopSurface(), vrpn_ForceDevice_Remote::updateObjectTrimeshChanges(), and vrpn_ForceDevice().
|
protected |
Definition at line 466 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDeviceServer::handle_updateTrimeshChanges_message(), vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopSurface(), vrpn_ForceDevice_Remote::updateObjectTrimeshChanges(), and vrpn_ForceDevice().
|
protected |
Definition at line 478 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 477 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), and vrpn_ForceDevice().
|
protected |
Definition at line 449 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::addObject(), vrpn_ForceDevice_Remote::addObjectExScene(), vrpn_ForceDevice_Remote::clearObjectTrimesh(), vrpn_ForceDevice_Remote::moveToParent(), print_report(), vrpn_ForceDevice_Remote::removeObject(), vrpn_ForceDevice_Remote::removeObjectTriangle(), vrpn_ForceDevice_Remote::send(), sendError(), vrpn_ForceDevice_Remote::sendForceField(), vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::setHapticOrigin(), vrpn_ForceDevice_Remote::setHapticScale(), vrpn_ForceDevice_Remote::setObjectIsTouchable(), vrpn_ForceDevice_Remote::setObjectNormal(), vrpn_ForceDevice_Remote::setObjectOrientation(), vrpn_ForceDevice_Remote::setObjectPosition(), vrpn_ForceDevice_Remote::setObjectScale(), vrpn_ForceDevice_Remote::setObjectTriangle(), vrpn_ForceDevice_Remote::setObjectTrimeshTransform(), vrpn_ForceDevice_Remote::setObjectVertex(), vrpn_ForceDevice_Remote::setSceneOrigin(), vrpn_ForceDevice_Remote::startEffect(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopEffect(), vrpn_ForceDevice_Remote::stopForceField(), vrpn_ForceDevice_Remote::stopSurface(), vrpn_ForceDevice_Remote::updateObjectTrimeshChanges(), vrpn_ForceDevice_Remote::useGhost(), vrpn_ForceDevice_Remote::useHcollide(), vrpn_ForceDevice(), and vrpn_ForceDevice_Remote::vrpn_ForceDevice_Remote().
|
protected |
Definition at line 178 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::setObjectTrimeshTransform(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 177 of file vrpn_ForceDevice.h.
Referenced by register_types(), vrpn_ForceDevice_Remote::updateObjectTrimeshChanges(), and vrpn_ForceDeviceServer::vrpn_ForceDeviceServer().
|
protected |
Definition at line 451 of file vrpn_ForceDevice.h.
Referenced by vrpn_ForceDevice_Remote::sendSurface(), vrpn_ForceDevice_Remote::startSurface(), vrpn_ForceDevice_Remote::stopSurface(), and vrpn_ForceDevice_Remote::vrpn_ForceDevice_Remote().