VR-Forces Developer's Guide
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Static Public Member Functions | Protected Member Functions | Protected Attributes | Private Member Functions

An Xtal implementation of the DtVirtualRealityProvider abstract base class.

Inheritance diagram for makVrv::DtXtalProvider:
Inheritance graph
[legend]

Public Member Functions

 DtXtalProvider (DtDe &de)
 
virtual ~DtXtalProvider ()
 
virtual DtSubmitOverlayCallbackcreateOverlayCallback (osg::Texture *tex, DtDe &de, DtVirtualRealityDriver &driver)
 
virtual DtSubmitViewCallbackcreateViewCallback (DtVirtualRealityPostProcessor &pp, DtVirtualRealityDriver &driver, vrvVirtualReality::DtEye eye)
 
virtual const std::string & providerName ()
 
virtual const std::string & deviceName ()
 
virtual bool initializeVR ()
 
virtual bool hasFocusViews ()
 
virtual bool useVrs ()
 
virtual
DtVariableRateShadingImageUpdater
findVrsUpdater (DtVirtualRealityChannel *channel)
 
virtual void getRecommendedRenderTargetSize (int &width, int &height, vrvVirtualReality::DtEye whichEye)
 
virtual DtSwapChainallocateSwapChain (vrvVirtualReality::DtEye whichEye, bool isOverlay)
 
virtual void getProjectionAngles (vrvVirtualReality::DtEye eye, double &left, double &right, double &bottom, double &top, double znear, double zfar)
 
virtual osg::Matrixd getEyeToHeadTransform (vrvVirtualReality::DtEye eye)
 
virtual bool getHmdPose (DtVector &pos, DtQuat &ori)
 
virtual void setHmdPoseOffset (const DtVector &pos, const DtQuat &ori)
 
virtual bool getTrackedPose (DtVector &pos, DtQuat &ori, int index)
 
virtual void commitEyeTexture (osg::RenderInfo &renderInfo, DtSwapChain *swapChain)
 
virtual void commitHudTexture (osg::RenderInfo &renderInfo, DtSwapChain *swapChain)
 
virtual void updateOverlayDimensions (float width, float height, float distance, int pixWidth, int pixHeight)
 
virtual void tick ()
 
virtual void beginFrame ()
 
virtual void beginRendering ()
 
virtual void endRendering ()
 
virtual bool reset ()
 
virtual bool shutdown ()
 
virtual bool hasTrackedCamera ()
 
virtual DtTrackedCamerafindTrackedCamera ()
 
virtual DtMixedRealityMaskfindMixedRealityMask ()
 
virtual void startMixedReality ()
 
virtual void stopMixedReality ()
 
virtual bool supportsMixedReality ()
 
virtual bool supportsDepthBufferSubmission ()
 
virtual
vrvVirtualReality::DtVrOverlayMode 
overlayMode ()
 
virtual void triggerAction1 ()
 
- Public Member Functions inherited from makVrv::DtVirtualRealityProvider
 DtVirtualRealityProvider (DtDe &de)
 
virtual ~DtVirtualRealityProvider ()
 
virtual DtBeginRenderingCallbackcreateBeginRenderingCallback (DtVirtualRealityDriver &driver, vrvVirtualReality::DtEye eye)
 
virtual bool mixedRealityRunning () const
 
virtual bool supportsRealWorldDepthTesting ()
 
virtual bool realWorldDepthTestingEnabled () const
 
virtual void startRealWorldDepthTesting ()
 
virtual void stopRealWorldDepthTesting ()
 

Static Public Member Functions

static bool isVrAvailable ()
 

Protected Member Functions

virtual void generateBlendedSwapChain (osg::RenderInfo &renderInfo)
 

Protected Attributes

uint32_t myDevice
 
bool myGraphicsInitalized
 
DtXtalSwapChainmySwapChain
 
DtSwapChainmyFrameEyeSwapChain
 
DtSwapChainmyFrameHudSwapChain
 
- Protected Attributes inherited from makVrv::DtVirtualRealityProvider
DtDemyDe
 
DtVirtualRealityDrivermyDriverHandle
 
DtTrackedCameramyTrackedCamera
 
DtMixedRealityMaskmyMixedRealityMask
 
bool myMixedRealityRunning
 
bool myRealWorldDepthTestingEnabled
 
std::map
< DtVirtualRealityChannel
*, osg::ref_ptr
< DtVariableRateShadingImageUpdater > > 
myChannelVrsUpdaters
 

Private Member Functions

 DtXtalProvider ()
 
 DtXtalProvider (const DtXtalProvider &)
 
DtXtalProvideroperator= (const DtXtalProvider &)
 

Constructor & Destructor Documentation

makVrv::DtXtalProvider::DtXtalProvider ( )
private

default CTOR

makVrv::DtXtalProvider::DtXtalProvider ( const DtXtalProvider )
private

default copy constructor

makVrv::DtXtalProvider::DtXtalProvider ( DtDe de)

CTOR.

virtual makVrv::DtXtalProvider::~DtXtalProvider ( )
virtual

DTOR.

Member Function Documentation

DtXtalProvider& makVrv::DtXtalProvider::operator= ( const DtXtalProvider )
private

assignment operator

static bool makVrv::DtXtalProvider::isVrAvailable ( )
static

Is this VR system available and an HMD connected for use. May be called without instantiating the provider.

virtual DtSubmitOverlayCallback* makVrv::DtXtalProvider::createOverlayCallback ( osg::Texture *  tex,
DtDe de,
DtVirtualRealityDriver driver 
)
virtual

create a system specific overlay callback

Implements makVrv::DtVirtualRealityProvider.

virtual DtSubmitViewCallback* makVrv::DtXtalProvider::createViewCallback ( DtVirtualRealityPostProcessor pp,
DtVirtualRealityDriver driver,
vrvVirtualReality::DtEye  eye 
)
virtual

create a system specific view callback

Implements makVrv::DtVirtualRealityProvider.

virtual const std::string& makVrv::DtXtalProvider::providerName ( )
virtual

get the name of this VR System provider

Implements makVrv::DtVirtualRealityProvider.

virtual const std::string& makVrv::DtXtalProvider::deviceName ( )
virtual

some systems can support multiple devices. Get the name of the attached device

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::initializeVR ( )
virtual

initialize the VR subsystem

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::hasFocusViews ( )
virtual

does this headset support focus views

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::useVrs ( )
virtual

should we use variable rate shading

Implements makVrv::DtVirtualRealityProvider.

virtual DtVariableRateShadingImageUpdater* makVrv::DtXtalProvider::findVrsUpdater ( DtVirtualRealityChannel channel)
virtual

return a vrs updater allocating it if needed

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::getRecommendedRenderTargetSize ( int width,
int height,
vrvVirtualReality::DtEye  whichEye 
)
virtual

get recommended VR target size

Implements makVrv::DtVirtualRealityProvider.

virtual DtSwapChain* makVrv::DtXtalProvider::allocateSwapChain ( vrvVirtualReality::DtEye  whichEye,
bool  isOverlay 
)
virtual

allocate a swapchain for this provider

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::getProjectionAngles ( vrvVirtualReality::DtEye  eye,
double left,
double right,
double bottom,
double top,
double  znear,
double  zfar 
)
virtual

get recommended projection frustum angles in degrees. Znear and zFar are passed in

Implements makVrv::DtVirtualRealityProvider.

virtual osg::Matrixd makVrv::DtXtalProvider::getEyeToHeadTransform ( vrvVirtualReality::DtEye  eye)
virtual

get the head to eye transform

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::getHmdPose ( DtVector &  pos,
DtQuat ori 
)
virtual

get the HMD pose

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::setHmdPoseOffset ( const DtVector &  pos,
const DtQuat ori 
)
virtual

set an constant offset to the hmd pose

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::getTrackedPose ( DtVector &  pos,
DtQuat ori,
int  index 
)
virtual

get the pose of a tracked item

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::commitEyeTexture ( osg::RenderInfo &  renderInfo,
DtSwapChain swapChain 
)
virtual

provider specific commit of eye texture to the HMD

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::commitHudTexture ( osg::RenderInfo &  renderInfo,
DtSwapChain swapChain 
)
virtual

provider specific commit of hud texture to the HMD

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::updateOverlayDimensions ( float  width,
float  height,
float  distance,
int  pixWidth,
int  pixHeight 
)
virtual

update hud overlay dimensions

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::tick ( )
virtual

update the VR system

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::beginFrame ( )
virtual

pretick signal call to begin the frame

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::beginRendering ( )
virtual

postupdate renderer call to begin rendering

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::endRendering ( )
virtual

posttick signal call to end rendering

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::reset ( )
virtual

reset the HMD

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::shutdown ( )
virtual

shutdown the VR subsystem

Implements makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::hasTrackedCamera ( )
virtual

check if there is a tracked camera

Implements makVrv::DtVirtualRealityProvider.

virtual DtTrackedCamera* makVrv::DtXtalProvider::findTrackedCamera ( )
virtual

get the tracked camera of the VR system.

Implements makVrv::DtVirtualRealityProvider.

virtual DtMixedRealityMask* makVrv::DtXtalProvider::findMixedRealityMask ( )
virtual

create a mixed reality mask allowing provider specific implementations

Implements makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::startMixedReality ( )
virtual

start mixed reality camera and blending etc

Reimplemented from makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::stopMixedReality ( )
virtual

stop mixed reality camera and blending etc

Reimplemented from makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::supportsMixedReality ( )
virtual

does the headset support mixed reality

Reimplemented from makVrv::DtVirtualRealityProvider.

virtual bool makVrv::DtXtalProvider::supportsDepthBufferSubmission ( )
virtual

\ breif returns true if the headset supports depth buffer submission for positional warp etc

Reimplemented from makVrv::DtVirtualRealityProvider.

virtual vrvVirtualReality::DtVrOverlayMode makVrv::DtXtalProvider::overlayMode ( )
virtual

should the overlay be rendered as strereo to another render texture

Reimplemented from makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::triggerAction1 ( )
virtual

trigger generic action for the provider

Reimplemented from makVrv::DtVirtualRealityProvider.

virtual void makVrv::DtXtalProvider::generateBlendedSwapChain ( osg::RenderInfo &  renderInfo)
protectedvirtual

blend the eye and hud swapchains into mySwapChain

Member Data Documentation

uint32_t makVrv::DtXtalProvider::myDevice
protected
bool makVrv::DtXtalProvider::myGraphicsInitalized
protected
DtXtalSwapChain* makVrv::DtXtalProvider::mySwapChain
mutableprotected
DtSwapChain* makVrv::DtXtalProvider::myFrameEyeSwapChain
protected
DtSwapChain* makVrv::DtXtalProvider::myFrameHudSwapChain
protected

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

Document ID: Generated on Thu Oct 23 22:29:17 EDT 2025 from SVN revision 280951
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)