openscenegraph
Public Types | Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
osgManipulator::Dragger Class Reference
Inheritance diagram for osgManipulator::Dragger:
osg::MatrixTransform osg::Transform osg::Group osg::Node osg::Object osg::Referenced osgManipulator::CompositeDragger osgManipulator::RotateCylinderDragger osgManipulator::RotateSphereDragger osgManipulator::Scale1DDragger osgManipulator::Scale2DDragger osgManipulator::Translate1DDragger osgManipulator::Translate2DDragger osgManipulator::ScaleAxisDragger osgManipulator::TabBoxDragger osgManipulator::TabBoxTrackballDragger osgManipulator::TabPlaneDragger osgManipulator::TabPlaneTrackballDragger osgManipulator::TrackballDragger osgManipulator::TranslateAxisDragger osgManipulator::TranslatePlaneDragger

Public Types

typedef std::vector
< osg::ref_ptr< Constraint > > 
Constraints
typedef std::vector
< osg::ref_ptr
< DraggerCallback > > 
DraggerCallbacks

Public Member Functions

 META_Node (osgManipulator, Dragger) virtual void setParentDragger(Dragger *parent)
Dragger * getParentDragger ()
const Dragger * getParentDragger () const
virtual const CompositeDragger * getComposite () const
virtual CompositeDragger * getComposite ()
void setHandleEvents (bool flag)
bool getHandleEvents () const
void setActivationModKeyMask (unsigned int mask)
unsigned int getActivationModKeyMask () const
void setActivationKeyEvent (int key)
int getActivationKeyEvent () const
virtual void traverse (osg::NodeVisitor &nv)
virtual bool handle (const osgGA::GUIEventAdapter &ea, osgGA::GUIActionAdapter &aa)
virtual bool handle (const PointerInfo &, const osgGA::GUIEventAdapter &, osgGA::GUIActionAdapter &)
void addConstraint (Constraint *constraint)
void removeConstraint (Constraint *constraint)
Constraints & getConstraints ()
const Constraints & getConstraints () const
void addDraggerCallback (DraggerCallback *dc)
void removeDraggerCallback (DraggerCallback *dc)
DraggerCallbacks & getDraggerCallbacks ()
const DraggerCallbacks & getDraggerCallbacks () const
void addTransformUpdating (MatrixTransform *transform)
void removeTransformUpdating (MatrixTransform *transform)
virtual void setupDefaultGeometry ()
virtual bool receive (const MotionCommand &command)
void dispatch (MotionCommand &command)
void setDraggerActive (bool active)
bool getDraggerActive () const
- Public Member Functions inherited from osg::MatrixTransform
 MatrixTransform ()
 MatrixTransform (const MatrixTransform &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 MatrixTransform (const Matrix &matix)
 META_Node (osg, MatrixTransform)
virtual MatrixTransform * asMatrixTransform ()
virtual const MatrixTransform * asMatrixTransform () const
void setMatrix (const Matrix &mat)
const Matrix & getMatrix () const
void preMult (const Matrix &mat)
void postMult (const Matrix &mat)
const Matrix & getInverseMatrix () const
virtual bool computeLocalToWorldMatrix (Matrix &matrix, NodeVisitor *) const
virtual bool computeWorldToLocalMatrix (Matrix &matrix, NodeVisitor *) const
- Public Member Functions inherited from osg::Transform
 Transform ()
 Transform (const Transform &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_Node (osg, Transform)
virtual Transform * asTransform ()
virtual const Transform * asTransform () const
virtual PositionAttitudeTransform * asPositionAttitudeTransform ()
virtual const
PositionAttitudeTransform * 
asPositionAttitudeTransform () const
void setReferenceFrame (ReferenceFrame rf)
ReferenceFrame getReferenceFrame () const
virtual BoundingSphere computeBound () const
- Public Member Functions inherited from osg::Group
 Group ()
 Group (const Group &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
 META_Node (osg, Group)
virtual Group * asGroup ()
virtual const Group * asGroup () const
virtual bool addChild (Node *child)
virtual bool insertChild (unsigned int index, Node *child)
bool removeChild (Node *child)
bool removeChild (unsigned int pos, unsigned int numChildrenToRemove=1)
virtual bool removeChildren (unsigned int pos, unsigned int numChildrenToRemove)
virtual bool replaceChild (Node *origChild, Node *newChild)
unsigned int getNumChildren () const
virtual bool setChild (unsigned int i, Node *node)
Node * getChild (unsigned int i)
const Node * getChild (unsigned int i) const
bool containsNode (const Node *node) const
unsigned int getChildIndex (const Node *node) const
virtual void setThreadSafeRefUnref (bool threadSafe)
virtual void resizeGLObjectBuffers (unsigned int maxSize)
virtual void releaseGLObjects (osg::State *=0) const
- Public Member Functions inherited from osg::Node
 Node ()
 Node (const Node &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual Object * cloneType () const
virtual Object * clone (const CopyOp &copyop) const
virtual bool isSameKindAs (const Object *obj) const
virtual const char * libraryName () const
virtual const char * className () const
virtual Switch * asSwitch ()
virtual const Switch * asSwitch () const
virtual Geode * asGeode ()
virtual const Geode * asGeode () const
virtual osgTerrain::Terrain * asTerrain ()
virtual const osgTerrain::Terrain * asTerrain () const
virtual void accept (NodeVisitor &nv)
virtual void ascend (NodeVisitor &nv)
const ParentList & getParents () const
ParentList getParents ()
Group * getParent (unsigned int i)
const Group * getParent (unsigned int i) const
unsigned int getNumParents () const
NodePathList getParentalNodePaths (osg::Node *haltTraversalAtNode=0) const
MatrixList getWorldMatrices (const osg::Node *haltTraversalAtNode=0) const
void setUpdateCallback (NodeCallback *nc)
NodeCallback * getUpdateCallback ()
const NodeCallback * getUpdateCallback () const
void addUpdateCallback (NodeCallback *nc)
void removeUpdateCallback (NodeCallback *nc)
unsigned int getNumChildrenRequiringUpdateTraversal () const
void setEventCallback (NodeCallback *nc)
NodeCallback * getEventCallback ()
const NodeCallback * getEventCallback () const
void addEventCallback (NodeCallback *nc)
void removeEventCallback (NodeCallback *nc)
unsigned int getNumChildrenRequiringEventTraversal () const
void setCullCallback (NodeCallback *nc)
NodeCallback * getCullCallback ()
const NodeCallback * getCullCallback () const
void addCullCallback (NodeCallback *nc)
void removeCullCallback (NodeCallback *nc)
void setCullingActive (bool active)
bool getCullingActive () const
unsigned int getNumChildrenWithCullingDisabled () const
bool isCullingActive () const
unsigned int getNumChildrenWithOccluderNodes () const
bool containsOccluderNodes () const
void setNodeMask (NodeMask nm)
NodeMask getNodeMask () const
void setStateSet (osg::StateSet *stateset)
osg::StateSet * getOrCreateStateSet ()
osg::StateSet * getStateSet ()
const osg::StateSet * getStateSet () const
void setDescriptions (const DescriptionList &descriptions)
DescriptionList & getDescriptions ()
const DescriptionList & getDescriptions () const
const std::string & getDescription (unsigned int i) const
std::string & getDescription (unsigned int i)
unsigned int getNumDescriptions () const
void addDescription (const std::string &desc)
void setInitialBound (const osg::BoundingSphere &bsphere)
const BoundingSphere & getInitialBound () const
void dirtyBound ()
const BoundingSphere & getBound () const
void setComputeBoundingSphereCallback (ComputeBoundingSphereCallback *callback)
ComputeBoundingSphereCallback * getComputeBoundingSphereCallback ()
const
ComputeBoundingSphereCallback * 
getComputeBoundingSphereCallback () const
- Public Member Functions inherited from osg::Object
 Object ()
 Object (bool threadSafeRefUnref)
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual void setName (const std::string &name)
void setName (const char *name)
const std::string & getName () const
void setDataVariance (DataVariance dv)
DataVariance getDataVariance () const
virtual void computeDataVariance ()
void setUserDataContainer (osg::UserDataContainer *udc)
osg::UserDataContainer * getUserDataContainer ()
const osg::UserDataContainer * getUserDataContainer () const
osg::UserDataContainer * getOrCreateUserDataContainer ()
virtual void setUserData (Referenced *obj)
virtual Referenced * getUserData ()
virtual const Referenced * getUserData () const
template<typename T >
bool getUserValue (const std::string &name, T &value) const
template<typename T >
void setUserValue (const std::string &name, const T &value)
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referenced & operator= (const Referenced &)
bool getThreadSafeRefUnref () const
OpenThreads::Mutex * getRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSet * getObserverSet () const
ObserverSet * getOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const

Protected Member Functions

 Dragger ()
 Dragger (const Dragger &rhs, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
virtual ~Dragger ()
- Protected Member Functions inherited from osg::MatrixTransform
virtual ~MatrixTransform ()
- Protected Member Functions inherited from osg::Transform
virtual ~Transform ()
- Protected Member Functions inherited from osg::Group
virtual ~Group ()
virtual void childRemoved (unsigned int, unsigned int)
virtual void childInserted (unsigned int)
- Protected Member Functions inherited from osg::Node
virtual ~Node ()
void addParent (osg::Group *node)
void removeParent (osg::Group *node)
void setNumChildrenRequiringUpdateTraversal (unsigned int num)
void setNumChildrenRequiringEventTraversal (unsigned int num)
void setNumChildrenWithCullingDisabled (unsigned int num)
void setNumChildrenWithOccluderNodes (unsigned int num)
- Protected Member Functions inherited from osg::Object
virtual ~Object ()
- Protected Member Functions inherited from osg::Referenced
virtual ~Referenced ()
void signalObserversAndDelete (bool signalDelete, bool doDelete) const
void deleteUsingDeleteHandler () const

Protected Attributes

bool _handleEvents
bool _draggerActive
unsigned int _activationModKeyMask
int _activationKeyEvent
bool _activationPermittedByModKeyMask
bool _activationPermittedByKeyEvent
osgManipulator::PointerInfo _pointer
Dragger * _parentDragger
osg::ref_ptr< DraggerCallback > _selfUpdater
Constraints _constraints
DraggerCallbacks _draggerCallbacks
- Protected Attributes inherited from osg::MatrixTransform
Matrix _matrix
Matrix _inverse
bool _inverseDirty
- Protected Attributes inherited from osg::Transform
ReferenceFrame _referenceFrame
- Protected Attributes inherited from osg::Group
NodeList _children
- Protected Attributes inherited from osg::Node
BoundingSphere _initialBound
ref_ptr
< ComputeBoundingSphereCallback > 
_computeBoundCallback
BoundingSphere _boundingSphere
bool _boundingSphereComputed
ParentList _parents
ref_ptr< NodeCallback > _updateCallback
unsigned int _numChildrenRequiringUpdateTraversal
ref_ptr< NodeCallback > _eventCallback
unsigned int _numChildrenRequiringEventTraversal
ref_ptr< NodeCallback > _cullCallback
bool _cullingActive
unsigned int _numChildrenWithCullingDisabled
unsigned int _numChildrenWithOccluderNodes
NodeMask _nodeMask
ref_ptr< StateSet > _stateset
- Protected Attributes inherited from osg::Object
std::string _name
DataVariance _dataVariance
osg::UserDataContainer * _userDataContainer
- Protected Attributes inherited from osg::Referenced
OpenThreads::AtomicPtr _observerSet
OpenThreads::Atomic _refCount

Additional Inherited Members

- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::Mutex * getGlobalReferencedMutex ()
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
static bool getThreadSafeReferenceCounting ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandler * getDeleteHandler ()

Detailed Description

Base class for draggers. Concrete draggers implement the pick event handler and generate motion commands (translate, rotate, ...) and sends these command to all the DraggerCallbacks & Transforms that are connected to the Dragger that generates the commands.

Member Typedef Documentation

Constructor & Destructor Documentation

osgManipulator::Dragger::Dragger ( )
protected
osgManipulator::Dragger::Dragger ( const Dragger &  rhs,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)
protected
virtual osgManipulator::Dragger::~Dragger ( )
protectedvirtual

Member Function Documentation

void osgManipulator::Dragger::addConstraint ( Constraint *  constraint)
void osgManipulator::Dragger::addDraggerCallback ( DraggerCallback *  dc)
void osgManipulator::Dragger::addTransformUpdating ( MatrixTransform *  transform)
void osgManipulator::Dragger::dispatch ( MotionCommand &  command)
int osgManipulator::Dragger::getActivationKeyEvent ( ) const
inline
unsigned int osgManipulator::Dragger::getActivationModKeyMask ( ) const
inline
virtual const CompositeDragger* osgManipulator::Dragger::getComposite ( ) const
inlinevirtual

Returns 0 if this Dragger is not a CompositeDragger.

Reimplemented in osgManipulator::CompositeDragger.

virtual CompositeDragger* osgManipulator::Dragger::getComposite ( )
inlinevirtual

Returns 0 if this Dragger is not a CompositeDragger.

Reimplemented in osgManipulator::CompositeDragger.

Constraints& osgManipulator::Dragger::getConstraints ( )
inline
const Constraints& osgManipulator::Dragger::getConstraints ( ) const
inline
bool osgManipulator::Dragger::getDraggerActive ( ) const
inline
DraggerCallbacks& osgManipulator::Dragger::getDraggerCallbacks ( )
inline
const DraggerCallbacks& osgManipulator::Dragger::getDraggerCallbacks ( ) const
inline
bool osgManipulator::Dragger::getHandleEvents ( ) const
inline
Dragger* osgManipulator::Dragger::getParentDragger ( )
inline
const Dragger* osgManipulator::Dragger::getParentDragger ( ) const
inline
virtual bool osgManipulator::Dragger::handle ( const osgGA::GUIEventAdapter &  ea,
osgGA::GUIActionAdapter &  aa 
)
virtual
virtual bool osgManipulator::Dragger::handle ( const PointerInfo &  ,
const osgGA::GUIEventAdapter &  ,
osgGA::GUIActionAdapter &   
)
inlinevirtual
osgManipulator::Dragger::META_Node ( osgManipulator  ,
Dragger   
)
inline

Set/Get parent dragger. For simple draggers parent points to itself. For composite draggers parent points to the parent dragger that uses this dragger.

virtual bool osgManipulator::Dragger::receive ( const MotionCommand &  command)
virtual
void osgManipulator::Dragger::removeConstraint ( Constraint *  constraint)
void osgManipulator::Dragger::removeDraggerCallback ( DraggerCallback *  dc)
void osgManipulator::Dragger::removeTransformUpdating ( MatrixTransform *  transform)
void osgManipulator::Dragger::setActivationKeyEvent ( int  key)
inline
void osgManipulator::Dragger::setActivationModKeyMask ( unsigned int  mask)
inline
void osgManipulator::Dragger::setDraggerActive ( bool  active)
inline
void osgManipulator::Dragger::setHandleEvents ( bool  flag)
virtual void osgManipulator::Dragger::setupDefaultGeometry ( )
inlinevirtual
virtual void osgManipulator::Dragger::traverse ( osg::NodeVisitor &  )
virtual

Traverse downwards : calls children's accept method with NodeVisitor.

Reimplemented from osg::Group.

Member Data Documentation

int osgManipulator::Dragger::_activationKeyEvent
protected
unsigned int osgManipulator::Dragger::_activationModKeyMask
protected
bool osgManipulator::Dragger::_activationPermittedByKeyEvent
protected
bool osgManipulator::Dragger::_activationPermittedByModKeyMask
protected
Constraints osgManipulator::Dragger::_constraints
protected
bool osgManipulator::Dragger::_draggerActive
protected
DraggerCallbacks osgManipulator::Dragger::_draggerCallbacks
protected
bool osgManipulator::Dragger::_handleEvents
protected
Dragger* osgManipulator::Dragger::_parentDragger
protected
osgManipulator::PointerInfo osgManipulator::Dragger::_pointer
protected
osg::ref_ptr<DraggerCallback> osgManipulator::Dragger::_selfUpdater
protected

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