OpenMW
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
Public Member Functions | Private Types | Private Attributes | List of all members
Terrain::CompositeMapRenderer Class Reference

The CompositeMapRenderer is responsible for updating composite map textures in a blocking or non-blocking way. More...

#include <compositemaprenderer.hpp>

Inheritance diagram for Terrain::CompositeMapRenderer:
Collaboration diagram for Terrain::CompositeMapRenderer:

Public Member Functions

 CompositeMapRenderer ()
 
virtual void drawImplementation (osg::RenderInfo &renderInfo) const
 
void compile (CompositeMap &compositeMap, osg::RenderInfo &renderInfo, double *timeLeft) const
 
void setMinimumTimeAvailableForCompile (double time)
 Set the available time in seconds for compiling (non-immediate) composite maps each frame. More...
 
void setTargetFrameRate (float framerate)
 If current frame rate is higher than this, the extra time will be set aside to do more compiling. More...
 
void addCompositeMap (CompositeMap *map, bool immediate=false)
 Add a composite map to be rendered. More...
 
void setImmediate (CompositeMap *map)
 Mark this composite map to be required for the current frame. More...
 
unsigned int getCompileSetSize () const
 

Private Types

typedef std::set< osg::ref_ptr
< CompositeMap > > 
CompileSet
 

Private Attributes

float mTargetFrameRate
 
double mMinimumTimeAvailable
 
osg::Timer mTimer
 
CompileSet mCompileSet
 
CompileSet mImmediateCompileSet
 
CompileSet mCompiled
 
OpenThreads::Mutex mMutex
 
osg::ref_ptr
< osg::FrameBufferObject > 
mFBO
 

Detailed Description

The CompositeMapRenderer is responsible for updating composite map textures in a blocking or non-blocking way.

Member Typedef Documentation

typedef std::set<osg::ref_ptr<CompositeMap> > Terrain::CompositeMapRenderer::CompileSet
private

Constructor & Destructor Documentation

Terrain::CompositeMapRenderer::CompositeMapRenderer ( )

Member Function Documentation

void Terrain::CompositeMapRenderer::addCompositeMap ( CompositeMap map,
bool  immediate = false 
)

Add a composite map to be rendered.

Here is the caller graph for this function:

void Terrain::CompositeMapRenderer::compile ( CompositeMap compositeMap,
osg::RenderInfo &  renderInfo,
double *  timeLeft 
) const

Here is the call graph for this function:

Here is the caller graph for this function:

void Terrain::CompositeMapRenderer::drawImplementation ( osg::RenderInfo &  renderInfo) const
virtual

Here is the call graph for this function:

unsigned int Terrain::CompositeMapRenderer::getCompileSetSize ( ) const
void Terrain::CompositeMapRenderer::setImmediate ( CompositeMap map)

Mark this composite map to be required for the current frame.

void Terrain::CompositeMapRenderer::setMinimumTimeAvailableForCompile ( double  time)

Set the available time in seconds for compiling (non-immediate) composite maps each frame.

void Terrain::CompositeMapRenderer::setTargetFrameRate ( float  framerate)

If current frame rate is higher than this, the extra time will be set aside to do more compiling.

Member Data Documentation

CompileSet Terrain::CompositeMapRenderer::mCompiled
mutableprivate
CompileSet Terrain::CompositeMapRenderer::mCompileSet
mutableprivate
osg::ref_ptr<osg::FrameBufferObject> Terrain::CompositeMapRenderer::mFBO
private
CompileSet Terrain::CompositeMapRenderer::mImmediateCompileSet
mutableprivate
double Terrain::CompositeMapRenderer::mMinimumTimeAvailable
private
OpenThreads::Mutex Terrain::CompositeMapRenderer::mMutex
mutableprivate
float Terrain::CompositeMapRenderer::mTargetFrameRate
private
osg::Timer Terrain::CompositeMapRenderer::mTimer
mutableprivate

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