OpenCOVER
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Public Member Functions | Protected Member Functions | Protected Attributes | Static Protected Attributes | Friends | List of all members
opencover::InputDevice Class Reference

The InputDevice class interacts with input hardware. More...

#include <inputdevice.h>

Inheritance diagram for opencover::InputDevice:
Inheritance graph
[legend]
Collaboration diagram for opencover::InputDevice:
Collaboration graph
[legend]

Public Member Functions

 InputDevice (const std::string &configPath)
 
virtual ~InputDevice ()
 
std::string configPath (const std::string &ent="") const
 
virtual bool poll ()
 
virtual void run ()
 
virtual bool needsThread () const
 
void stopLoop ()
 
bool isVarying () const
 
bool is6Dof () const
 
const std::string & getName () const
 
const osg::Matrix & getOffsetMat () const
 
void setOffsetMat (const osg::Matrix &m)
 

Protected Member Functions

size_t numButtons () const
 
bool getButtonState (size_t idx) const
 
size_t numValuators () const
 
double getValuatorValue (size_t idx) const
 
std::pair< double, double > getValuatorRange (size_t idx) const
 
size_t numBodies () const
 
bool isBodyMatrixValid (size_t idx) const
 
const osg::Matrix & getBodyMatrix (size_t idx) const
 
virtual void update ()
 

Protected Attributes

bool loop_is_running
 
OpenThreads::Mutex m_mutex
 If true, the main loop will run. More...
 
std::vector< bool > m_buttonStates
 
std::vector< double > m_valuatorValues
 
std::vector< std::pair< double,
double > > 
m_valuatorRanges
 
std::vector< bool > m_bodyMatricesValid
 
std::vector< osg::Matrix > m_bodyMatrices
 
const std::string m_config
 
std::string m_name
 
osg::Matrix m_offsetMatrix
 
bool m_isVarying
 
bool m_is6Dof
 

Static Protected Attributes

static osg::Matrix s_identity
 

Friends

class Input
 
class ButtonDevice
 
class Valuator
 
class TrackingBody
 

Detailed Description

The InputDevice class interacts with input hardware.

This class interacts with input hardware and stores the data about all configured input hardware e.g. tracking systems, button devices etc.

Main interaction loop runs in its own thread

Constructor & Destructor Documentation

opencover::InputDevice::InputDevice ( const std::string &  configPath)
virtual opencover::InputDevice::~InputDevice ( )
virtual

Member Function Documentation

std::string opencover::InputDevice::configPath ( const std::string &  ent = "") const
const osg::Matrix& opencover::InputDevice::getBodyMatrix ( size_t  idx) const
protected
bool opencover::InputDevice::getButtonState ( size_t  idx) const
protected
const std::string& opencover::InputDevice::getName ( ) const
inline
const osg::Matrix& opencover::InputDevice::getOffsetMat ( ) const
std::pair<double, double> opencover::InputDevice::getValuatorRange ( size_t  idx) const
protected
double opencover::InputDevice::getValuatorValue ( size_t  idx) const
protected
bool opencover::InputDevice::is6Dof ( ) const
bool opencover::InputDevice::isBodyMatrixValid ( size_t  idx) const
protected
bool opencover::InputDevice::isVarying ( ) const
virtual bool opencover::InputDevice::needsThread ( ) const
virtual

Reimplemented in opencover::ConstInputDevice.

size_t opencover::InputDevice::numBodies ( ) const
inlineprotected
size_t opencover::InputDevice::numButtons ( ) const
inlineprotected
size_t opencover::InputDevice::numValuators ( ) const
inlineprotected
virtual bool opencover::InputDevice::poll ( )
virtual
virtual void opencover::InputDevice::run ( )
virtual
void opencover::InputDevice::setOffsetMat ( const osg::Matrix &  m)
void opencover::InputDevice::stopLoop ( )
virtual void opencover::InputDevice::update ( )
protectedvirtual

Friends And Related Function Documentation

friend class ButtonDevice
friend
friend class Input
friend
friend class TrackingBody
friend
friend class Valuator
friend

Member Data Documentation

bool opencover::InputDevice::loop_is_running
protected
std::vector<osg::Matrix> opencover::InputDevice::m_bodyMatrices
protected
std::vector<bool> opencover::InputDevice::m_bodyMatricesValid
protected
std::vector<bool> opencover::InputDevice::m_buttonStates
protected
const std::string opencover::InputDevice::m_config
protected
bool opencover::InputDevice::m_is6Dof
protected
bool opencover::InputDevice::m_isVarying
protected
OpenThreads::Mutex opencover::InputDevice::m_mutex
protected

If true, the main loop will run.

std::string opencover::InputDevice::m_name
protected
osg::Matrix opencover::InputDevice::m_offsetMatrix
protected
std::vector<std::pair<double, double> > opencover::InputDevice::m_valuatorRanges
protected
std::vector<double> opencover::InputDevice::m_valuatorValues
protected
osg::Matrix opencover::InputDevice::s_identity
staticprotected

The documentation for this class was generated from the following file: