28 #ifndef __Ogre_Volume_Chunk_Handler_H__
29 #define __Ogre_Volume_Chunk_Handler_H__
#define _OgreVolumeExport
Standard 3-dimensional vector.
Handles the WorkQueue management of the chunks.
void processWorkQueue(void)
Calls the process-update of the WorkQueue so it doesn't block.
virtual ~ChunkHandler(void)
Destructor.
uint16 mWorkQueueChannel
The workqueue channel.
void addRequest(const ChunkRequest &req)
Adds a new ChunkRequest to be loaded to the WorkQueue.
void init(void)
Initializes the WorkQueue (once).
static const uint16 WORKQUEUE_LOAD_REQUEST
The workqueue load request.
WorkQueue * mWQ
The workqueue.
WorkQueue::Response * handleRequest(const WorkQueue::Request *req, const WorkQueue *srcQ)
Implementation for WorkQueue::RequestHandler.
ChunkHandler(void)
Constructor.
void handleResponse(const WorkQueue::Response *res, const WorkQueue *srcQ)
Implementation for WorkQueue::ResponseHandler.
A single volume chunk mesh.
Class for the generation of the DualGrid.
Class to build up a mesh with vertices and indices.
A node in the volume octree.
Interface definition for a handler of requests.
General purpose request structure.
Interface definition for a handler of responses.
Interface to a general purpose request / response style background work queue.
struct Ogre::Volume::ChunkRequest ChunkRequest
Data being passed around while loading.
Data being passed around while loading.
Chunk * origin
The chunk which created this request.
size_t maxLevels
The maximum amount of levels.
Vector3 totalFrom
The back lower left corner of the world.
OctreeNode * root
The octree node to use.
Vector3 totalTo
The front upper rightcorner of the world.
bool isUpdate
Whether this is an update of an existing tree.
MeshBuilder * meshBuilder
The MeshBuilder to use.
size_t level
The current LOD level.
DualGridGenerator * dualGridGenerator
The DualGridGenerator to use.
_OgreVolumeExport friend std::ostream & operator<<(std::ostream &o, const ChunkRequest &r)
Stream operator <<.
General purpose response structure.