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

Classes

class  CaptureOperation
class  WriteToFile

Public Member Functions

 ScreenCaptureHandler (CaptureOperation *defaultOperation=0, int numFrames=1)
void setKeyEventTakeScreenShot (int key)
int getKeyEventTakeScreenShot () const
void setKeyEventToggleContinuousCapture (int key)
int getKeyEventToggleContinuousCapture () const
void setCaptureOperation (CaptureOperation *operation)
CaptureOperationgetCaptureOperation () const
virtual bool handle (const osgGA::GUIEventAdapter &ea, osgGA::GUIActionAdapter &aa)
virtual void captureNextFrame (osgViewer::ViewerBase &viewer)
void setFramesToCapture (int numFrames)
int getFramesToCapture () const
void startCapture ()
void stopCapture ()
virtual void getUsage (osg::ApplicationUsage &usage) const
- 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 Member Functions

void addCallbackToViewer (osgViewer::ViewerBase &viewer)
void removeCallbackFromViewer (osgViewer::ViewerBase &viewer)
osg::CamerafindAppropriateCameraForCallback (osgViewer::ViewerBase &viewer)

Protected Attributes

bool _startCapture
bool _stopCapture
int _keyEventTakeScreenShot
int _keyEventToggleContinuousCapture
osg::ref_ptr< CaptureOperation_operation
osg::ref_ptr
< osg::Camera::DrawCallback
_callback
- 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

Detailed Description

Event handler that will capture the screen on key press.

Constructor & Destructor Documentation

osgViewer::ScreenCaptureHandler::ScreenCaptureHandler ( CaptureOperation defaultOperation = 0,
int  numFrames = 1 
)
Parameters
numFrames>0: capture that number of frames. <0: capture all frames, call stopCapture() to stop it.

Member Function Documentation

void osgViewer::ScreenCaptureHandler::addCallbackToViewer ( osgViewer::ViewerBase viewer)
protected
virtual void osgViewer::ScreenCaptureHandler::captureNextFrame ( osgViewer::ViewerBase viewer)
virtual

Capture the given viewer's views on the next frame.

osg::Camera* osgViewer::ScreenCaptureHandler::findAppropriateCameraForCallback ( osgViewer::ViewerBase viewer)
protected
CaptureOperation* osgViewer::ScreenCaptureHandler::getCaptureOperation ( ) const
int osgViewer::ScreenCaptureHandler::getFramesToCapture ( ) const

Get the number of frames to capture.

int osgViewer::ScreenCaptureHandler::getKeyEventTakeScreenShot ( ) const
inline
int osgViewer::ScreenCaptureHandler::getKeyEventToggleContinuousCapture ( ) const
inline
virtual void osgViewer::ScreenCaptureHandler::getUsage ( osg::ApplicationUsage usage) const
virtual

Get the keyboard and mouse usage of this manipulator.

Reimplemented from osgGA::GUIEventHandler.

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

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

Reimplemented from osgGA::GUIEventHandler.

void osgViewer::ScreenCaptureHandler::removeCallbackFromViewer ( osgViewer::ViewerBase viewer)
protected
void osgViewer::ScreenCaptureHandler::setCaptureOperation ( CaptureOperation operation)
void osgViewer::ScreenCaptureHandler::setFramesToCapture ( int  numFrames)

Set the number of frames to capture.

Parameters
numFrames>0: capture that number of frames. <0: capture all frames, call stopCapture() to stop it.
void osgViewer::ScreenCaptureHandler::setKeyEventTakeScreenShot ( int  key)
inline
void osgViewer::ScreenCaptureHandler::setKeyEventToggleContinuousCapture ( int  key)
inline
void osgViewer::ScreenCaptureHandler::startCapture ( )

Start capturing any viewer(s) the handler is attached to at the end of the next frame.

void osgViewer::ScreenCaptureHandler::stopCapture ( )

Stop capturing.

Member Data Documentation

osg::ref_ptr<osg::Camera::DrawCallback> osgViewer::ScreenCaptureHandler::_callback
protected
int osgViewer::ScreenCaptureHandler::_keyEventTakeScreenShot
protected
int osgViewer::ScreenCaptureHandler::_keyEventToggleContinuousCapture
protected
osg::ref_ptr<CaptureOperation> osgViewer::ScreenCaptureHandler::_operation
protected
bool osgViewer::ScreenCaptureHandler::_startCapture
protected
bool osgViewer::ScreenCaptureHandler::_stopCapture
protected

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