public

Inheritance Graph

graph BT
	DataStrategy
	DataStrategy --> MeshDataStrategy
	click DataStrategy "classMinSG_1_1OutOfCore_1_1DataStrategy"
	click MeshDataStrategy "classRendering_1_1MeshDataStrategy"

Description

Data strategy for meshes that are handled inside a cache system. It collects usage data for the meshes and handles the cache movement between CPU and GPU memory.

Author: Benjamin Eikel

Date: 2011-02-18

Public Types

   
   
enum missing_mode_t {NO_WAIT_DO_NOTHING, NO_WAIT_DISPLAY_COLORED_BOX, NO_WAIT_DISPLAY_DEPTH_BOX, WAIT_DISPLAY}
Mode for drawing a cache object that is currently not in memory.

Public Functions

   
   
  DataStrategy( CacheManager & outOfCoreCacheManager)
   
  ~DataStrategy()
   
void assureLocalVertexData( Rendering::Mesh * m)
   
void assureLocalIndexData( Rendering::Mesh * m)
   
void prepare( Rendering::Mesh * m)
   
void displayMesh( Rendering::RenderingContext & context, Rendering::Mesh * m, uint32_t firstElement, uint32_t elementCount)
   
missing_mode_t getMissingMode() const
   
void setMissingMode( missing_mode_t newMode)

Documentation

enum
MinSG::OutOfCore::DataStrategy::missing_mode_t

public
 
 
enum missing_mode_t
Enumerator   Description
Enumerator   Description
NO_WAIT_DO_NOTHING   Do not wait until loading has been finished, and do nothing else.
NO_WAIT_DISPLAY_COLORED_BOX   Do not wait until loading has been finished, and display a colored bounding box.
NO_WAIT_DISPLAY_DEPTH_BOX   Do not wait until loading has been finished, and write a bounding box to the depth buffer.
WAIT_DISPLAY   Wait until loading has been finished, and display the cache object afterwards.

Mode for drawing a cache object that is currently not in memory.

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:36


function
MinSG::OutOfCore::DataStrategy::DataStrategy

public inline
     
     
DataStrategy( CacheManager & outOfCoreCacheManager )

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:54


function
MinSG::OutOfCore::DataStrategy::~DataStrategy

public inline virtual
   
   
~DataStrategy( )

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:57


function
MinSG::OutOfCore::DataStrategy::assureLocalVertexData

public virtual
     
     
void assureLocalVertexData( Rendering::Mesh * m )

If the Mesh has vertex data, assure that it can be accessed locally (e.g. by downloading it from graphics memory)o

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:60


function
MinSG::OutOfCore::DataStrategy::assureLocalIndexData

public virtual
     
     
void assureLocalIndexData( Rendering::Mesh * m )

If the Mesh has index data, assure that it can be accessed locally (e.g. by downloading it from graphics memory)o

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:62


function
MinSG::OutOfCore::DataStrategy::prepare

public inline virtual
     
     
void prepare( Rendering::Mesh * m )

Prepare the Mesh for display (VBO creation, etc.)o

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:64


function
MinSG::OutOfCore::DataStrategy::displayMesh

public virtual
     
     
void displayMesh( Rendering::RenderingContext & context,
  Rendering::Mesh * m,
  uint32_t firstElement,
  uint32_t elementCount
)    

Display the mesh as VBO or VertexArray.o

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:67


function
MinSG::OutOfCore::DataStrategy::getMissingMode

public const inline
   
   
missing_mode_t getMissingMode( ) const

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:69


function
MinSG::OutOfCore::DataStrategy::setMissingMode

public inline
     
     
void setMissingMode( missing_mode_t newMode )

Defined in MinSG/Ext/OutOfCore/DataStrategy.h:73