VR-Forces 4.8 Class Documentation
 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 Types | Protected Member Functions | Protected Attributes | Private Member Functions
makVrv::DtOpenVRTrackedCamera Class Reference

A concrete interface of a tracked camera using the OpenVR API. More...

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

Public Member Functions

 DtOpenVRTrackedCamera (DtDe &de, vr::IVRSystem *system)
 CTOR. More...
 
virtual ~DtOpenVRTrackedCamera ()
 DTOR. More...
 
virtual bool startStream ()
 start streaming video to the attached osg textures More...
 
virtual void stopStream ()
 stop streaming video to the attached osg textures More...
 
virtual void tick ()
 toggle streaming video More...
 
virtual void resetCameraProjection ()
 reset the camera projection More...
 
- Public Member Functions inherited from makVrv::DtTrackedCamera
 DtTrackedCamera (DtDe &de)
 CTOR. More...
 
virtual ~DtTrackedCamera ()
 DTOR. More...
 
virtual osg::ref_ptr
< osg::Texture2D > 
texture (Eye id)
 get the osg texture for a given eye. The data for the texture is updated each frame. More...
 
virtual osg::Matrixd pose (Eye e)
 Get the pose of the camera this frame. More...
 
virtual osg::Matrixd projection ()
 get the projection matrix for the camera. More...
 
virtual void toggleStreaming ()
 toggle streaming video More...
 
virtual bool isDualCamera ()
 whether or not this camera provides two video feeds simultaneously for stereo vision. More...
 
virtual void setCameraFov (float x, float y)
 set the camera FOV manually instead of pulling it from the camera More...
 
virtual void setCameraEye (float x, float y, float z, float pitch)
 set the camera eye location manually instead of pulling it from the camera More...
 

Static Public Member Functions

static bool hasTrackedCamera ()
 returns whether or not a tracked camera exists on the current device More...
 

Protected Types

typedef unsigned long long UInt64
 
- Protected Types inherited from makVrv::DtTrackedCamera
typedef unsigned long long UInt64
 

Protected Member Functions

virtual osg::Matrixd createProjectionMatrix (float zn, float zf, const float *fovx=NULL, const float *fovy=NULL)
 create a projection matrix More...
 
- Protected Member Functions inherited from makVrv::DtTrackedCamera
virtual void addEyeTexture (int width, int height, unsigned char *buffer)
 create an osg texture More...
 
virtual void invertBuffer ()
 flip the image buffer upside down so it is appropriate for openGL use More...
 

Protected Attributes

UInt64 myHandle
 
vr::EVRTrackedCameraFrameType myFrameType
 
vr::IVRSystem * myVrSystem
 
- Protected Attributes inherited from makVrv::DtTrackedCamera
DtDemyDe
 
bool myIsStreaming
 
UInt64 myLastFrameSequence
 
unsigned int myFrameWidth
 
unsigned int myFrameHeight
 
unsigned int myFrameBufferSize
 
unsigned charmyFrameBuffer
 
unsigned charmyFrameFlipBuffer
 
bool myIsDualCamera
 
int myDualFormat
 
std::vector< osg::ref_ptr
< osg::Texture2D > > 
myTextures
 
std::vector< osg::ref_ptr
< osg::Image > > 
myImages
 
osg::Matrixd myProjection
 
osg::Matrixd myView
 
std::vector< osg::Matrixd > myHeadToCameraMatrix
 
int myFrameType
 

Private Member Functions

 DtOpenVRTrackedCamera ()
 default CTOR More...
 
 DtOpenVRTrackedCamera (const DtOpenVRTrackedCamera &)
 default copy CTOR More...
 
DtOpenVRTrackedCameraoperator= (const DtOpenVRTrackedCamera &)
 default assignment operator More...
 

Additional Inherited Members

- Public Types inherited from makVrv::DtTrackedCamera
enum  Eye { Mono = 0, Left = 0, Right }
 

Detailed Description

A concrete interface of a tracked camera using the OpenVR API.

Member Typedef Documentation

Constructor & Destructor Documentation

makVrv::DtOpenVRTrackedCamera::DtOpenVRTrackedCamera ( )
private

default CTOR

makVrv::DtOpenVRTrackedCamera::DtOpenVRTrackedCamera ( const DtOpenVRTrackedCamera )
private

default copy CTOR

makVrv::DtOpenVRTrackedCamera::DtOpenVRTrackedCamera ( DtDe de,
vr::IVRSystem *  system 
)

CTOR.

virtual makVrv::DtOpenVRTrackedCamera::~DtOpenVRTrackedCamera ( )
virtual

DTOR.

Member Function Documentation

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

default assignment operator

static bool makVrv::DtOpenVRTrackedCamera::hasTrackedCamera ( )
static

returns whether or not a tracked camera exists on the current device

virtual bool makVrv::DtOpenVRTrackedCamera::startStream ( )
virtual

start streaming video to the attached osg textures

Implements makVrv::DtTrackedCamera.

virtual void makVrv::DtOpenVRTrackedCamera::stopStream ( )
virtual

stop streaming video to the attached osg textures

Implements makVrv::DtTrackedCamera.

virtual void makVrv::DtOpenVRTrackedCamera::tick ( )
virtual

toggle streaming video

Implements makVrv::DtTrackedCamera.

virtual void makVrv::DtOpenVRTrackedCamera::resetCameraProjection ( )
virtual

reset the camera projection

Implements makVrv::DtTrackedCamera.

virtual osg::Matrixd makVrv::DtOpenVRTrackedCamera::createProjectionMatrix ( float  zn,
float  zf,
const float *  fovx = NULL,
const float *  fovy = NULL 
)
protectedvirtual

create a projection matrix

Implements makVrv::DtTrackedCamera.

Member Data Documentation

UInt64 makVrv::DtOpenVRTrackedCamera::myHandle
protected
vr::EVRTrackedCameraFrameType makVrv::DtOpenVRTrackedCamera::myFrameType
protected
vr::IVRSystem* makVrv::DtOpenVRTrackedCamera::myVrSystem
protected

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

Document ID: Generated on Thu Aug 27 10:56:05 EDT 2020 from SVN revision 217100
Copyright © 2005-2020 MAK Technologies. All Rights Reserved (www.mak.com)