108 vrpn_int32 unload_sound;
109 vrpn_int32 play_sound;
110 vrpn_int32 stop_sound;
116 set_listener_velocity;
117 vrpn_int32 set_sound_pose;
118 vrpn_int32 set_sound_velocity;
119 vrpn_int32 set_sound_distanceinfo;
120 vrpn_int32 set_sound_coneinfo;
121 vrpn_int32 set_sound_doplerfactor;
122 vrpn_int32 set_sound_eqvalue;
123 vrpn_int32 set_sound_pitch;
124 vrpn_int32 set_sound_volume;
126 vrpn_int32 load_model_local;
127 vrpn_int32 load_model_remote;
128 vrpn_int32 load_polyquad;
129 vrpn_int32 load_polytri;
130 vrpn_int32 load_material;
131 vrpn_int32 set_polyquad_vertices;
132 vrpn_int32 set_polytri_vertices;
133 vrpn_int32 set_poly_openingfactor;
134 vrpn_int32 set_poly_material;
136 vrpn_int32 receive_text_message;
138 struct timeval timestamp;
149 vrpn_int32 encodeSound_local(
const char *filename,
const vrpn_SoundID
id,
153 vrpn_int32 decodeSound_local(
const char *buf,
char **filename,
158 vrpn_int32 encodeSound_remote(
const char *filename,
const vrpn_SoundID
id,
160 vrpn_int32 decodeSound_remote(
const char *buf,
char **filename,
161 vrpn_SoundID *
id,
const int payload);
163 vrpn_int32 encodeSoundID(
const vrpn_SoundID
id,
char *buf);
164 vrpn_int32 decodeSoundID(
const char *buf, vrpn_SoundID *
id);
165 vrpn_int32 encodeSoundDef(
const vrpn_SoundDef sound,
const vrpn_SoundID
id,
166 const vrpn_int32 repeat,
char *buf);
167 vrpn_int32 decodeSoundDef(
const char *buf,
vrpn_SoundDef *sound,
168 vrpn_SoundID *
id, vrpn_int32 *repeat);
169 vrpn_int32 encodeSoundPlay(
const vrpn_SoundID
id,
const vrpn_int32 repeat,
171 vrpn_int32 decodeSoundPlay(
const char *buf, vrpn_SoundID *
id,
173 vrpn_int32 encodeListenerVelocity(
const vrpn_float64 *velocity,
char *buf);
174 vrpn_int32 decodeListenerVelocity(
const char *buf, vrpn_float64 *velocity);
175 vrpn_int32 encodeListenerPose(
const vrpn_PoseDef pose,
char *buf);
176 vrpn_int32 decodeListenerPose(
const char *buf,
vrpn_PoseDef *pose);
178 vrpn_int32 encodeSoundPose(
const vrpn_PoseDef pose,
const vrpn_SoundID
id,
180 vrpn_int32 decodeSoundPose(
const char *buf,
vrpn_PoseDef *pose,
182 vrpn_int32 encodeSoundVelocity(
const vrpn_float64 *velocity,
183 const vrpn_SoundID
id,
char *buf);
184 vrpn_int32 decodeSoundVelocity(
const char *buf, vrpn_float64 *velocity,
186 vrpn_int32 encodeSoundDistInfo(
const vrpn_float64 min_back,
187 const vrpn_float64 max_back,
188 const vrpn_float64 min_front,
189 const vrpn_float64 max_front,
190 const vrpn_SoundID
id,
char *buf);
191 vrpn_int32 decodeSoundDistInfo(
const char *buf, vrpn_float64 *min_back,
192 vrpn_float64 *max_back,
193 vrpn_float64 *min_front,
194 vrpn_float64 *max_front, vrpn_SoundID *
id);
195 vrpn_int32 encodeSoundConeInfo(
const vrpn_float64 cone_inner_angle,
196 const vrpn_float64 cone_outer_angle,
197 const vrpn_float64 cone_gain,
198 const vrpn_SoundID
id,
char *buf);
199 vrpn_int32 decodeSoundConeInfo(
const char *buf,
200 vrpn_float64 *cone_inner_angle,
201 vrpn_float64 *cone_outer_angle,
202 vrpn_float64 *cone_gain, vrpn_SoundID *
id);
203 vrpn_int32 encodeSoundDoplerScale(
const vrpn_float64 doplerfactor,
204 const vrpn_SoundID
id,
char *buf);
205 vrpn_int32 decodeSoundDoplerScale(
const char *buf,
206 vrpn_float64 *doplerfactor,
208 vrpn_int32 encodeSoundEqFactor(
const vrpn_float64 eqfactor,
209 const vrpn_SoundID
id,
char *buf);
210 vrpn_int32 decodeSoundEqFactor(
const char *buf, vrpn_float64 *eqfactor,
212 vrpn_int32 encodeSoundPitch(
const vrpn_float64 pitch,
const vrpn_SoundID
id,
214 vrpn_int32 decodeSoundPitch(
const char *buf, vrpn_float64 *pitch,
216 vrpn_int32 encodeSoundVolume(
const vrpn_float64 volume,
217 const vrpn_SoundID
id,
char *buf);
218 vrpn_int32 decodeSoundVolume(
const char *buf, vrpn_float64 *volume,
221 vrpn_int32 encodeLoadModel_local(
const char *filename,
char **buf);
222 vrpn_int32 decodeLoadModel_local(
const char *buf,
char **filename,
226 vrpn_int32 encodeLoadModel_remote(
const char *filename,
char **buf);
227 vrpn_int32 decodeLoadModel_remote(
const char *buf,
char **filename,
230 vrpn_int32 encodeLoadPolyQuad(
const vrpn_QuadDef quad,
char *buf);
231 vrpn_int32 decodeLoadPolyQuad(
const char *buf,
vrpn_QuadDef *quad);
232 vrpn_int32 encodeLoadPolyTri(
const vrpn_TriDef tri,
char *buf);
233 vrpn_int32 decodeLoadPolyTri(
const char *buf,
vrpn_TriDef *tri);
234 vrpn_int32 encodeLoadMaterial(
const vrpn_int32
id,
238 vrpn_int32 encodeSetQuadVert(
const vrpn_float64 vertices[4][3],
239 const vrpn_int32 tag,
char *buf);
240 vrpn_int32 decodeSetQuadVert(
const char *buf,
241 vrpn_float64 (*vertices)[4][3],
243 vrpn_int32 encodeSetTriVert(
const vrpn_float64 vertices[3][3],
244 const vrpn_int32 tag,
char *buf);
245 vrpn_int32 decodeSetTriVert(
const char *buf, vrpn_float64 (*vertices)[3][3],
247 vrpn_int32 encodeSetPolyOF(
const vrpn_float64 openingfactor,
248 const vrpn_int32 tag,
char *buf);
249 vrpn_int32 decodeSetPolyOF(
const char *buf, vrpn_float64 *openingfactor,
251 vrpn_int32 encodeSetPolyMaterial(
const char *material,
const vrpn_int32 tag,
253 vrpn_int32 decodeSetPolyMaterial(
const char *buf,
char **material,
254 vrpn_int32 *tag,
const int payload);
265 vrpn_int32 playSound(
const vrpn_SoundID
id, vrpn_int32 repeat);
266 vrpn_int32 stopSound(
const vrpn_SoundID
id);
269 vrpn_SoundID loadSound(
const char *sound,
const vrpn_SoundID
id,
271 vrpn_int32 unloadSound(
const vrpn_SoundID
id);
275 vrpn_int32 setSoundVolume(
const vrpn_SoundID
id,
const vrpn_float64 volume);
276 vrpn_int32 setSoundPose(
const vrpn_SoundID
id, vrpn_float64 position[3],
277 vrpn_float64 orientation[4]);
278 vrpn_int32 setSoundVelocity(
const vrpn_SoundID
id,
279 const vrpn_float64 velocity[4]);
280 vrpn_int32 setSoundDistances(
const vrpn_SoundID
id,
281 const vrpn_float64 max_front_dist,
282 const vrpn_float64 min_front_dist,
283 const vrpn_float64 max_back_dist,
284 const vrpn_float64 min_back_dist);
285 vrpn_int32 setSoundConeInfo(
const vrpn_SoundID
id,
286 const vrpn_float64 inner_angle,
287 const vrpn_float64 outer_angle,
288 const vrpn_float64 gain);
290 vrpn_int32 setSoundDopScale(
const vrpn_SoundID
id, vrpn_float64 dopfactor);
291 vrpn_int32 setSoundEqValue(
const vrpn_SoundID
id, vrpn_float64 eq_value);
292 vrpn_int32 setSoundPitch(
const vrpn_SoundID
id, vrpn_float64 pitch);
294 vrpn_int32 setListenerPose(
const vrpn_float64 position[3],
295 const vrpn_float64 orientation[4]);
296 vrpn_int32 setListenerVelocity(
const vrpn_float64 velocity[4]);
298 vrpn_int32 LoadModel_local(
const char *filename);
301 vrpn_int32 LoadModel_remote(
const char *data);
305 vrpn_int32 LoadMaterial(
const vrpn_int32
id,
308 vrpn_int32 setMaterialName(
const int id,
const char *materialname);
309 vrpn_int32 setMaterialTransGain(
const int id,
310 const vrpn_float64 transmittance_gain);
311 vrpn_int32 setMaterialTransHF(
const int id,
312 const vrpn_float64 transmittance_hf);
313 vrpn_int32 setMaterialReflGain(
const int id,
314 const vrpn_float64 reflectance_gain);
315 vrpn_int32 setMaterialReflHF(
const int id,
316 const vrpn_float64 reflectance_hf);
318 vrpn_int32 setPolyOF(
const int id,
const vrpn_float64 OF);
319 vrpn_int32 setQuadVertices(
const int id,
const vrpn_float64 vertices[4][3]);
320 vrpn_int32 setPolyMaterialName(
const int id,
const char *materialname);
322 vrpn_int32 setTriVertices(
const int id,
const vrpn_float64 vertices[3][3]);
326 virtual void receiveTextMessage(
const char *message, vrpn_uint32 type,
327 vrpn_uint32 level,
struct timeval msg_time);
331 static void VRPN_CALLBACK
332 handle_receiveTextMessage(
void *userdata,
const vrpn_TEXTCB t);
351 virtual void playSound(vrpn_SoundID
id, vrpn_int32 repeat,
353 virtual void loadSoundLocal(
char *filename, vrpn_SoundID
id,
355 virtual void loadSoundRemote(
char *file, vrpn_SoundID
id,
357 virtual void stopSound(vrpn_SoundID
id) = 0;
358 virtual void unloadSound(vrpn_SoundID
id) = 0;
359 virtual void changeSoundStatus(vrpn_SoundID
id,
vrpn_SoundDef soundDef) = 0;
361 virtual void setListenerVelocity(vrpn_float64 *velocity) = 0;
363 virtual void setSoundPose(vrpn_SoundID
id,
vrpn_PoseDef pose) = 0;
364 virtual void setSoundVelocity(vrpn_SoundID
id, vrpn_float64 *velocity) = 0;
365 virtual void setSoundDistInfo(vrpn_SoundID
id, vrpn_float64 *distinfo) = 0;
366 virtual void setSoundConeInfo(vrpn_SoundID
id, vrpn_float64 *coneinfo) = 0;
368 virtual void setSoundDoplerFactor(vrpn_SoundID
id,
369 vrpn_float64 doplerfactor) = 0;
370 virtual void setSoundEqValue(vrpn_SoundID
id, vrpn_float64 eqvalue) = 0;
371 virtual void setSoundPitch(vrpn_SoundID
id, vrpn_float64 pitch) = 0;
372 virtual void setSoundVolume(vrpn_SoundID
id, vrpn_float64 volume) = 0;
373 virtual void loadModelLocal(
const char *filename) = 0;
374 virtual void loadModelRemote() = 0;
378 virtual void setPolyQuadVertices(vrpn_float64 vertices[4][3],
379 const vrpn_int32
id) = 0;
380 virtual void setPolyTriVertices(vrpn_float64 vertices[3][3],
381 const vrpn_int32
id) = 0;
382 virtual void setPolyOF(vrpn_float64 OF, vrpn_int32 tag) = 0;
383 virtual void setPolyMaterial(
const char *material, vrpn_int32 tag) = 0;
387 static int VRPN_CALLBACK
389 static int VRPN_CALLBACK
391 static int VRPN_CALLBACK
393 static int VRPN_CALLBACK
395 static int VRPN_CALLBACK
397 static int VRPN_CALLBACK
399 static int VRPN_CALLBACK
401 static int VRPN_CALLBACK
404 static int VRPN_CALLBACK
406 static int VRPN_CALLBACK
408 static int VRPN_CALLBACK
410 static int VRPN_CALLBACK
413 static int VRPN_CALLBACK
415 static int VRPN_CALLBACK
417 static int VRPN_CALLBACK
419 static int VRPN_CALLBACK
422 static int VRPN_CALLBACK
424 static int VRPN_CALLBACK
426 static int VRPN_CALLBACK
428 static int VRPN_CALLBACK
430 static int VRPN_CALLBACK
432 static int VRPN_CALLBACK
434 static int VRPN_CALLBACK
436 static int VRPN_CALLBACK
438 static int VRPN_CALLBACK
Allows a user to handle text messages directly, in addition to having the
定义 vrpn_Text.h:69
Allows a user to send text messages from a device (usually,
定义 vrpn_Text.h:40
Structure passed back to user-level code from a vrpn_Text_Receiver.
定义 vrpn_Text.h:22