6 AFX_VRPN_FORCEDEVICESERVER_H__E5B0D6FA_E426_45E5_97C7_B2169BEBF90A__INCLUDED_) 7 #define AFX_VRPN_FORCEDEVICESERVER_H__E5B0D6FA_E426_45E5_97C7_B2169BEBF90A__INCLUDED_ 18 typedef struct _vrpn_DisplayableObject {
73 virtual bool addObject(vrpn_int32 objNum, vrpn_int32 ParentNum = -1) = 0;
75 virtual bool addObjectExScene(vrpn_int32 objNum) = 0;
77 virtual bool setVertex(vrpn_int32 objNum, vrpn_int32 vertNum,
78 vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) = 0;
81 virtual bool setNormal(vrpn_int32 objNum, vrpn_int32 normNum,
82 vrpn_float32 x, vrpn_float32 y, vrpn_float32 z) = 0;
83 virtual bool setTriangle(vrpn_int32 objNum, vrpn_int32 triNum,
84 vrpn_int32 vert0, vrpn_int32 vert1,
85 vrpn_int32 vert2, vrpn_int32 norm0 = -1,
86 vrpn_int32 norm1 = -1, vrpn_int32 norm2 = -1) = 0;
87 virtual bool removeTriangle(vrpn_int32 objNum, vrpn_int32 triNum) = 0;
90 virtual bool updateTrimeshChanges(vrpn_int32 objNum, vrpn_float32 kspring,
91 vrpn_float32 kdamp, vrpn_float32 fdyn,
92 vrpn_float32 fstat) = 0;
94 virtual bool setTrimeshType(vrpn_int32 objNum, vrpn_int32 type) = 0;
96 virtual bool setTrimeshTransform(vrpn_int32 objNum,
97 vrpn_float32 homMatrix[16]) = 0;
99 virtual bool setObjectPosition(vrpn_int32 objNum, vrpn_float32 Pos[3]) = 0;
101 virtual bool setObjectOrientation(vrpn_int32 objNum, vrpn_float32 axis[3],
102 vrpn_float32 angle) = 0;
104 virtual bool setObjectScale(vrpn_int32 objNum, vrpn_float32 Scale[3]) = 0;
106 virtual bool removeObject(vrpn_int32 objNum) = 0;
107 virtual bool clearTrimesh(vrpn_int32 objNum) = 0;
112 virtual bool moveToParent(vrpn_int32 objNum, vrpn_int32 ParentNum) = 0;
114 virtual bool setHapticOrigin(vrpn_float32 Pos[3], vrpn_float32 axis[3],
115 vrpn_float32 angle) = 0;
117 virtual bool setHapticScale(vrpn_float32 Scale) = 0;
119 virtual bool setSceneOrigin(vrpn_float32 Pos[3], vrpn_float32 axis[3],
120 vrpn_float32 angle) = 0;
122 virtual bool setObjectIsTouchable(vrpn_int32 objNum,
123 vrpn_bool IsTouchable =
true) = 0;
129 #endif // !defined(AFX_VRPN_FORCEDEVICESERVER_H__E5B0D6FA_E426_45E5_97C7_B2169BEBF90A__INCLUDED_)
vrpn_DISPLAYABLEHASH m_hObjectList
vrpn_Hash< unsigned int, void * > vrpn_VoidHash
Generic connection class not specific to the transport mechanism.
vrpn_Hash< unsigned int, vrpn_DISPLAYABLEOBJECT * > vrpn_DISPLAYABLEHASH
Hash class (not thread-safe)
This structure is what is passed to a vrpn_Connection message callback.