Main Page   Class Hierarchy   Compound List   File List   Header Files   Compound Members   File Members  

vrpn_ForceDevice_Remote Class Reference

#include <vrpn_ForceDevice.h>

Class diagram for vrpn_ForceDevice_Remote:

vrpn_ForceDevice vrpn_BaseClass vrpn_BaseClassUnique

List of all members.


Public Members

 vrpn_ForceDevice_Remote (const char *name, vrpn_Connection *cn = NULL)
virtual ~vrpn_ForceDevice_Remote (void)
void sendSurface (void)
void startSurface (void)
void stopSurface (void)
void setVertex (vrpn_int32 vertNum,vrpn_float32 x,vrpn_float32 y,vrpn_float32 z)
void setNormal (vrpn_int32 normNum,vrpn_float32 x,vrpn_float32 y,vrpn_float32 z)
void setTriangle (vrpn_int32 triNum,vrpn_int32 vert0,vrpn_int32 vert1,vrpn_int32 vert2, vrpn_int32 norm0=-1,vrpn_int32 norm1=-1,vrpn_int32 norm2=-1)
void removeTriangle (vrpn_int32 triNum)
void updateTrimeshChanges ()
void setTrimeshTransform (vrpn_float32 homMatrix[16])
void clearTrimesh (void)
void useHcollide ()
void useGhost ()
void enableConstraint (vrpn_int32 enable)
void setConstraintMode (ConstraintGeometry mode)
void setConstraintPoint (vrpn_float32 point [3])
void setConstraintLinePoint (vrpn_float32 point [3])
void setConstraintLineDirection (vrpn_float32 direction [3])
void setConstraintPlanePoint (vrpn_float32 point [3])
void setConstraintPlaneNormal (vrpn_float32 normal [3])
void setConstraintKSpring (vrpn_float32 k)
void sendForceField (vrpn_float32 origin [3], vrpn_float32 force [3], vrpn_float32 jacobian [3][3], vrpn_float32 radius)
void sendForceField (void)
void stopForceField (void)
virtual void mainloop ()
Called once through each main loop iteration to handle updates. Remote object mainloop() should call d_connection->mainloop(). Server object mainloop() should service the device, and should not normally call d_connection->mainloop().

virtual int register_force_change_handler (void *userdata, vrpn_FORCECHANGEHANDLER handler)
virtual int unregister_force_change_handler (void *userdata, vrpn_FORCECHANGEHANDLER handler)
virtual int register_scp_change_handler (void *userdata, vrpn_FORCESCPHANDLER handler)
virtual int unregister_scp_change_handler (void *userdata, vrpn_FORCESCPHANDLER handler)
virtual int register_error_handler (void *userdata, vrpn_FORCEERRORHANDLER handler)
virtual int unregister_error_handler (void *userdata, vrpn_FORCEERRORHANDLER handler)

Protected Members

typedef struct vrpn_ForceDevice_Remote::vrpn_RFCS  vrpn_FORCECHANGELIST
typedef struct vrpn_ForceDevice_Remote::vrpn_RFSCPCS  vrpn_FORCESCPCHANGELIST
typedef struct vrpn_ForceDevice_Remote::vrpn_RFERRCS  vrpn_FORCEERRORCHANGELIST
void send (const char * msgbuf, vrpn_int32 len, vrpn_int32 type)
void constraintToForceField (void)
vrpn_FORCECHANGELISTchange_list
vrpn_FORCESCPCHANGELISTscp_change_list
vrpn_FORCEERRORCHANGELISTerror_change_list
vrpn_int32 d_conEnabled
ConstraintGeometry d_conMode
vrpn_float32 d_conPoint [3]
vrpn_float32 d_conLinePoint [3]
vrpn_float64 d_conLineDirection [3]
vrpn_float32 d_conPlanePoint [3]
vrpn_float64 d_conPlaneNormal [3]
vrpn_float32 d_conKSpring

Static Protected Members

int handle_force_change_message (void *userdata,vrpn_HANDLERPARAM p)
int handle_scp_change_message (void *userdata, vrpn_HANDLERPARAM p)
int handle_error_change_message (void *userdata, vrpn_HANDLERPARAM p)

Detailed Description


Member Typedef Documentation

typedef struct vrpn_ForceDevice_Remote::vrpn_RFCS vrpn_ForceDevice_Remote::vrpn_FORCECHANGELIST [protected]

typedef struct vrpn_ForceDevice_Remote::vrpn_RFSCPCS vrpn_ForceDevice_Remote::vrpn_FORCESCPCHANGELIST [protected]

typedef struct vrpn_ForceDevice_Remote::vrpn_RFERRCS vrpn_ForceDevice_Remote::vrpn_FORCEERRORCHANGELIST [protected]


Member Function Documentation

vrpn_ForceDevice_Remote::vrpn_ForceDevice_Remote (const char * name, vrpn_Connection * cn = NULL)

vrpn_ForceDevice_Remote::~vrpn_ForceDevice_Remote (void) [virtual]

void vrpn_ForceDevice_Remote::sendSurface (void)

void vrpn_ForceDevice_Remote::startSurface (void)

void vrpn_ForceDevice_Remote::stopSurface (void)

void vrpn_ForceDevice_Remote::setVertex (vrpn_int32 vertNum, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z)

void vrpn_ForceDevice_Remote::setNormal (vrpn_int32 normNum, vrpn_float32 x, vrpn_float32 y, vrpn_float32 z)

void vrpn_ForceDevice_Remote::setTriangle (vrpn_int32 triNum, vrpn_int32 vert0, vrpn_int32 vert1, vrpn_int32 vert2, vrpn_int32 norm0 = -1, vrpn_int32 norm1 = -1, vrpn_int32 norm2 = -1)

void vrpn_ForceDevice_Remote::removeTriangle (vrpn_int32 triNum)

void vrpn_ForceDevice_Remote::updateTrimeshChanges ()

void vrpn_ForceDevice_Remote::setTrimeshTransform (vrpn_float32 homMatrix[16])

void vrpn_ForceDevice_Remote::clearTrimesh (void)

void vrpn_ForceDevice_Remote::useHcollide (void)

void vrpn_ForceDevice_Remote::useGhost (void)

void vrpn_ForceDevice_Remote::enableConstraint (vrpn_int32 enable)

void vrpn_ForceDevice_Remote::setConstraintMode (ConstraintGeometry mode)

void vrpn_ForceDevice_Remote::setConstraintPoint (vrpn_float32 point[3])

void vrpn_ForceDevice_Remote::setConstraintLinePoint (vrpn_float32 point[3])

void vrpn_ForceDevice_Remote::setConstraintLineDirection (vrpn_float32 direction[3])

void vrpn_ForceDevice_Remote::setConstraintPlanePoint (vrpn_float32 point[3])

void vrpn_ForceDevice_Remote::setConstraintPlaneNormal (vrpn_float32 normal[3])

void vrpn_ForceDevice_Remote::setConstraintKSpring (vrpn_float32 k)

void vrpn_ForceDevice_Remote::sendForceField (vrpn_float32 origin[3], vrpn_float32 force[3], vrpn_float32 jacobian[3][3], vrpn_float32 radius)

void vrpn_ForceDevice_Remote::sendForceField (void)

void vrpn_ForceDevice_Remote::stopForceField (void)

void vrpn_ForceDevice_Remote::mainloop (void) [virtual]

Called once through each main loop iteration to handle updates. Remote object mainloop() should call d_connection->mainloop(). Server object mainloop() should service the device, and should not normally call d_connection->mainloop().

Reimplemented from vrpn_BaseClass.

int vrpn_ForceDevice_Remote::register_force_change_handler (void * userdata, vrpn_FORCECHANGEHANDLER handler) [virtual]

int vrpn_ForceDevice_Remote::unregister_force_change_handler (void * userdata, vrpn_FORCECHANGEHANDLER handler) [virtual]

int vrpn_ForceDevice_Remote::register_scp_change_handler (void * userdata, vrpn_FORCESCPHANDLER handler) [virtual]

int vrpn_ForceDevice_Remote::unregister_scp_change_handler (void * userdata, vrpn_FORCESCPHANDLER handler) [virtual]

int vrpn_ForceDevice_Remote::register_error_handler (void * userdata, vrpn_FORCEERRORHANDLER handler) [virtual]

int vrpn_ForceDevice_Remote::unregister_error_handler (void * userdata, vrpn_FORCEERRORHANDLER handler) [virtual]

void vrpn_ForceDevice_Remote::send (const char * msgbuf, vrpn_int32 len, vrpn_int32 type) [protected]

void vrpn_ForceDevice_Remote::constraintToForceField (void) [protected]

int vrpn_ForceDevice_Remote::handle_force_change_message (void * userdata, vrpn_HANDLERPARAM p) [static, protected]

int vrpn_ForceDevice_Remote::handle_scp_change_message (void * userdata, vrpn_HANDLERPARAM p) [static, protected]

int vrpn_ForceDevice_Remote::handle_error_change_message (void * userdata, vrpn_HANDLERPARAM p) [static, protected]


Member Data Documentation

vrpn_FORCECHANGELIST* vrpn_ForceDevice_Remote::change_list [protected]

vrpn_FORCESCPCHANGELIST* vrpn_ForceDevice_Remote::scp_change_list [protected]

vrpn_FORCEERRORCHANGELIST* vrpn_ForceDevice_Remote::error_change_list [protected]

vrpn_int32 vrpn_ForceDevice_Remote::d_conEnabled [protected]

ConstraintGeometry vrpn_ForceDevice_Remote::d_conMode [protected]

vrpn_float32 vrpn_ForceDevice_Remote::d_conPoint[3] [protected]

vrpn_float32 vrpn_ForceDevice_Remote::d_conLinePoint[3] [protected]

vrpn_float64 vrpn_ForceDevice_Remote::d_conLineDirection[3] [protected]

vrpn_float32 vrpn_ForceDevice_Remote::d_conPlanePoint[3] [protected]

vrpn_float64 vrpn_ForceDevice_Remote::d_conPlaneNormal[3] [protected]

vrpn_float32 vrpn_ForceDevice_Remote::d_conKSpring [protected]


The documentation for this class was generated from the following files:
Generated at Fri Sep 13 15:04:12 2002 for vrpn by doxygen 1.0.0 written by Dimitri van Heesch, © 1997-1999