## class OSGPRODUCER_EXPORT osgProducer::Viewer

## Inheritance:

### Public Methods

Viewer()
Viewer(Producer::CameraConfig* cfg)
Viewer(const std::string& configFile)
Viewer(osg::ArgumentParser& arguments)
virtual ~Viewer()
void setUpViewer(unsigned int options=STANDARD_SETTINGS)
void setDone(bool done)
bool getDone() const
virtual bool done() const
  return true if the application is done and should exit
virtual void setViewByMatrix( const Producer::Matrix & pm)
  Override the Producer::CameraGroup::setViewByMatrix to catch all changes to view
virtual bool realize(ThreadingModel thread_model)
  Set the threading model and then call realize()
virtual bool realize()
virtual void update()
  Updated the scene.
void setUpdateVistor(osg::NodeVisitor* nv)
  set the update visitor which does the update traversal of the scene graph.
osg::NodeVisitor* getUpdateVistor()
  get the update visitor
const osg::NodeVisitor* getUpdateVistor() const
  get the const update visitor
virtual void frame()
  Dispatch the cull and draw for each of the Camera's for this frame
virtual void requestRedraw()
virtual void requestContinuousUpdate(bool)
virtual void requestWarpPointer(float x, float y)
bool computePixelCoords(float x, float y, unsigned int cameraNum, float& pixel_x, float& pixel_y)
  compute, from normalized mouse coords, for sepecified Camera, the pixel coords relative to that Camera's RenderSurface
bool computeNearFarPoints(float x, float y, unsigned int cameraNum, osg::Vec3& near, osg::Vec3& far)
  compute, from normalized mouse coords, for sepecified Camera, the near and far points in worlds coords
bool computeIntersections(float x, float y, unsigned int cameraNum, osgUtil::IntersectVisitor::HitList& hits)
  compute, from normalized mouse coords, for sepecified Camera, intersections with the scene
bool computeIntersections(float x, float y, osgUtil::IntersectVisitor::HitList& hits)
  compute, from normalized mouse coords, for all Cameras, intersections with the scene
void setKeyboardMouse(Producer::KeyboardMouse* kbm)
Producer::KeyboardMouse* getKeyboardMouse()
const Producer::KeyboardMouse* getKeyboardMouse() const
void setKeyboardMouseCallback(osgProducer::KeyboardMouseCallback* kbmcb)
osgProducer::KeyboardMouseCallback* getKeyboardMouseCallback()
const osgProducer::KeyboardMouseCallback* getKeyboardMouseCallback() const
EventHandlerList& getEventHandlerList()
const EventHandlerList& getEventHandlerList() const
osgGA::KeySwitchMatrixManipulator* getKeySwitchMatrixManipulator()
const osgGA::KeySwitchMatrixManipulator* getKeySwitchMatrixManipulator() const
unsigned int addCameraManipulator(osgGA::MatrixManipulator* cm)
void selectCameraManipulator(unsigned int no)
void setRecordingAnimationPath(bool on)
bool getRecordingAnimationPath() const
void setAnimationPath(osg::AnimationPath* path)
osg::AnimationPath* getAnimationPath()
const osg::AnimationPath* getAnimationPath() const
virtual void getUsage(osg::ApplicationUsage& usage) const
  Get the keyboard and mouse usage of this viewer

### Public Members

enum ViewerOptions
typedef std::list< osg::ref_ptr<osgGA::GUIEventHandler> > EventHandlerList

### Protected Fields

bool _done
osg::ref_ptr<Producer::KeyboardMouse> _kbm
osg::ref_ptr<osgProducer::KeyboardMouseCallback> _kbmcb
EventHandlerList _eventHandlerList
osg::ref_ptr<osgGA::KeySwitchMatrixManipulator> _keyswitchManipulator
osg::ref_ptr<osg::NodeVisitor> _updateVisitor
bool _recordingAnimationPath
osg::ref_ptr<osg::AnimationPath> _animationPath

### Inherited from OsgCameraGroup:

### Public Methods

void setApplicationUsage(osg::ApplicationUsage* au)
osg::ApplicationUsage* getApplicationUsage()
const osg::ApplicationUsage* getApplicationUsage() const
SceneHandlerList& getSceneHandlerList()
const SceneHandlerList& getSceneHandlerList() const
void setSceneData( osg::Node* scene )
osg::Node* getSceneData()
const osg::Node* getSceneData() const
void setSceneDecorator( osg::Group* decorator)
osg::Group* getSceneDecorator()
const osg::Group* getSceneDecorator() const
osg::Node* getTopMostSceneData()
const osg::Node* getTopMostSceneData() const
void setDisplaySettings( osg::DisplaySettings* ds )
osg::DisplaySettings* getDisplaySettings()
const osg::DisplaySettings* getDisplaySettings() const
void setFrameStamp( osg::FrameStamp* fs )
osg::FrameStamp* getFrameStamp()
const osg::FrameStamp* getFrameStamp() const
void setGlobalStateSet( osg::StateSet* sset )
osg::StateSet* getGlobalStateSet()
const osg::StateSet* getGlobalStateSet() const
void setBackgroundColor( const osg::Vec4& backgroundColor )
osg::Vec4& getBackgroundColor()
const osg::Vec4& getBackgroundColor() const
void setLODScale( float scale )
void setFusionDistance( osgUtil::SceneView::FusionDistanceMode mode, float value=1.0f)
void setDatabasePager( osgDB::DatabasePager* pager)
osgDB::DatabasePager* getDatabasePager()
const osgDB::DatabasePager* getDatabasePager() const
void setRealizeCallback( RealizeCallback* cb)
RealizeCallback* getRealizeCallback()
const RealizeCallback* getRealizeCallback() const
void advance()
virtual void setView(const osg::Matrixd& matrix)
osg::Matrixd getViewMatrix() const
virtual void sync()

### Public Members

typedef std::vector< Producer::ref_ptr<osgProducer::OsgSceneHandler> > SceneHandlerList
class OSGPRODUCER_EXPORT RealizeCallback: public osg::Referenced
  RealizeCallback class one should override to provide an the implemention of realize callbacks.

### Protected Fields

osg::ApplicationUsage* _applicationUsage
osg::ref_ptr<osg::Node> _scene_data
osg::ref_ptr<osg::Group> _scene_decorator
osg::ref_ptr<osg::StateSet> _global_stateset
osg::Vec4 _background_color
float _LODScale
osgUtil::SceneView::FusionDistanceMode _fusionDistanceMode
float _fusionDistanceValue
SceneHandlerList _shvec
osg::ref_ptr<RealizeCallback> _realizeCallback
osg::ref_ptr<osg::DisplaySettings> _ds
bool _initialized
unsigned int _frameNumber
osg::Timer _timer
osg::Timer_t _start_tick
osg::ref_ptr<osg::FrameStamp> _frameStamp
osg::ref_ptr<osgDB::DatabasePager> _databasePager

### Protected Methods

void setUpSceneViewsWithData()
void _init()

## Documentation

`Viewer()`

`Viewer(Producer::CameraConfig* cfg)`

`Viewer(const std::string& configFile)`

`Viewer(osg::ArgumentParser& arguments)`

`virtual ~Viewer()`

`enum ViewerOptions`

`NO_EVENT_HANDLERS`

`TRACKBALL_MANIPULATOR`

`DRIVE_MANIPULATOR`

`FLIGHT_MANIPULATOR`

`STATE_MANIPULATOR`

`HEAD_LIGHT_SOURCE`

`SKY_LIGHT_SOURCE`

`STATS_MANIPULATOR`

`VIEWER_MANIPULATOR`

`ESCAPE_SETS_DONE`

`STANDARD_SETTINGS`

`void setUpViewer(unsigned int options=STANDARD_SETTINGS)`

`void setDone(bool done)`

`bool getDone() const`

`virtual bool done() const`
  return true if the application is done and should exit

`virtual void setViewByMatrix( const Producer::Matrix & pm)`
  Override the Producer::CameraGroup::setViewByMatrix to catch all changes to view

`virtual bool realize(ThreadingModel thread_model)`
  Set the threading model and then call realize()

`virtual bool realize()`

`virtual void update()`
  Updated the scene. Handle any queued up events, do an update traversal and set the CameraGroup's setViewByMatrix if any camera manipulators are active.

`void setUpdateVistor(osg::NodeVisitor* nv)`
  set the update visitor which does the update traversal of the scene graph. Automatically called by the update() method.

`osg::NodeVisitor* getUpdateVistor()`
  get the update visitor

`const osg::NodeVisitor* getUpdateVistor() const`
  get the const update visitor

`virtual void frame()`
  Dispatch the cull and draw for each of the Camera's for this frame

`virtual void requestRedraw()`

`virtual void requestContinuousUpdate(bool)`

`virtual void requestWarpPointer(float x, float y)`

`bool computePixelCoords(float x, float y, unsigned int cameraNum, float& pixel_x, float& pixel_y)`
  compute, from normalized mouse coords, for sepecified Camera, the pixel coords relative to that Camera's RenderSurface

`bool computeNearFarPoints(float x, float y, unsigned int cameraNum, osg::Vec3& near, osg::Vec3& far)`
  compute, from normalized mouse coords, for sepecified Camera, the near and far points in worlds coords

`bool computeIntersections(float x, float y, unsigned int cameraNum, osgUtil::IntersectVisitor::HitList& hits)`
  compute, from normalized mouse coords, for sepecified Camera, intersections with the scene

`bool computeIntersections(float x, float y, osgUtil::IntersectVisitor::HitList& hits)`
  compute, from normalized mouse coords, for all Cameras, intersections with the scene

`void setKeyboardMouse(Producer::KeyboardMouse* kbm)`

`Producer::KeyboardMouse* getKeyboardMouse()`

`const Producer::KeyboardMouse* getKeyboardMouse() const`

`void setKeyboardMouseCallback(osgProducer::KeyboardMouseCallback* kbmcb)`

`osgProducer::KeyboardMouseCallback* getKeyboardMouseCallback()`

`const osgProducer::KeyboardMouseCallback* getKeyboardMouseCallback() const`

`typedef std::list< osg::ref_ptr<osgGA::GUIEventHandler> > EventHandlerList`

`EventHandlerList& getEventHandlerList()`

`const EventHandlerList& getEventHandlerList() const`

`osgGA::KeySwitchMatrixManipulator* getKeySwitchMatrixManipulator()`

`const osgGA::KeySwitchMatrixManipulator* getKeySwitchMatrixManipulator() const`

`unsigned int addCameraManipulator(osgGA::MatrixManipulator* cm)`

`void selectCameraManipulator(unsigned int no)`

`void setRecordingAnimationPath(bool on)`

`bool getRecordingAnimationPath() const`

`void setAnimationPath(osg::AnimationPath* path)`

`osg::AnimationPath* getAnimationPath()`

`const osg::AnimationPath* getAnimationPath() const`

`virtual void getUsage(osg::ApplicationUsage& usage) const`
  Get the keyboard and mouse usage of this viewer

`bool _done`

`osg::ref_ptr<Producer::KeyboardMouse> _kbm`

`osg::ref_ptr<osgProducer::KeyboardMouseCallback> _kbmcb`

`EventHandlerList _eventHandlerList`

`osg::ref_ptr<osgGA::KeySwitchMatrixManipulator> _keyswitchManipulator`

`osg::ref_ptr<osg::NodeVisitor> _updateVisitor`

`bool _recordingAnimationPath`

`osg::ref_ptr<osg::AnimationPath> _animationPath`

This class has no child classes.

Alphabetic index HTML hierarchy of classes or Java

This page was generated with the help of DOC++.