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 | Protected Attributes | Private Member Functions

Varjo implementation of a texture swapchain.

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

Public Member Functions

 DtVarjoSwapChain (DtDe &de, vrvVirtualReality::DtEye eye, varjo_Session *session)
 
virtual ~DtVarjoSwapChain ()
 
virtual bool initalise (unsigned int width, unsigned int height, unsigned int layers, DtSwapChainTextureType type, DtGlImageType format)
 
bool addFormat (DtSwapChainTextureType type, DtGlImageType format)
 
virtual void acquireTextures ()
 
virtual unsigned int getTexture (DtSwapChainTextureType type, int index) const
 
virtual void releaseTextures ()
 
varjo_SwapChain * getSwapChain (DtSwapChainTextureType type) const
 
varjo_TextureFormat getVarjoFormat (DtGlImageType format) const
 
- Public Member Functions inherited from makVrv::DtSwapChain
 DtSwapChain (DtDe &de, vrvVirtualReality::DtEye eye)
 
virtual ~DtSwapChain ()
 
unsigned int getAcquiredIndex (DtSwapChainTextureType type) const
 
bool isInitialized () const
 
unsigned int length () const
 
DtSwapChainTextureType type (unsigned int index) const
 
DtGlImageType format (unsigned int index) const
 
DtGlImageType format (DtSwapChainTextureType type) const
 
unsigned int width () const
 
unsigned int height () const
 
unsigned int layers () const
 
vrvVirtualReality::DtEye eye () const
 
GLuint getFbo (unsigned int index) const
 
virtual void copyTextures (osg::RenderInfo &renderInfo, unsigned int srcColorId, unsigned int srcDepthId, unsigned int srcStencilId, bool copySrcAlpha=false, bool srcIsArray=true, int mode=0) const
 
virtual void blitTextureToScreen (int swidth, int sheight, bool showleftEye, int overrideIndex=-1)
 
virtual void blendSwapChains (osg::RenderInfo &renderInfo, DtSwapChain *base, DtSwapChain *overlay) const
 

Protected Attributes

varjo_Session * myVarjoSession
 
std::map
< DtSwapChainTextureType,
varjo_SwapChainConfig2 > 
mySwapChainConfigs
 
std::map
< DtSwapChainTextureType,
varjo_SwapChain * > 
mySwapChains
 
- Protected Attributes inherited from makVrv::DtSwapChain
bool myIsInitialized
 
vrvVirtualReality::DtEye myEye
 
unsigned int myLength
 
std::vector
< DtSwapChainTextureType
myTextureTypes
 
std::vector< DtGlImageTypemyFormats
 
unsigned int myWidth
 
unsigned int myHeight
 
unsigned int myLayers
 
std::map
< DtSwapChainTextureType,
unsigned int
mySwapChainIndexes
 
std::vector< GLuintmyFbos
 
DtGlProgrammyCopyProgram
 
int myLastCopyProgramConfig
 
osg::ref_ptr< osg::StateSet > myCopyStateSet
 
unsigned int myCopyQuadVbo
 
unsigned int myLastStencilTexId
 
unsigned int mySrcStencilTexId
 
DtGlProgrammyBlendProgram
 
DtDemyDe
 

Private Member Functions

 DtVarjoSwapChain ()
 
 DtVarjoSwapChain (const DtVarjoSwapChain &orig)
 
DtVarjoSwapChainoperator= (const DtVarjoSwapChain &)
 

Additional Inherited Members

- Protected Member Functions inherited from makVrv::DtSwapChain
virtual bool initaliseFbos () const
 
virtual bool initCopyProgram (bool copyDepth, bool copyStencil, bool copySrcAlpha, bool srcIsArray) const
 
virtual bool initBlendProgram () const
 

Constructor & Destructor Documentation

makVrv::DtVarjoSwapChain::DtVarjoSwapChain ( )
private

prevent default constructor

makVrv::DtVarjoSwapChain::DtVarjoSwapChain ( const DtVarjoSwapChain orig)
private

prevent copy construction

makVrv::DtVarjoSwapChain::DtVarjoSwapChain ( DtDe de,
vrvVirtualReality::DtEye  eye,
varjo_Session *  session 
)

CTOR takes the post processor, eye to submit for and the VR driver.

virtual makVrv::DtVarjoSwapChain::~DtVarjoSwapChain ( )
virtual

DTOR.

Member Function Documentation

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

prevent assignment

virtual bool makVrv::DtVarjoSwapChain::initalise ( unsigned int  width,
unsigned int  height,
unsigned int  layers,
DtSwapChainTextureType  type,
DtGlImageType  format 
)
virtual

create our swap chain with the requested format, deleting any existing one

Reimplemented from makVrv::DtSwapChain.

bool makVrv::DtVarjoSwapChain::addFormat ( DtSwapChainTextureType  type,
DtGlImageType  format 
)
virtual

add a swap chain of the specified format, initalise needs to have been called first to set dimensions

Reimplemented from makVrv::DtSwapChain.

virtual void makVrv::DtVarjoSwapChain::acquireTextures ( )
virtual

acquire the textures from the swap chain for this frame, storing the index in mySwapChainIndexes

Implements makVrv::DtSwapChain.

virtual unsigned int makVrv::DtVarjoSwapChain::getTexture ( DtSwapChainTextureType  type,
int  index 
) const
virtual

return the GL texture id of the color swapchain texture at index, pass -1 for currently aquired

Implements makVrv::DtSwapChain.

virtual void makVrv::DtVarjoSwapChain::releaseTextures ( )
virtual

release the current swapchain texture

Implements makVrv::DtSwapChain.

varjo_SwapChain* makVrv::DtVarjoSwapChain::getSwapChain ( DtSwapChainTextureType  type) const

get the varjo swapchain object for type

varjo_TextureFormat makVrv::DtVarjoSwapChain::getVarjoFormat ( DtGlImageType  format) const

map a DtGlImageType to a varjo_TextureFormat

Member Data Documentation

varjo_Session* makVrv::DtVarjoSwapChain::myVarjoSession
protected
std::map<DtSwapChainTextureType, varjo_SwapChainConfig2> makVrv::DtVarjoSwapChain::mySwapChainConfigs
mutableprotected
std::map<DtSwapChainTextureType, varjo_SwapChain*> makVrv::DtVarjoSwapChain::mySwapChains
mutableprotected

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

Document ID: Generated on Tue Sep 24 19:28:17 EDT 2024 from SVN revision 269799
Copyright © 2005-2024 MAK Technologies. All Rights Reserved (www.mak.com)