ViewerBase
Go to the documentation of this file.
/* -*-c++-*- OpenSceneGraph - Copyright (C) 1998-2006 Robert Osfield
*
* This library is open source and may be redistributed and/or modified under
* the terms of the OpenSceneGraph Public License (OSGPL) version 0.0 or
* (at your option) any later version. The full license is in LICENSE file
* included with this distribution, and on the openscenegraph.org website.
*
* This library is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* OpenSceneGraph Public License for more details.
*/
#ifndef OSGVIEWER_VIEWERBASE
#define OSGVIEWER_VIEWERBASE 1
#include <osg/Stats>
#include <osgUtil/UpdateVisitor>
#include <osgUtil/IncrementalCompileOperation>
#include <osgGA/EventVisitor>
#include <osgGA/EventQueue>
#include <osgViewer/Scene>
#include <osgViewer/GraphicsWindow>
namespace osgViewer {
#define USE_REFERENCE_TIME DBL_MAX
class View;
class OSGVIEWER_EXPORT ViewerBase : public virtual osg::Object
{
public:
ViewerBase();
ViewerBase(const ViewerBase& vb);
virtual void setViewerStats(osg::Stats* stats) = 0;
virtual osg::Stats* getViewerStats() = 0;
virtual const osg::Stats* getViewerStats() const = 0;
virtual bool readConfiguration(const std::string& filename) = 0;
virtual bool isRealized() const = 0;
virtual void realize() = 0;
void setUseConfigureAffinity(bool flag) { _useConfigureAffinity = flag; }
bool getUseConfigureAffinity() const { return _useConfigureAffinity; }
virtual void configureAffinity();
virtual void setProcessorAffinity(const OpenThreads::Affinity& affinity) { _affinity = affinity; }
OpenThreads::Affinity& getProcessorAffinity() { return _affinity; }
const OpenThreads::Affinity& getProcessorAffinity() const { return _affinity; }
enum ThreadingModel
{
SingleThreaded,
CullDrawThreadPerContext,
ThreadPerContext = CullDrawThreadPerContext,
DrawThreadPerContext,
CullThreadPerCameraDrawThreadPerContext,
ThreadPerCamera = CullThreadPerCameraDrawThreadPerContext,
AutomaticSelection
};
virtual void setThreadingModel(ThreadingModel threadingModel);
ThreadingModel getThreadingModel() const { return _threadingModel; }
virtual ThreadingModel suggestBestThreadingModel();
virtual void setUpThreading();
bool areThreadsRunning() const { return _threadsRunning; }
virtual void stopThreading();
virtual void startThreading();
enum BarrierPosition
{
BeforeSwapBuffers,
AfterSwapBuffers
};
void setEndBarrierPosition(BarrierPosition bp);
BarrierPosition getEndBarrierPosition() const { return _endBarrierPosition; }
void setEndBarrierOperation(osg::BarrierOperation::PreBlockOp op);
osg::BarrierOperation::PreBlockOp getEndBarrierOperation() const { return _endBarrierOperation; }
void setDone(bool done) { _done = done; }
bool done() const { return _done; }
void setEventVisitor(osgGA::EventVisitor* eventVisitor) { _eventVisitor = eventVisitor; }
osgGA::EventVisitor* getEventVisitor() { return _eventVisitor.get(); }
const osgGA::EventVisitor* getEventVisitor() const { return _eventVisitor.get(); }
void setKeyEventSetsDone(int key) { _keyEventSetsDone = key; }
int getKeyEventSetsDone() const { return _keyEventSetsDone; }
void setQuitEventSetsDone(bool flag) { _quitEventSetsDone = flag; }
bool getQuitEventSetsDone() const { return _quitEventSetsDone; }
void setReleaseContextAtEndOfFrameHint(bool hint) { _releaseContextAtEndOfFrameHint = hint; }
bool getReleaseContextAtEndOfFrameHint() const { return _releaseContextAtEndOfFrameHint; }
void setUpdateVisitor(osgUtil::UpdateVisitor* updateVisitor) { _updateVisitor = updateVisitor; }
osgUtil::UpdateVisitor* getUpdateVisitor() { return _updateVisitor.get(); }
const osgUtil::UpdateVisitor* getUpdateVisitor() const { return _updateVisitor.get(); }
void setUpdateOperations(osg::OperationQueue* operations) { _updateOperations = operations; }
osg::OperationQueue* getUpdateOperations() { return _updateOperations.get(); }
const osg::OperationQueue* getUpdateOperations() const { return _updateOperations.get(); }
void addUpdateOperation(osg::Operation* operation);
void removeUpdateOperation(osg::Operation* operation);
void setRealizeOperation(osg::Operation* op) { _realizeOperation = op; }
osg::Operation* getRealizeOperation() { return _realizeOperation.get(); }
void setCleanUpOperation(osg::Operation* op) { _cleanUpOperation = op; }
osg::Operation* getCleanUpOperation() { return _cleanUpOperation.get(); }
void setIncrementalCompileOperation(osgUtil::IncrementalCompileOperation* ico);
osgUtil::IncrementalCompileOperation* getIncrementalCompileOperation() { return _incrementalCompileOperation.get(); }
enum FrameScheme
{
ON_DEMAND,
CONTINUOUS
};
void setRunFrameScheme(FrameScheme fs) { _runFrameScheme = fs; }
FrameScheme getRunFrameScheme() const { return _runFrameScheme; }
void setRunMaxFrameRate(double frameRate) { _runMaxFrameRate = frameRate; }
double getRunMaxFrameRate() const { return _runMaxFrameRate; }
virtual int run();
virtual bool checkNeedToDoFrame() = 0;
virtual bool checkEvents() = 0;
virtual void frame(double simulationTime=USE_REFERENCE_TIME);
virtual void advance(double simulationTime=USE_REFERENCE_TIME) = 0;
virtual void eventTraversal() = 0;
virtual void updateTraversal() = 0;
virtual void renderingTraversals();
typedef std::vector<osg::Camera*> Cameras;
virtual void getCameras(Cameras& cameras, bool onlyActive=true) = 0;
typedef std::vector<osg::GraphicsContext*> Contexts;
virtual void getContexts(Contexts& contexts, bool onlyValid=true) = 0;
typedef std::vector<osgViewer::GraphicsWindow*> Windows;
virtual void getWindows(Windows& windows, bool onlyValid=true);
typedef std::vector<OpenThreads::Thread*> Threads;
virtual void getAllThreads(Threads& threads, bool onlyActive=true) = 0;
typedef std::vector<osg::OperationThread*> OperationThreads;
virtual void getOperationThreads(OperationThreads& threads, bool onlyActive=true) = 0;
typedef std::vector<osgViewer::Scene*> Scenes;
virtual void getScenes(Scenes& scenes, bool onlyValid=true) = 0;
typedef std::vector<osgViewer::View*> Views;
virtual void getViews(Views& views, bool onlyValid=true) = 0;
void checkWindowStatus();
void checkWindowStatus(const Contexts& contexts);
virtual double elapsedTime() = 0;
virtual osg::FrameStamp* getViewerFrameStamp() = 0;
virtual void getUsage(osg::ApplicationUsage& usage) const = 0;
bool getRequestRedraw() const { return _requestRedraw; }
bool getRequestContinousUpdate() const { return _requestContinousUpdate; }
protected:
void viewerBaseInit();
friend class osgViewer::View;
inline void makeCurrent(osg::GraphicsContext* gc)
{
if (_currentContext==gc) return;
releaseContext();
if (gc && gc->valid() && gc->makeCurrent()) _currentContext = gc;
}
inline void releaseContext()
{
if (_currentContext.valid() && _currentContext->valid())
{
_currentContext->releaseContext();
}
_currentContext = 0;
}
virtual void viewerInit() = 0;
bool _firstFrame;
bool _done;
int _keyEventSetsDone;
bool _quitEventSetsDone;
bool _releaseContextAtEndOfFrameHint;
bool _useConfigureAffinity;
OpenThreads::Affinity _affinity;
ThreadingModel _threadingModel;
bool _threadsRunning;
bool _requestRedraw;
bool _requestContinousUpdate;
FrameScheme _runFrameScheme;
double _runMaxFrameRate;
BarrierPosition _endBarrierPosition;
osg::BarrierOperation::PreBlockOp _endBarrierOperation;
osg::ref_ptr<osg::BarrierOperation> _startRenderingBarrier;
osg::ref_ptr<osg::BarrierOperation> _endRenderingDispatchBarrier;
osg::ref_ptr<osg::EndOfDynamicDrawBlock> _endDynamicDrawBlock;
osg::ref_ptr<osgGA::EventVisitor> _eventVisitor;
osg::ref_ptr<osg::OperationQueue> _updateOperations;
osg::ref_ptr<osgUtil::UpdateVisitor> _updateVisitor;
osg::ref_ptr<osg::Operation> _realizeOperation;
osg::ref_ptr<osg::Operation> _cleanUpOperation;
osg::ref_ptr<osgUtil::IncrementalCompileOperation> _incrementalCompileOperation;
osg::observer_ptr<osg::GraphicsContext> _currentContext;
private:
// Define private copy constructor
// otherwsie VS2015 will construct it's own which will call the private copy operator from osg::Object resulting in an compile error.
ViewerBase& operator = (const ViewerBase&) { return *this; }
};
}
#endif
EventQueue
EventVisitor
GraphicsWindow
IncrementalCompileOperation
Scene
Stats
UpdateVisitor
USE_REFERENCE_TIME
#define USE_REFERENCE_TIME
Definition ViewerBase:30
OpenThreads::Affinity
Simple container for specifying which CPU a thread should have affinity with. An empty Affinity....
Definition Affinity:34
osgGA::EventVisitor
Definition EventVisitor:42
osgUtil::IncrementalCompileOperation
Definition IncrementalCompileOperation:56
osgUtil::UpdateVisitor
Definition UpdateVisitor:38
osgViewer::View
Definition osgViewer/View:76
osgViewer::ViewerBase::_eventVisitor
osg::ref_ptr< osgGA::EventVisitor > _eventVisitor
Definition ViewerBase:355
osgViewer::ViewerBase::_endBarrierOperation
osg::BarrierOperation::PreBlockOp _endBarrierOperation
Definition ViewerBase:349
osgViewer::ViewerBase::getCleanUpOperation
osg::Operation * getCleanUpOperation()
Definition ViewerBase:215
osgViewer::ViewerBase::makeCurrent
void makeCurrent(osg::GraphicsContext *gc)
Definition ViewerBase:310
osgViewer::ViewerBase::getRunFrameScheme
FrameScheme getRunFrameScheme() const
Definition ViewerBase:233
osgViewer::ViewerBase::startThreading
virtual void startThreading()
osgViewer::ViewerBase::getUpdateOperations
const osg::OperationQueue * getUpdateOperations() const
Definition ViewerBase:196
osgViewer::ViewerBase::_requestRedraw
bool _requestRedraw
Definition ViewerBase:341
osgViewer::ViewerBase::getProcessorAffinity
const OpenThreads::Affinity & getProcessorAffinity() const
Definition ViewerBase:75
osgViewer::ViewerBase::readConfiguration
virtual bool readConfiguration(const std::string &filename)=0
osgViewer::ViewerBase::getUseConfigureAffinity
bool getUseConfigureAffinity() const
Definition ViewerBase:67
osgViewer::ViewerBase::getAllThreads
virtual void getAllThreads(Threads &threads, bool onlyActive=true)=0
osgViewer::ViewerBase::ThreadingModel
ThreadingModel
Definition ViewerBase:78
osgViewer::ViewerBase::AutomaticSelection
@ AutomaticSelection
Definition ViewerBase:85
osgViewer::ViewerBase::CullThreadPerCameraDrawThreadPerContext
@ CullThreadPerCameraDrawThreadPerContext
Definition ViewerBase:83
osgViewer::ViewerBase::CullDrawThreadPerContext
@ CullDrawThreadPerContext
Definition ViewerBase:80
osgViewer::ViewerBase::SingleThreaded
@ SingleThreaded
Definition ViewerBase:79
osgViewer::ViewerBase::ThreadPerCamera
@ ThreadPerCamera
Definition ViewerBase:84
osgViewer::ViewerBase::ThreadPerContext
@ ThreadPerContext
Definition ViewerBase:81
osgViewer::ViewerBase::DrawThreadPerContext
@ DrawThreadPerContext
Definition ViewerBase:82
osgViewer::ViewerBase::setDone
void setDone(bool done)
Definition ViewerBase:136
osgViewer::ViewerBase::getCameras
virtual void getCameras(Cameras &cameras, bool onlyActive=true)=0
osgViewer::ViewerBase::_cleanUpOperation
osg::ref_ptr< osg::Operation > _cleanUpOperation
Definition ViewerBase:361
osgViewer::ViewerBase::getProcessorAffinity
OpenThreads::Affinity & getProcessorAffinity()
Definition ViewerBase:74
osgViewer::ViewerBase::isRealized
virtual bool isRealized() const =0
osgViewer::ViewerBase::getThreadingModel
ThreadingModel getThreadingModel() const
Definition ViewerBase:92
osgViewer::ViewerBase::setUpdateOperations
void setUpdateOperations(osg::OperationQueue *operations)
Definition ViewerBase:190
osgViewer::ViewerBase::setCleanUpOperation
void setCleanUpOperation(osg::Operation *op)
Definition ViewerBase:212
osgViewer::ViewerBase::_endRenderingDispatchBarrier
osg::ref_ptr< osg::BarrierOperation > _endRenderingDispatchBarrier
Definition ViewerBase:352
osgViewer::ViewerBase::configureAffinity
virtual void configureAffinity()
osgViewer::ViewerBase::setUseConfigureAffinity
void setUseConfigureAffinity(bool flag)
Definition ViewerBase:64
osgViewer::ViewerBase::checkWindowStatus
void checkWindowStatus()
osgViewer::ViewerBase::Threads
std::vector< OpenThreads::Thread * > Threads
Definition ViewerBase:272
osgViewer::ViewerBase::_affinity
OpenThreads::Affinity _affinity
Definition ViewerBase:337
osgViewer::ViewerBase::_currentContext
osg::observer_ptr< osg::GraphicsContext > _currentContext
Definition ViewerBase:364
osgViewer::ViewerBase::getViews
virtual void getViews(Views &views, bool onlyValid=true)=0
osgViewer::ViewerBase::getViewerStats
virtual osg::Stats * getViewerStats()=0
osgViewer::ViewerBase::_endDynamicDrawBlock
osg::ref_ptr< osg::EndOfDynamicDrawBlock > _endDynamicDrawBlock
Definition ViewerBase:353
osgViewer::ViewerBase::setViewerStats
virtual void setViewerStats(osg::Stats *stats)=0
osgViewer::ViewerBase::_updateVisitor
osg::ref_ptr< osgUtil::UpdateVisitor > _updateVisitor
Definition ViewerBase:358
osgViewer::ViewerBase::run
virtual int run()
osgViewer::ViewerBase::stopThreading
virtual void stopThreading()
osgViewer::ViewerBase::updateTraversal
virtual void updateTraversal()=0
osgViewer::ViewerBase::getWindows
virtual void getWindows(Windows &windows, bool onlyValid=true)
osgViewer::ViewerBase::getQuitEventSetsDone
bool getQuitEventSetsDone() const
Definition ViewerBase:163
osgViewer::ViewerBase::setRealizeOperation
void setRealizeOperation(osg::Operation *op)
Definition ViewerBase:206
osgViewer::ViewerBase::_useConfigureAffinity
bool _useConfigureAffinity
Definition ViewerBase:336
osgViewer::ViewerBase::suggestBestThreadingModel
virtual ThreadingModel suggestBestThreadingModel()
osgViewer::ViewerBase::BarrierPosition
BarrierPosition
Definition ViewerBase:110
osgViewer::ViewerBase::AfterSwapBuffers
@ AfterSwapBuffers
Definition ViewerBase:112
osgViewer::ViewerBase::BeforeSwapBuffers
@ BeforeSwapBuffers
Definition ViewerBase:111
osgViewer::ViewerBase::setQuitEventSetsDone
void setQuitEventSetsDone(bool flag)
Definition ViewerBase:160
osgViewer::ViewerBase::OperationThreads
std::vector< osg::OperationThread * > OperationThreads
Definition ViewerBase:275
osgViewer::ViewerBase::viewerInit
virtual void viewerInit()=0
osgViewer::ViewerBase::getRealizeOperation
osg::Operation * getRealizeOperation()
Definition ViewerBase:209
osgViewer::ViewerBase::_keyEventSetsDone
int _keyEventSetsDone
Definition ViewerBase:332
osgViewer::ViewerBase::setRunFrameScheme
void setRunFrameScheme(FrameScheme fs)
Definition ViewerBase:232
osgViewer::ViewerBase::ViewerBase
ViewerBase()
osgViewer::ViewerBase::addUpdateOperation
void addUpdateOperation(osg::Operation *operation)
osgViewer::ViewerBase::_startRenderingBarrier
osg::ref_ptr< osg::BarrierOperation > _startRenderingBarrier
Definition ViewerBase:351
osgViewer::ViewerBase::getUpdateOperations
osg::OperationQueue * getUpdateOperations()
Definition ViewerBase:193
osgViewer::ViewerBase::realize
virtual void realize()=0
osgViewer::ViewerBase::getOperationThreads
virtual void getOperationThreads(OperationThreads &threads, bool onlyActive=true)=0
osgViewer::ViewerBase::eventTraversal
virtual void eventTraversal()=0
osgViewer::ViewerBase::Views
std::vector< osgViewer::View * > Views
Definition ViewerBase:281
osgViewer::ViewerBase::_incrementalCompileOperation
osg::ref_ptr< osgUtil::IncrementalCompileOperation > _incrementalCompileOperation
Definition ViewerBase:362
osgViewer::ViewerBase::checkWindowStatus
void checkWindowStatus(const Contexts &contexts)
osgViewer::ViewerBase::getViewerFrameStamp
virtual osg::FrameStamp * getViewerFrameStamp()=0
osgViewer::ViewerBase::setIncrementalCompileOperation
void setIncrementalCompileOperation(osgUtil::IncrementalCompileOperation *ico)
osgViewer::ViewerBase::getRunMaxFrameRate
double getRunMaxFrameRate() const
Definition ViewerBase:236
osgViewer::ViewerBase::_firstFrame
bool _firstFrame
Definition ViewerBase:330
osgViewer::ViewerBase::renderingTraversals
virtual void renderingTraversals()
osgViewer::ViewerBase::frame
virtual void frame(double simulationTime=USE_REFERENCE_TIME)
osgViewer::ViewerBase::getIncrementalCompileOperation
osgUtil::IncrementalCompileOperation * getIncrementalCompileOperation()
Definition ViewerBase:223
osgViewer::ViewerBase::setRunMaxFrameRate
void setRunMaxFrameRate(double frameRate)
Definition ViewerBase:235
osgViewer::ViewerBase::done
bool done() const
Definition ViewerBase:139
osgViewer::ViewerBase::getUpdateVisitor
osgUtil::UpdateVisitor * getUpdateVisitor()
Definition ViewerBase:183
osgViewer::ViewerBase::setEndBarrierPosition
void setEndBarrierPosition(BarrierPosition bp)
osgViewer::ViewerBase::Cameras
std::vector< osg::Camera * > Cameras
Definition ViewerBase:263
osgViewer::ViewerBase::setReleaseContextAtEndOfFrameHint
void setReleaseContextAtEndOfFrameHint(bool hint)
Definition ViewerBase:173
osgViewer::ViewerBase::getEndBarrierPosition
BarrierPosition getEndBarrierPosition() const
Definition ViewerBase:123
osgViewer::ViewerBase::setUpThreading
virtual void setUpThreading()
osgViewer::ViewerBase::getRequestContinousUpdate
bool getRequestContinousUpdate() const
Definition ViewerBase:302
osgViewer::ViewerBase::getScenes
virtual void getScenes(Scenes &scenes, bool onlyValid=true)=0
osgViewer::ViewerBase::setProcessorAffinity
virtual void setProcessorAffinity(const OpenThreads::Affinity &affinity)
Definition ViewerBase:73
osgViewer::ViewerBase::setThreadingModel
virtual void setThreadingModel(ThreadingModel threadingModel)
osgViewer::ViewerBase::_done
bool _done
Definition ViewerBase:331
osgViewer::ViewerBase::getKeyEventSetsDone
int getKeyEventSetsDone() const
Definition ViewerBase:157
osgViewer::ViewerBase::getEventVisitor
const osgGA::EventVisitor * getEventVisitor() const
Definition ViewerBase:148
osgViewer::ViewerBase::Contexts
std::vector< osg::GraphicsContext * > Contexts
Definition ViewerBase:266
osgViewer::ViewerBase::_requestContinousUpdate
bool _requestContinousUpdate
Definition ViewerBase:342
osgViewer::ViewerBase::getViewerStats
virtual const osg::Stats * getViewerStats() const =0
osgViewer::ViewerBase::_threadingModel
ThreadingModel _threadingModel
Definition ViewerBase:338
osgViewer::ViewerBase::setEndBarrierOperation
void setEndBarrierOperation(osg::BarrierOperation::PreBlockOp op)
osgViewer::ViewerBase::_endBarrierPosition
BarrierPosition _endBarrierPosition
Definition ViewerBase:348
osgViewer::ViewerBase::getEventVisitor
osgGA::EventVisitor * getEventVisitor()
Definition ViewerBase:145
osgViewer::ViewerBase::_releaseContextAtEndOfFrameHint
bool _releaseContextAtEndOfFrameHint
Definition ViewerBase:334
osgViewer::ViewerBase::ViewerBase
ViewerBase(const ViewerBase &vb)
osgViewer::ViewerBase::FrameScheme
FrameScheme
Definition ViewerBase:227
osgViewer::ViewerBase::ON_DEMAND
@ ON_DEMAND
Definition ViewerBase:228
osgViewer::ViewerBase::CONTINUOUS
@ CONTINUOUS
Definition ViewerBase:229
osgViewer::ViewerBase::Scenes
std::vector< osgViewer::Scene * > Scenes
Definition ViewerBase:278
osgViewer::ViewerBase::setKeyEventSetsDone
void setKeyEventSetsDone(int key)
Definition ViewerBase:154
osgViewer::ViewerBase::_threadsRunning
bool _threadsRunning
Definition ViewerBase:339
osgViewer::ViewerBase::releaseContext
void releaseContext()
Definition ViewerBase:319
osgViewer::ViewerBase::removeUpdateOperation
void removeUpdateOperation(osg::Operation *operation)
osgViewer::ViewerBase::viewerBaseInit
void viewerBaseInit()
osgViewer::ViewerBase::_runMaxFrameRate
double _runMaxFrameRate
Definition ViewerBase:345
osgViewer::ViewerBase::checkNeedToDoFrame
virtual bool checkNeedToDoFrame()=0
osgViewer::ViewerBase::_realizeOperation
osg::ref_ptr< osg::Operation > _realizeOperation
Definition ViewerBase:360
osgViewer::ViewerBase::getContexts
virtual void getContexts(Contexts &contexts, bool onlyValid=true)=0
osgViewer::ViewerBase::elapsedTime
virtual double elapsedTime()=0
osgViewer::ViewerBase::_quitEventSetsDone
bool _quitEventSetsDone
Definition ViewerBase:333
osgViewer::ViewerBase::getRequestRedraw
bool getRequestRedraw() const
Definition ViewerBase:300
osgViewer::ViewerBase::getReleaseContextAtEndOfFrameHint
bool getReleaseContextAtEndOfFrameHint() const
Definition ViewerBase:176
osgViewer::ViewerBase::getUpdateVisitor
const osgUtil::UpdateVisitor * getUpdateVisitor() const
Definition ViewerBase:186
osgViewer::ViewerBase::checkEvents
virtual bool checkEvents()=0
osgViewer::ViewerBase::_updateOperations
osg::ref_ptr< osg::OperationQueue > _updateOperations
Definition ViewerBase:357
osgViewer::ViewerBase::areThreadsRunning
bool areThreadsRunning() const
Definition ViewerBase:101
osgViewer::ViewerBase::getUsage
virtual void getUsage(osg::ApplicationUsage &usage) const =0
osgViewer::ViewerBase::Windows
std::vector< osgViewer::GraphicsWindow * > Windows
Definition ViewerBase:269
osgViewer::ViewerBase::getEndBarrierOperation
osg::BarrierOperation::PreBlockOp getEndBarrierOperation() const
Definition ViewerBase:132
osgViewer::ViewerBase::advance
virtual void advance(double simulationTime=USE_REFERENCE_TIME)=0
osgViewer::ViewerBase::_runFrameScheme
FrameScheme _runFrameScheme
Definition ViewerBase:344
osgViewer::ViewerBase::setEventVisitor
void setEventVisitor(osgGA::EventVisitor *eventVisitor)
Definition ViewerBase:142
osgViewer::ViewerBase::setUpdateVisitor
void setUpdateVisitor(osgUtil::UpdateVisitor *updateVisitor)
Definition ViewerBase:180
osg::ApplicationUsage
Definition ApplicationUsage:26
osg::FrameStamp
Definition FrameStamp:35
osg::GraphicsContext
Definition GraphicsContext:30
osg::GraphicsContext::valid
virtual bool valid() const =0
osg::GraphicsContext::makeCurrent
bool makeCurrent()
osg::Object
Definition Object:61
osg::OperationQueue
Definition OperationThread:91
osg::Operation
Definition OperationThread:51
osg::Stats
Definition Stats:29
osg::observer_ptr
Definition observer_ptr:39
osg::ref_ptr
Definition ref_ptr:32
osgViewer
OSGVIEWER_EXPORT
#define OSGVIEWER_EXPORT
Definition osgViewer/Export:40
osg::BarrierOperation::PreBlockOp
PreBlockOp
Definition GraphicsThread:70