Main Page   Class Hierarchy   Alphabetical List   Compound List   File List   Compound Members   File Members  

VrpnDial Class Reference

This is the actual interface to a particular VRPN dial device, and all of its numbered dials. More...

#include <vrpnDial.h>

List of all members.

Public Member Functions

 VrpnDial (const string &dial_name, vrpn_Connection *connection)
 ~VrpnDial ()
const string & get_dial_name () const
 Returns the name of the dial device that was used to create this VrpnDial.

bool is_empty () const
 Returns true if no VrpnDialDevices reference this VrpnDial, or false otherwise.

void mark (VrpnDialDevice *device)
 Adds the indicated VrpnDialDevice to the list of devices that are sharing this VrpnDial.

void unmark (VrpnDialDevice *device)
 Removes the indicated VrpnDialDevice from the list of devices that are sharing this VrpnDial.

void poll ()
 Polls the connected device.

void output (ostream &out) const
void write (ostream &out, int indent_level=0) const

Private Types

typedef pvector< VrpnDialDevice * > Devices

Static Private Member Functions

void vrpn_dial_callback (void *userdata, const vrpn_DIALCB info)
 Receives the dial event data from the VRPN code and sends it to any interested VrpnDialDevices.


Private Attributes

string _dial_name
vrpn_Dial_Remote * _dial
Devices _devices


Detailed Description

This is the actual interface to a particular VRPN dial device, and all of its numbered dials.

A pointer to this object is stored in the VrpnClient class for each differently-named VRPN dial device we connect to.

The VRPN callbacks go here, which in turn get vectored out to any VrpnDialDevice objects that register with this. When the last VrpnDialDevice object unregisters, the VrpnDial will be deleted by the VrpnClient.

This class does not need to be exported from the DLL.

Definition at line 64 of file vrpnDial.h.


Member Typedef Documentation

typedef pvector<VrpnDialDevice *> VrpnDial::Devices [private]
 

Definition at line 88 of file vrpnDial.h.


Constructor & Destructor Documentation

VrpnDial::VrpnDial const string &  dial_name,
vrpn_Connection *  connection
 

Definition at line 39 of file vrpnDial.cxx.

VrpnDial::~VrpnDial  ) 
 

Definition at line 55 of file vrpnDial.cxx.

References _devices.


Member Function Documentation

const string & VrpnDial::get_dial_name  )  const [inline]
 

Returns the name of the dial device that was used to create this VrpnDial.

Definition at line 33 of file vrpnDial.I.

References _devices, and INLINE.

bool VrpnDial::is_empty  )  const [inline]
 

Returns true if no VrpnDialDevices reference this VrpnDial, or false otherwise.

Definition at line 48 of file vrpnDial.I.

References _dial, and INLINE.

void VrpnDial::mark VrpnDialDevice device  ) 
 

Adds the indicated VrpnDialDevice to the list of devices that are sharing this VrpnDial.

Definition at line 70 of file vrpnDial.cxx.

References _devices.

void VrpnDial::output ostream &  out  )  const
 

Definition at line 109 of file vrpnDial.cxx.

void VrpnDial::poll  )  [inline]
 

Polls the connected device.

Normally you should not call this directly; this will be called by the VrpnClient.

Definition at line 65 of file vrpnDial.I.

Referenced by VrpnClient::disconnect_device().

void VrpnDial::unmark VrpnDialDevice device  ) 
 

Removes the indicated VrpnDialDevice from the list of devices that are sharing this VrpnDial.

Definition at line 88 of file vrpnDial.cxx.

References _dial_name.

void VrpnDial::vrpn_dial_callback void *  userdata,
const vrpn_DIALCB  info
[static, private]
 

Receives the dial event data from the VRPN code and sends it to any interested VrpnDialDevices.

Definition at line 140 of file vrpnDial.cxx.

void VrpnDial::write ostream &  out,
int  indent_level = 0
const
 

Definition at line 121 of file vrpnDial.cxx.


Member Data Documentation

Devices VrpnDial::_devices [private]
 

Definition at line 89 of file vrpnDial.h.

Referenced by get_dial_name(), mark(), and ~VrpnDial().

vrpn_Dial_Remote* VrpnDial::_dial [private]
 

Definition at line 86 of file vrpnDial.h.

Referenced by is_empty().

string VrpnDial::_dial_name [private]
 

Definition at line 85 of file vrpnDial.h.

Referenced by unmark().


The documentation for this class was generated from the following files:
Generated on Fri May 2 00:56:13 2003 for Panda by doxygen1.3