Inheritance diagram for osgViewer::CompositeViewer:
Public Types | |
enum | ThreadingModel { SingleThreaded, ThreadPerContext, ThreadPerCamera } |
enum | BarrierPosition { BeforeSwapBuffers, AfterSwapBuffers } |
typedef std::vector< osg::GraphicsContext * > | Contexts |
typedef std::vector< osgViewer::GraphicsWindow * > | Windows |
typedef std::vector< osgViewer::Scene * > | Scenes |
Public Member Functions | |
CompositeViewer () | |
CompositeViewer (osg::ArgumentParser &arguments) | |
virtual | ~CompositeViewer () |
void | addView (osgViewer::View *view) |
void | removeView (osgViewer::View *view) |
osgViewer::View * | getView (unsigned i) |
const osgViewer::View * | getView (unsigned i) const |
unsigned int | getNumViews () const |
bool | isRealized () const |
Get whether at least of one of this viewers windows are realized. | |
void | realize () |
set up windows and associated threads. | |
void | setDone (bool done) |
bool | done () const |
void | setStartTick (osg::Timer_t tick) |
osg::Timer_t | getStartTick () const |
void | setReferenceTime (double time=0.0) |
osg::FrameStamp * | getFrameStamp () |
const osg::FrameStamp * | getFrameStamp () const |
void | setThreadingModel (ThreadingModel threadingModel) |
Set the threading model the rendering traversals will use. | |
ThreadingModel | getThreadingModel () const |
Get the threading model the rendering traversals will use. | |
void | setEndBarrierPosition (BarrierPosition bp) |
Set the position of the end barrier. | |
BarrierPosition | getEndBarrierPosition () const |
Get the end barrier position. | |
void | setEventQueue (osgGA::EventQueue *eventQueue) |
osgGA::EventQueue * | getEventQueue () |
const osgGA::EventQueue * | getEventQueue () const |
void | setKeyEventSetsDone (int key) |
Set the key event that the viewer checks on each frame to see if the viewer's done flag should be set to signal end of viewers main loop. | |
int | getKeyEventSetsDone () const |
get the key event that the viewer checks on each frame to see if the viewer's done flag. | |
void | setQuitEventSetsDone (bool flag) |
if the flag is true, the viewer set its done flag when a QUIT_APPLICATION is received, false disables this feature | |
bool | getQuitEventSetsDone () const |
| |
virtual int | run () |
Execute a main frame loop. | |
virtual void | frame (double simulationTime=USE_REFERENCE_TIME) |
Render a complete new frame. | |
virtual void | advance (double simulationTime=USE_REFERENCE_TIME) |
virtual void | eventTraversal () |
virtual void | updateTraversal () |
virtual void | renderingTraversals () |
void | setCameraWithFocus (osg::Camera *camera) |
osg::Camera * | getCameraWithFocus () |
const osg::Camera * | getCameraWithFocus () const |
osgViewer::View * | getViewWithFocus () |
const osgViewer::View * | getViewWithFocus () const |
void | getContexts (Contexts &contexts, bool onlyValid=true) |
void | getWindows (Windows &windows, bool onlyValid=true) |
void | getScenes (Scenes &scenes, bool onlyValid=true) |
void | setRealizeOperation (osg::Operation *op) |
Set the graphics operation to call on realization of the viewers graphics windows. | |
osg::Operation * | getRealizeOperation () |
Get the graphics operation to call on realization of the viewers graphics windows. | |
bool | areThreadsRunning () const |
Return true if viewer threads are running. | |
void | stopThreading () |
Stop any threads begin run by viewer. | |
void | startThreading () |
Start any threads required by the viewer, as per viewers ThreadingModel. | |
void | setUpRenderingSupport () |
Set up the Operations to render the various viewer cameras on the viewers graphics windows. | |
Protected Types | |
typedef std::vector< osg::ref_ptr< osgViewer::View > > | Views |
typedef std::map< osg::ref_ptr< osg::Camera >, osg::ref_ptr< osgUtil::SceneView > > | CameraSceneViewMap |
Protected Member Functions | |
void | constructorInit () |
void | init () |
void | checkWindowStatus () |
unsigned int | computeNumberOfThreadsIncludingMainRequired () |
Protected Attributes | |
Views | _views |
bool | _firstFrame |
bool | _done |
int | _keyEventSetsDone |
bool | _quitEventSetsDone |
ThreadingModel | _threadingModel |
bool | _threadsRunning |
BarrierPosition | _endBarrierPosition |
osg::ref_ptr< osg::BarrierOperation > | _startRenderingBarrier |
osg::ref_ptr< osg::BarrierOperation > | _endRenderingDispatchBarrier |
unsigned int | _numThreadsOnBarrier |
CameraSceneViewMap | _cameraSceneViewMap |
osg::Timer_t | _startTick |
osg::ref_ptr< osg::FrameStamp > | _frameStamp |
osg::observer_ptr< osg::Camera > | _cameraWithFocus |
osg::observer_ptr< osgViewer::View > | _viewWithFocus |
osg::ref_ptr< osgGA::EventQueue > | _eventQueue |
osg::ref_ptr< osgGA::EventVisitor > | _eventVisitor |
osg::ref_ptr< osg::Operation > | _realizeOperation |
typedef std::vector<osg::GraphicsContext*> osgViewer::CompositeViewer::Contexts |
typedef std::vector<osgViewer::GraphicsWindow*> osgViewer::CompositeViewer::Windows |
typedef std::vector<osgViewer::Scene*> osgViewer::CompositeViewer::Scenes |
typedef std::vector< osg::ref_ptr<osgViewer::View> > osgViewer::CompositeViewer::Views [protected] |
typedef std::map<osg::ref_ptr<osg::Camera>, osg::ref_ptr<osgUtil::SceneView> > osgViewer::CompositeViewer::CameraSceneViewMap [protected] |
osgViewer::CompositeViewer::CompositeViewer | ( | ) |
osgViewer::CompositeViewer::CompositeViewer | ( | osg::ArgumentParser & | arguments | ) |
virtual osgViewer::CompositeViewer::~CompositeViewer | ( | ) | [virtual] |
void osgViewer::CompositeViewer::addView | ( | osgViewer::View * | view | ) |
void osgViewer::CompositeViewer::removeView | ( | osgViewer::View * | view | ) |
osgViewer::View* osgViewer::CompositeViewer::getView | ( | unsigned | i | ) | [inline] |
const osgViewer::View* osgViewer::CompositeViewer::getView | ( | unsigned | i | ) | const [inline] |
unsigned int osgViewer::CompositeViewer::getNumViews | ( | ) | const [inline] |
bool osgViewer::CompositeViewer::isRealized | ( | ) | const |
Get whether at least of one of this viewers windows are realized.
void osgViewer::CompositeViewer::realize | ( | ) |
set up windows and associated threads.
void osgViewer::CompositeViewer::setDone | ( | bool | done | ) | [inline] |
bool osgViewer::CompositeViewer::done | ( | ) | const [inline] |
void osgViewer::CompositeViewer::setStartTick | ( | osg::Timer_t | tick | ) |
osg::Timer_t osgViewer::CompositeViewer::getStartTick | ( | ) | const [inline] |
void osgViewer::CompositeViewer::setReferenceTime | ( | double | time = 0.0 |
) |
osg::FrameStamp* osgViewer::CompositeViewer::getFrameStamp | ( | ) | [inline] |
const osg::FrameStamp* osgViewer::CompositeViewer::getFrameStamp | ( | ) | const [inline] |
void osgViewer::CompositeViewer::setThreadingModel | ( | ThreadingModel | threadingModel | ) |
Set the threading model the rendering traversals will use.
ThreadingModel osgViewer::CompositeViewer::getThreadingModel | ( | ) | const [inline] |
Get the threading model the rendering traversals will use.
void osgViewer::CompositeViewer::setEndBarrierPosition | ( | BarrierPosition | bp | ) |
Set the position of the end barrier.
AfterSwapBuffers will may result is slightly higher framerates, by may lead to inconcistent swapping between different windows. BeforeSwapBuffers may lead to slightly lower framerate, but improve consistency in timing of swap buffers, especially important if you are likely to consistently break frame.
BarrierPosition osgViewer::CompositeViewer::getEndBarrierPosition | ( | ) | const [inline] |
Get the end barrier position.
void osgViewer::CompositeViewer::setEventQueue | ( | osgGA::EventQueue * | eventQueue | ) | [inline] |
osgGA::EventQueue* osgViewer::CompositeViewer::getEventQueue | ( | ) | [inline] |
const osgGA::EventQueue* osgViewer::CompositeViewer::getEventQueue | ( | ) | const [inline] |
void osgViewer::CompositeViewer::setKeyEventSetsDone | ( | int | key | ) | [inline] |
Set the key event that the viewer checks on each frame to see if the viewer's done flag should be set to signal end of viewers main loop.
Default value is Escape (osgGA::GUIEVentAdapter::KEY_Escape). Setting to 0 switches off the feature.
int osgViewer::CompositeViewer::getKeyEventSetsDone | ( | ) | const [inline] |
get the key event that the viewer checks on each frame to see if the viewer's done flag.
void osgViewer::CompositeViewer::setQuitEventSetsDone | ( | bool | flag | ) | [inline] |
if the flag is true, the viewer set its done flag when a QUIT_APPLICATION is received, false disables this feature
bool osgViewer::CompositeViewer::getQuitEventSetsDone | ( | ) | const [inline] |
virtual int osgViewer::CompositeViewer::run | ( | ) | [virtual] |
virtual void osgViewer::CompositeViewer::frame | ( | double | simulationTime = USE_REFERENCE_TIME |
) | [virtual] |
Render a complete new frame.
Calls advance(), eventTraversal(), updateTraversal(), renderingTraversals().
virtual void osgViewer::CompositeViewer::advance | ( | double | simulationTime = USE_REFERENCE_TIME |
) | [virtual] |
virtual void osgViewer::CompositeViewer::eventTraversal | ( | ) | [virtual] |
virtual void osgViewer::CompositeViewer::updateTraversal | ( | ) | [virtual] |
virtual void osgViewer::CompositeViewer::renderingTraversals | ( | ) | [virtual] |
void osgViewer::CompositeViewer::setCameraWithFocus | ( | osg::Camera * | camera | ) |
osg::Camera* osgViewer::CompositeViewer::getCameraWithFocus | ( | ) | [inline] |
const osg::Camera* osgViewer::CompositeViewer::getCameraWithFocus | ( | ) | const [inline] |
osgViewer::View* osgViewer::CompositeViewer::getViewWithFocus | ( | ) | [inline] |
const osgViewer::View* osgViewer::CompositeViewer::getViewWithFocus | ( | ) | const [inline] |
void osgViewer::CompositeViewer::getContexts | ( | Contexts & | contexts, | |
bool | onlyValid = true | |||
) |
void osgViewer::CompositeViewer::getWindows | ( | Windows & | windows, | |
bool | onlyValid = true | |||
) |
void osgViewer::CompositeViewer::getScenes | ( | Scenes & | scenes, | |
bool | onlyValid = true | |||
) |
void osgViewer::CompositeViewer::setRealizeOperation | ( | osg::Operation * | op | ) | [inline] |
Set the graphics operation to call on realization of the viewers graphics windows.
osg::Operation* osgViewer::CompositeViewer::getRealizeOperation | ( | ) | [inline] |
Get the graphics operation to call on realization of the viewers graphics windows.
bool osgViewer::CompositeViewer::areThreadsRunning | ( | ) | const [inline] |
Return true if viewer threads are running.
void osgViewer::CompositeViewer::stopThreading | ( | ) |
Stop any threads begin run by viewer.
void osgViewer::CompositeViewer::startThreading | ( | ) |
Start any threads required by the viewer, as per viewers ThreadingModel.
void osgViewer::CompositeViewer::setUpRenderingSupport | ( | ) |
Set up the Operations to render the various viewer cameras on the viewers graphics windows.
void osgViewer::CompositeViewer::constructorInit | ( | ) | [protected] |
void osgViewer::CompositeViewer::init | ( | ) | [protected] |
void osgViewer::CompositeViewer::checkWindowStatus | ( | ) | [protected] |
unsigned int osgViewer::CompositeViewer::computeNumberOfThreadsIncludingMainRequired | ( | ) | [protected] |
Views osgViewer::CompositeViewer::_views [protected] |
bool osgViewer::CompositeViewer::_firstFrame [protected] |
bool osgViewer::CompositeViewer::_done [protected] |
int osgViewer::CompositeViewer::_keyEventSetsDone [protected] |
bool osgViewer::CompositeViewer::_quitEventSetsDone [protected] |
bool osgViewer::CompositeViewer::_threadsRunning [protected] |
osg::ref_ptr<osg::BarrierOperation> osgViewer::CompositeViewer::_endRenderingDispatchBarrier [protected] |
unsigned int osgViewer::CompositeViewer::_numThreadsOnBarrier [protected] |
osg::Timer_t osgViewer::CompositeViewer::_startTick [protected] |