VR-Forces 4.1.1 Class Documentation
List of all members | Public Member Functions | Protected Attributes
makVrv::DtGlStudioDrawable Class Reference

The OSG Drawable that contains a GL Studio HUD. More...

Inheritance diagram for makVrv::DtGlStudioDrawable:
Inheritance graph
[legend]

Public Member Functions

 DtGlStudioDrawable ()
 constructor
 DtGlStudioDrawable (disti::ComponentBase *component)
 CTOR which takes a disti component.
 DtGlStudioDrawable (const DtGlStudioDrawable &other, const osg::CopyOp &copyop=osg::CopyOp::SHALLOW_COPY)
 Copy constructor using CopyOp to manage deep vs shallow copy.
virtual ~DtGlStudioDrawable ()
 DTOR.
virtual osg::Object * cloneType () const
 Required osg::Object class methods.
virtual osg::Object * clone (const osg::CopyOp &copyop) const
virtual bool isSameKindAs (const osg::Object *obj) const
virtual const char * libraryName () const
virtual const char * className () const
virtual bool loadLiveComponent (const std::string &fileName, const std::string &className)
 Loads a live component from a GL Studio shared library.
virtual void destroyComponent ()
 Frees the memory for the component.
virtual void setComponent (disti::ComponentBase *comp)
 Replace the currently loaded component with the given component instance.
virtual disti::ComponentBase * component ()
 Get access to the component pointer to allow for calling component-specific methods.
virtual bool handleMouseInput (const DtMouseEvent &ea)
 handle mouse events
virtual osg::BoundingBox computeBound () const
 Computes the bounding box if needed.
virtual bool supports (osg::PrimitiveFunctor &) const
 OSG required function.
virtual void accept (osg::PrimitiveFunctor &functor) const
 The PrimitiveFunctor is used for OpenSceneGraph picking The Drawable object should tell the PrimitiveFunctor about it's geometry.
virtual void update (osg::NodeVisitor *visitor, osg::Drawable *drawable)
 The update function is called each frame.
virtual bool cull (osg::NodeVisitor *visitor, osg::Drawable *drawable, osg::State *state=NULL) const
virtual void drawImplementation (osg::RenderInfo &state) const
virtual void setProperty (const std::string &prop, const std::string &val)
virtual void setDe (DtDe *de)
virtual void setCockpitObject (DtOsgGlStudioCockpit *cockpitObject)

Protected Attributes

DtOsgGlStudioCockpitmyCockpitObject
disti::ComponentBase * myComponent
DtDemyDe

Detailed Description

The OSG Drawable that contains a GL Studio HUD.

Constructor & Destructor Documentation

makVrv::DtGlStudioDrawable::DtGlStudioDrawable ( )

constructor

makVrv::DtGlStudioDrawable::DtGlStudioDrawable ( disti::ComponentBase *  component)

CTOR which takes a disti component.

For loading user-instantiated (statically linked) component object

makVrv::DtGlStudioDrawable::DtGlStudioDrawable ( const DtGlStudioDrawable other,
const osg::CopyOp &  copyop = osg::CopyOp::SHALLOW_COPY 
)

Copy constructor using CopyOp to manage deep vs shallow copy.

For loading from a live component DLL

virtual makVrv::DtGlStudioDrawable::~DtGlStudioDrawable ( )
virtual

DTOR.

Member Function Documentation

virtual osg::Object* makVrv::DtGlStudioDrawable::cloneType ( ) const
virtual

Required osg::Object class methods.

virtual osg::Object* makVrv::DtGlStudioDrawable::clone ( const osg::CopyOp &  copyop) const
virtual
virtual bool makVrv::DtGlStudioDrawable::isSameKindAs ( const osg::Object *  obj) const
virtual
virtual const char* makVrv::DtGlStudioDrawable::libraryName ( ) const
virtual
virtual const char* makVrv::DtGlStudioDrawable::className ( ) const
virtual
virtual bool makVrv::DtGlStudioDrawable::loadLiveComponent ( const std::string &  fileName,
const std::string &  className 
)
virtual

Loads a live component from a GL Studio shared library.

virtual void makVrv::DtGlStudioDrawable::destroyComponent ( )
virtual

Frees the memory for the component.

virtual void makVrv::DtGlStudioDrawable::setComponent ( disti::ComponentBase *  comp)
virtual

Replace the currently loaded component with the given component instance.

The node takes ownership of the object.

virtual disti::ComponentBase* makVrv::DtGlStudioDrawable::component ( )
virtual

Get access to the component pointer to allow for calling component-specific methods.

virtual bool makVrv::DtGlStudioDrawable::handleMouseInput ( const DtMouseEvent ea)
virtual

handle mouse events

virtual osg::BoundingBox makVrv::DtGlStudioDrawable::computeBound ( ) const
virtual

Computes the bounding box if needed.

virtual bool makVrv::DtGlStudioDrawable::supports ( osg::PrimitiveFunctor &  ) const
virtual

OSG required function.

virtual void makVrv::DtGlStudioDrawable::accept ( osg::PrimitiveFunctor &  functor) const
virtual

The PrimitiveFunctor is used for OpenSceneGraph picking The Drawable object should tell the PrimitiveFunctor about it's geometry.

Since we are unable to get the detailed geometry here we use the bounding box geometry for osg picking. Detailed picking of component geometry is done within HandleInput.

virtual void makVrv::DtGlStudioDrawable::update ( osg::NodeVisitor *  visitor,
osg::Drawable *  drawable 
)
virtual

The update function is called each frame.

This is where we call Calculate() on the component.

virtual bool makVrv::DtGlStudioDrawable::cull ( osg::NodeVisitor *  visitor,
osg::Drawable *  drawable,
osg::State *  state = NULL 
) const
virtual
virtual void makVrv::DtGlStudioDrawable::drawImplementation ( osg::RenderInfo &  state) const
virtual
virtual void makVrv::DtGlStudioDrawable::setProperty ( const std::string &  prop,
const std::string &  val 
)
virtual
virtual void makVrv::DtGlStudioDrawable::setDe ( DtDe de)
virtual
virtual void makVrv::DtGlStudioDrawable::setCockpitObject ( DtOsgGlStudioCockpit cockpitObject)
virtual

Member Data Documentation

DtOsgGlStudioCockpit* makVrv::DtGlStudioDrawable::myCockpitObject
protected
disti::ComponentBase* makVrv::DtGlStudioDrawable::myComponent
protected
DtDe* makVrv::DtGlStudioDrawable::myDe
protected

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

Document ID: Generated on Mon Apr 8 19:24:01 EDT 2013 from SVN revision 125877
Copyright © 2005-2013 VT MÄK. All Rights Reserved (www.mak.com)