openscenegraph
Public Member Functions | Protected Attributes | List of all members
osgViewer::RecordCameraPathHandler Class Reference
Inheritance diagram for osgViewer::RecordCameraPathHandler:
osgGA::GUIEventHandler osg::NodeCallback osg::Drawable::EventCallback osg::Object osg::Object osg::Referenced osg::Referenced

Public Member Functions

 RecordCameraPathHandler (const std::string &filename="saved_animation.path", float fps=25.0f)
void setKeyEventToggleRecord (int key)
int getKeyEventToggleRecord () const
void setKeyEventTogglePlayback (int key)
int getKeyEventTogglePlayback () const
void setAutoIncrementFilename (bool autoinc=true)
virtual void getUsage (osg::ApplicationUsage &usage) const
bool handle (const osgGA::GUIEventAdapter &ea, osgGA::GUIActionAdapter &aa)
- Public Member Functions inherited from osgGA::GUIEventHandler
 GUIEventHandler ()
 GUIEventHandler (const GUIEventHandler &eh, const osg::CopyOp &copyop)
 META_Object (osgGA, GUIEventHandler)
virtual void operator() (osg::Node *node, osg::NodeVisitor *nv)
virtual void event (osg::NodeVisitor *nv, osg::Drawable *drawable)
virtual bool handle (const GUIEventAdapter &ea, GUIActionAdapter &aa, osg::Object *, osg::NodeVisitor *)
bool handleWithCheckAgainstIgnoreHandledEventsMask (const GUIEventAdapter &ea, GUIActionAdapter &aa, osg::Object *object, osg::NodeVisitor *nv)
bool handleWithCheckAgainstIgnoreHandledEventsMask (const GUIEventAdapter &ea, GUIActionAdapter &aa)
void setIgnoreHandledEventsMask (unsigned int mask)
unsigned int getIgnoreHandledEventsMask () const
- Public Member Functions inherited from osg::NodeCallback
 NodeCallback ()
 NodeCallback (const NodeCallback &nc, const CopyOp &)
 META_Object (osg, NodeCallback)
void traverse (Node *node, NodeVisitor *nv)
void setNestedCallback (NodeCallback *nc)
NodeCallbackgetNestedCallback ()
const NodeCallbackgetNestedCallback () const
void addNestedCallback (NodeCallback *nc)
void removeNestedCallback (NodeCallback *nc)
- Public Member Functions inherited from osg::Object
 Object ()
 Object (bool threadSafeRefUnref)
 Object (const Object &, const CopyOp &copyop=CopyOp::SHALLOW_COPY)
virtual ObjectcloneType () const =0
virtual Objectclone (const CopyOp &) const =0
virtual bool isSameKindAs (const Object *) const
virtual const char * libraryName () const =0
virtual const char * className () const =0
virtual void setThreadSafeRefUnref (bool threadSafe)
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::UserDataContainergetUserDataContainer ()
const osg::UserDataContainergetUserDataContainer () const
osg::UserDataContainergetOrCreateUserDataContainer ()
virtual void setUserData (Referenced *obj)
virtual ReferencedgetUserData ()
virtual const ReferencedgetUserData () 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)
virtual void resizeGLObjectBuffers (unsigned int)
virtual void releaseGLObjects (osg::State *=0) const
- Public Member Functions inherited from osg::Referenced
 Referenced ()
 Referenced (bool threadSafeRefUnref)
 Referenced (const Referenced &)
Referencedoperator= (const Referenced &)
bool getThreadSafeRefUnref () const
OpenThreads::MutexgetRefMutex () const
int ref () const
int unref () const
int unref_nodelete () const
int referenceCount () const
ObserverSetgetObserverSet () const
ObserverSetgetOrCreateObserverSet () const
void addObserver (Observer *observer) const
void removeObserver (Observer *observer) const
- Public Member Functions inherited from osg::Drawable::EventCallback
 EventCallback ()
 EventCallback (const EventCallback &, const CopyOp &)
 META_Object (osg, EventCallback)

Protected Attributes

std::string _filename
int _autoinc
osgDB::ofstream _fout
int _keyEventToggleRecord
int _keyEventTogglePlayback
bool _currentlyRecording
bool _currentlyPlaying
double _interval
double _delta
osg::Timer_t _animStartTime
osg::Timer_t _lastFrameTime
osg::ref_ptr< osg::AnimationPath_animPath
osg::ref_ptr
< osgGA::AnimationPathManipulator
_animPathManipulator
osg::ref_ptr
< osgGA::CameraManipulator
_oldManipulator
- Protected Attributes inherited from osgGA::GUIEventHandler
unsigned int _ignoreHandledEventsMask

Additional Inherited Members

- Public Types inherited from osg::Object
enum  DataVariance { DYNAMIC, STATIC, UNSPECIFIED }
- Static Public Member Functions inherited from osg::Referenced
static OpenThreads::MutexgetGlobalReferencedMutex ()
static void setThreadSafeReferenceCounting (bool enableThreadSafeReferenceCounting)
static bool getThreadSafeReferenceCounting ()
static void setDeleteHandler (DeleteHandler *handler)
static DeleteHandlergetDeleteHandler ()
- Public Attributes inherited from osg::NodeCallback
ref_ptr< NodeCallback_nestedCallback
- Protected Member Functions inherited from osg::NodeCallback
virtual ~NodeCallback ()
- Protected Member Functions inherited from osg::Object
virtual ~Object ()

Detailed Description

Event handler allowing the user to record the animation "path" of a camera. In it's current implementation, this handler cannot guarantee the final view matrix is correct; it is conceivable that the matrix may be one frame off. Eh–not a big deal! :) TODO: Write the file as we go, not when it's all done. TODO: Create an osgviewer on-screen indication that animation is taking place.

Constructor & Destructor Documentation

osgViewer::RecordCameraPathHandler::RecordCameraPathHandler ( const std::string &  filename = "saved_animation.path",
float  fps = 25.0f 
)

Member Function Documentation

int osgViewer::RecordCameraPathHandler::getKeyEventTogglePlayback ( ) const
inline
int osgViewer::RecordCameraPathHandler::getKeyEventToggleRecord ( ) const
inline
virtual void osgViewer::RecordCameraPathHandler::getUsage ( osg::ApplicationUsage ) const
virtual

Get the keyboard and mouse usage of this manipulator.

Reimplemented from osgGA::GUIEventHandler.

bool osgViewer::RecordCameraPathHandler::handle ( const osgGA::GUIEventAdapter ,
osgGA::GUIActionAdapter  
)
virtual

Deprecated, Handle events, return true if handled, false otherwise.

Reimplemented from osgGA::GUIEventHandler.

void osgViewer::RecordCameraPathHandler::setAutoIncrementFilename ( bool  autoinc = true)
inline
void osgViewer::RecordCameraPathHandler::setKeyEventTogglePlayback ( int  key)
inline
void osgViewer::RecordCameraPathHandler::setKeyEventToggleRecord ( int  key)
inline

Member Data Documentation

osg::ref_ptr<osg::AnimationPath> osgViewer::RecordCameraPathHandler::_animPath
protected
osg::ref_ptr<osgGA::AnimationPathManipulator> osgViewer::RecordCameraPathHandler::_animPathManipulator
protected
osg::Timer_t osgViewer::RecordCameraPathHandler::_animStartTime
protected
int osgViewer::RecordCameraPathHandler::_autoinc
protected
bool osgViewer::RecordCameraPathHandler::_currentlyPlaying
protected
bool osgViewer::RecordCameraPathHandler::_currentlyRecording
protected
double osgViewer::RecordCameraPathHandler::_delta
protected
std::string osgViewer::RecordCameraPathHandler::_filename
protected
osgDB::ofstream osgViewer::RecordCameraPathHandler::_fout
protected
double osgViewer::RecordCameraPathHandler::_interval
protected
int osgViewer::RecordCameraPathHandler::_keyEventTogglePlayback
protected
int osgViewer::RecordCameraPathHandler::_keyEventToggleRecord
protected
osg::Timer_t osgViewer::RecordCameraPathHandler::_lastFrameTime
protected
osg::ref_ptr<osgGA::CameraManipulator> osgViewer::RecordCameraPathHandler::_oldManipulator
protected

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