An interface for all VRPN objects that have a "mainloop" method. Not instantiated directly: use vrpn_MainloopObject::wrap() to create one. More...
#include <vrpn_MainloopObject.h>
Classes | |
struct | CannotWrapNullPointerIntoMainloopObject |
Exception thrown when trying to wrap a NULL pointer. More... | |
Public Member Functions | |
virtual | ~vrpn_MainloopObject () |
Destructor. | |
virtual void | mainloop ()=0 |
The mainloop function: the primary thing we look for in a VRPN object. | |
virtual bool | broken ()=0 |
Checks the connectionPtr() for the VRPN object to make sure it is not NULL. | |
Static Public Member Functions | |
template<class T> | |
static vrpn_MainloopObject * | wrap (T o) |
Templated wrapping function. | |
template<class T> | |
static vrpn_MainloopObject * | wrap (T o, bool owner) |
Templated wrapping function that can encourage the wrapper to not destroy the wrapped object at destruction. | |
Protected Member Functions | |
virtual void * | _returnContained () const =0 |
Internal function to return a typeless pointer of the contained object, for comparison purposes. | |
vrpn_MainloopObject () | |
Friends | |
Comparison operators | |
bool | operator== (vrpn_MainloopObject const &lhs, vrpn_MainloopObject const &rhs) |
bool | operator!= (vrpn_MainloopObject const &lhs, vrpn_MainloopObject const &rhs) |
An interface for all VRPN objects that have a "mainloop" method. Not instantiated directly: use vrpn_MainloopObject::wrap() to create one.
Definition at line 43 of file vrpn_MainloopObject.h.
|
inlinevirtual |
Destructor.
Definition at line 55 of file vrpn_MainloopObject.h.
|
inlineprotected |
Definition at line 75 of file vrpn_MainloopObject.h.
Referenced by broken(), operator!=, operator==, wrap(), and wrap().
|
protectedpure virtual |
Internal function to return a typeless pointer of the contained object, for comparison purposes.
Implemented in detail::TypedMainloopObject< T * >, detail::TypedMainloopObject< vrpn_Connection * >, and detail::TypedMainloopObject< vrpn_ConnectionPtr >.
Referenced by operator!=, and operator==.
|
pure virtual |
Checks the connectionPtr() for the VRPN object to make sure it is not NULL.
Implemented in detail::TypedMainloopObject< T * >, detail::TypedMainloopObject< vrpn_Connection * >, and detail::TypedMainloopObject< vrpn_ConnectionPtr >.
References vrpn_MainloopObject().
Referenced by vrpn_MainloopContainer::add().
|
pure virtual |
The mainloop function: the primary thing we look for in a VRPN object.
Implemented in detail::TypedMainloopObject< T * >, detail::TypedMainloopObject< vrpn_Connection * >, and detail::TypedMainloopObject< vrpn_ConnectionPtr >.
|
inlinestatic |
Templated wrapping function.
Definition at line 176 of file vrpn_MainloopObject.h.
References vrpn_MainloopObject().
Referenced by vrpn_MainloopContainer::add().
|
inlinestatic |
Templated wrapping function that can encourage the wrapper to not destroy the wrapped object at destruction.
Definition at line 186 of file vrpn_MainloopObject.h.
References vrpn_MainloopObject().
|
friend |
Definition at line 91 of file vrpn_MainloopObject.h.
References _returnContained(), operator!=, and vrpn_MainloopObject().
Referenced by operator!=.
|
friend |
Definition at line 85 of file vrpn_MainloopObject.h.
References _returnContained(), operator==, and vrpn_MainloopObject().
Referenced by operator==.