OpenCOVER
Classes | Public Types | Public Member Functions | Static Public Member Functions | Public Attributes | Static Public Attributes | Friends | List of all members
opencover::VRViewer Class Reference

#include <VRViewer.h>

Inheritance diagram for opencover::VRViewer:
Inheritance graph
[legend]
Collaboration diagram for opencover::VRViewer:
Collaboration graph
[legend]

Classes

struct  FrustaAndViews
 
struct  FrustumAndView
 

Public Types

enum  Eye { EyeMiddle , EyeLeft , EyeRight }
 

Public Member Functions

virtual bool update ()
 
virtual void frame ()
 
bool handleEvents ()
 
void redrawHUD (double interval)
 
virtual void startThreading ()
 
void addCamera (osg::Camera *camera)
 
void removeCamera (osg::Camera *camera)
 
void setClearColor (const osg::Vec4 &color)
 
void setRenderToTexture (bool)
 
void flipStereo ()
 
void setFullscreen (bool state)
 
bool isFullscreen () const
 
void disableSync ()
 
FrustaAndViews computeFrustumAndView (int i)
 
void setFrustumAndView (int i)
 
osg::Vec3 eyeOffset (Eye eye) const
 
void setSeparation (float stereoSep)
 
 VRViewer ()
 
virtual ~VRViewer ()
 
void config ()
 
void unconfig ()
 
virtual void getCameras (Cameras &cameras, bool onlyActive=true)
 
virtual void getContexts (Contexts &contexts, bool onlyValid=true)
 
virtual void getScenes (Scenes &scenes, bool onlyValid=true)
 
void updateViewerMat (const osg::Matrix &mat)
 
void setViewerMat (osg::Matrix &mat)
 
osg::Matrix & getViewerMat ()
 
osg::Vec3 & getViewerPos ()
 
osg::Vec3 & getInitialViewerPos ()
 
void setInitialViewerPos (osg::Vec3 &po)
 
void culling (bool enable, osg::CullSettings::CullingModeValues mode=osg::CullSettings::ENABLE_ALL_CULLING, bool once=false)
 
void forceCompile ()
 
angleStructgetAngleStruct ()
 
float getSeparation ()
 
osg::Vec4 getBackgroundColor ()
 
void overwriteViewAndProjectionMatrix (bool state)
 
bool isMatrixOverwriteOn ()
 
void glContextOperation (osg::GraphicsContext *ctx)
 
osg::Node::NodeMask getCullMask ()
 
osg::Node::NodeMask getCullMaskLeft ()
 
osg::Node::NodeMask getCullMaskRight ()
 

Static Public Member Functions

static bool mustDraw ()
 
static VRViewerinstance ()
 

Public Attributes

bool clearWindow = true
 
int numClears = 0
 
std::vector< osg::ref_ptr< osg::Camera > > viewportCamera
 
std::vector< osg::ref_ptr< osg::Camera > > blendingCamera
 
bool m_fullscreen = false
 
coVRStatsDisplaystatsDisplay = nullptr
 
InitGLOperationm_initGlOp = nullptr
 
bool m_requireGlFinish = true
 

Static Public Attributes

static int unsyncedFrames
 

Friends

class OpenCOVER
 

Member Enumeration Documentation

◆ Eye

Enumerator
EyeMiddle 
EyeLeft 
EyeRight 

Constructor & Destructor Documentation

◆ VRViewer()

opencover::VRViewer::VRViewer ( )

◆ ~VRViewer()

virtual opencover::VRViewer::~VRViewer ( )
virtual

Member Function Documentation

◆ addCamera()

void opencover::VRViewer::addCamera ( osg::Camera *  camera)

◆ computeFrustumAndView()

FrustaAndViews opencover::VRViewer::computeFrustumAndView ( int  i)

◆ config()

void opencover::VRViewer::config ( )

◆ culling()

void opencover::VRViewer::culling ( bool  enable,
osg::CullSettings::CullingModeValues  mode = osg::CullSettings::ENABLE_ALL_CULLING,
bool  once = false 
)

◆ disableSync()

void opencover::VRViewer::disableSync ( )

initiate shut down

◆ eyeOffset()

osg::Vec3 opencover::VRViewer::eyeOffset ( Eye  eye) const

◆ flipStereo()

void opencover::VRViewer::flipStereo ( )

◆ forceCompile()

void opencover::VRViewer::forceCompile ( )

◆ frame()

virtual void opencover::VRViewer::frame ( )
virtual

Dispatch the cull and draw for each of the Camera's for this frame.

◆ getAngleStruct()

angleStruct * opencover::VRViewer::getAngleStruct ( )
inline

◆ getBackgroundColor()

osg::Vec4 opencover::VRViewer::getBackgroundColor ( )
inline

◆ getCameras()

virtual void opencover::VRViewer::getCameras ( Cameras &  cameras,
bool  onlyActive = true 
)
virtual

◆ getContexts()

virtual void opencover::VRViewer::getContexts ( Contexts &  contexts,
bool  onlyValid = true 
)
virtual

◆ getCullMask()

osg::Node::NodeMask opencover::VRViewer::getCullMask ( )

◆ getCullMaskLeft()

osg::Node::NodeMask opencover::VRViewer::getCullMaskLeft ( )

◆ getCullMaskRight()

osg::Node::NodeMask opencover::VRViewer::getCullMaskRight ( )

◆ getInitialViewerPos()

osg::Vec3 & opencover::VRViewer::getInitialViewerPos ( )
inline

◆ getScenes()

virtual void opencover::VRViewer::getScenes ( Scenes &  scenes,
bool  onlyValid = true 
)
virtual

◆ getSeparation()

float opencover::VRViewer::getSeparation ( )
inline

◆ getViewerMat()

osg::Matrix & opencover::VRViewer::getViewerMat ( )
inline

◆ getViewerPos()

osg::Vec3 & opencover::VRViewer::getViewerPos ( )
inline

◆ glContextOperation()

void opencover::VRViewer::glContextOperation ( osg::GraphicsContext *  ctx)

◆ handleEvents()

bool opencover::VRViewer::handleEvents ( )

◆ instance()

static VRViewer * opencover::VRViewer::instance ( )
static

◆ isFullscreen()

bool opencover::VRViewer::isFullscreen ( ) const

◆ isMatrixOverwriteOn()

bool opencover::VRViewer::isMatrixOverwriteOn ( )
inline

◆ mustDraw()

static bool opencover::VRViewer::mustDraw ( )
static

Whether this cluster instance/rank has any framebuffers to draw into.

◆ overwriteViewAndProjectionMatrix()

void opencover::VRViewer::overwriteViewAndProjectionMatrix ( bool  state)
inline

◆ redrawHUD()

void opencover::VRViewer::redrawHUD ( double  interval)

◆ removeCamera()

void opencover::VRViewer::removeCamera ( osg::Camera *  camera)

◆ setClearColor()

void opencover::VRViewer::setClearColor ( const osg::Vec4 &  color)

◆ setFrustumAndView()

void opencover::VRViewer::setFrustumAndView ( int  i)

◆ setFullscreen()

void opencover::VRViewer::setFullscreen ( bool  state)

◆ setInitialViewerPos()

void opencover::VRViewer::setInitialViewerPos ( osg::Vec3 &  po)
inline

◆ setRenderToTexture()

void opencover::VRViewer::setRenderToTexture ( bool  )

◆ setSeparation()

void opencover::VRViewer::setSeparation ( float  stereoSep)

◆ setViewerMat()

void opencover::VRViewer::setViewerMat ( osg::Matrix &  mat)
inline

◆ startThreading()

virtual void opencover::VRViewer::startThreading ( )
virtual

Start any threads required by the viewer.

◆ unconfig()

void opencover::VRViewer::unconfig ( )

◆ update()

virtual bool opencover::VRViewer::update ( )
virtual

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

◆ updateViewerMat()

void opencover::VRViewer::updateViewerMat ( const osg::Matrix &  mat)

Friends And Related Function Documentation

◆ OpenCOVER

friend class OpenCOVER
friend

Member Data Documentation

◆ blendingCamera

std::vector<osg::ref_ptr<osg::Camera> > opencover::VRViewer::blendingCamera

◆ clearWindow

bool opencover::VRViewer::clearWindow = true

◆ m_fullscreen

bool opencover::VRViewer::m_fullscreen = false

◆ m_initGlOp

InitGLOperation* opencover::VRViewer::m_initGlOp = nullptr

◆ m_requireGlFinish

bool opencover::VRViewer::m_requireGlFinish = true

◆ numClears

int opencover::VRViewer::numClears = 0

◆ statsDisplay

coVRStatsDisplay* opencover::VRViewer::statsDisplay = nullptr

◆ unsyncedFrames

int opencover::VRViewer::unsyncedFrames
static

◆ viewportCamera

std::vector<osg::ref_ptr<osg::Camera> > opencover::VRViewer::viewportCamera

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