ot::SpaceMouseModule Class Reference
#include <SpaceMouseModule.h>
Inheritance diagram for ot::SpaceMouseModule:


Public Member Functions | |
| SpaceMouseModule () | |
| virtual | ~SpaceMouseModule () |
| virtual Node * | createNode (const std::string &name, StringTable &attributes) |
| virtual void | close () |
| virtual void | start () |
| virtual void | run () |
| virtual void | pushEvent () |
Public Attributes | |
| int | stop |
Static Public Attributes | |
| static HWND | hWndSpaceMouse = NULL |
Protected Attributes | |
| NodeVector | nodes |
Private Member Functions | |
| void | processMessages () |
Detailed Description
Definition at line 149 of file SpaceMouseModule.h.
Constructor & Destructor Documentation
| ot::SpaceMouseModule::SpaceMouseModule | ( | ) | [inline] |
| ot::SpaceMouseModule::~SpaceMouseModule | ( | ) | [virtual] |
Destructor method, clears nodes member.
Definition at line 84 of file SpaceMouseModule.cxx.
References nodes.
Member Function Documentation
| void ot::SpaceMouseModule::close | ( | ) | [virtual] |
closes SpaceMouse dynamic library
Reimplemented from ot::ThreadModule.
Definition at line 114 of file SpaceMouseModule.cxx.
References ot::devHdl, ot::Module::isInitialized(), ot::ThreadModule::lock(), ot::Module::stop(), and ot::ThreadModule::unlock().
| Node * ot::SpaceMouseModule::createNode | ( | const std::string & | name, | |
| StringTable & | attributes | |||
| ) | [virtual] |
This method is called to construct a new Node.
It compares name to the SpaceMouseSource element name, and if it matches creates a new SpaceMouseSource node.
- Parameters:
-
name reference to string containing element name refenrence to StringTable containing attribute values
Implements ot::NodeFactory.
Definition at line 90 of file SpaceMouseModule.cxx.
References ot::Module::initialized, and nodes.
| void ot::SpaceMouseModule::processMessages | ( | ) | [private] |
Definition at line 246 of file SpaceMouseModule.cxx.
References ot::SpaceMouseSource::changed, ot::devHdl, ot::MathUtils::eulerToQuaternion(), ot::Event::getButton(), ot::Event::getOrientation(), ot::Event::getPosition(), hWndSpaceMouse, ot::Module::isInitialized(), ot::ThreadModule::lock(), nodes, ot::MathUtils::normalizeQuaternion(), ot::SpaceMouseSource::tmpEvent, and ot::ThreadModule::unlock().
Referenced by run().
| void ot::SpaceMouseModule::pushEvent | ( | ) | [virtual] |
pushes events into the tracker tree.
Checks all SpaceMouseSources and pushes new events, if a SpaceMouseSource fires. The events store structure with position and status of the buttons.
Reimplemented from ot::Module.
Definition at line 220 of file SpaceMouseModule.cxx.
References ot::SpaceMouseSource::changed, ot::SpaceMouseSource::event, ot::Module::isInitialized(), ot::ThreadModule::lock(), nodes, ot::SpaceMouseSource::push(), ot::SpaceMouseSource::tmpEvent, and ot::ThreadModule::unlock().
| void ot::SpaceMouseModule::run | ( | ) | [virtual] |
the work method for the module thread.
This is executed by the new module thread. In this class it does nothing but subclasses should override it to add their implementation.
Reimplemented from ot::ThreadModule.
Definition at line 131 of file SpaceMouseModule.cxx.
References ot::devHdl, hWndSpaceMouse, ot::Module::init(), ot::Module::initialized, LOG_ACE_ERROR(), ot::oData, processMessages(), ot::Module::stop(), and ot::WndSpaceMouseProc().
| void ot::SpaceMouseModule::start | ( | ) | [virtual] |
opens SpaceMouse dynamic library (SIAPPDLL.DLL)
Reimplemented from ot::ThreadModule.
Definition at line 105 of file SpaceMouseModule.cxx.
References ot::Module::isInitialized(), nodes, and ot::ThreadModule::start().
Member Data Documentation
HWND ot::SpaceMouseModule::hWndSpaceMouse = NULL [static] |
NodeVector ot::SpaceMouseModule::nodes [protected] |
list of SpaceMouseSource nodes in the tree
Definition at line 154 of file SpaceMouseModule.h.
Referenced by createNode(), processMessages(), pushEvent(), start(), and ~SpaceMouseModule().
The documentation for this class was generated from the following files: