A world section which includes paged terrain. More...
#include <OgreTerrainPagedWorldSection.h>
Classes | |
class | TerrainDefiner |
Public Types | |
typedef map< PageID, Page * >::type | PageMap |
Public Member Functions | |
TerrainPagedWorldSection (const String &name, PagedWorld *parent, SceneManager *sm) | |
Constructor. | |
virtual | ~TerrainPagedWorldSection () |
virtual bool | _loadProceduralPage (Page *page) |
Give a section the opportunity to prepare page content procedurally. | |
virtual bool | _prepareProceduralPage (Page *page) |
Give a section the opportunity to prepare page content procedurally. | |
virtual StreamSerialiser * | _readPageStream (PageID pageID) |
Get a serialiser set up to read Page data for the given PageID. | |
virtual bool | _unloadProceduralPage (Page *page) |
Give a section the opportunity to unload page content procedurally. | |
virtual bool | _unprepareProceduralPage (Page *page) |
Give a section the opportunity to unprepare page content procedurally. | |
virtual StreamSerialiser * | _writePageStream (PageID pageID) |
Get a serialiser set up to write Page data for the given PageID. | |
virtual bool | canHandleRequest (const Request *req, const WorkQueue *srcQ) |
Return whether this handler can process a given request. | |
virtual bool | canHandleResponse (const Response *res, const WorkQueue *srcQ) |
Return whether this handler can process a given response. | |
virtual void | frameEnd (Real timeElapsed) |
Called when the frame ends. | |
virtual void | frameStart (Real timeSinceLastFrame) |
Called when the frame starts. | |
virtual const AxisAlignedBox & | getBoundingBox () const |
Get the bounds of this section. | |
virtual Grid2DPageStrategy * | getGridStrategy () const |
Convenience method - this section always uses a grid strategy. | |
virtual Grid2DPageStrategyData * | getGridStrategyData () const |
Convenience method - this section always uses a grid strategy. | |
virtual Real | getHoldRadius () |
Get the Holding radius. | |
virtual uint32 | getLoadingIntervalMs () const |
Get the interval between the loading of single pages in milliseconds (ms) | |
virtual Real | getLoadRadius () const |
Get the loading radius. | |
PageManager * | getManager () const |
virtual const String & | getName () const |
Get the name of this section. | |
virtual Page * | getPage (PageID pageID) |
Retrieves a Page. | |
virtual PageID | getPageID (const Vector3 &worldPos) |
Get the page ID for a given world position. | |
virtual PageProvider * | getPageProvider () const |
Get the PageProvider which can provide streams for Pages in this section. | |
virtual int32 | getPageRangeMaxX () const |
get the index range of all Pages (values outside this will be ignored) | |
virtual int32 | getPageRangeMaxY () const |
get the index range of all Pages (values outside this will be ignored) | |
virtual int32 | getPageRangeMinX () const |
get the index range of all Pages (values outside this will be ignored) | |
virtual int32 | getPageRangeMinY () const |
get the index range of all Pages (values outside this will be ignored) | |
virtual SceneManager * | getSceneManager () const |
Get the current SceneManager. | |
virtual PageStrategy * | getStrategy () const |
Get the page strategy which this section is using. | |
virtual PageStrategyData * | getStrategyData () const |
Get the data required by the PageStrategy which is specific to this world section. | |
virtual TerrainGroup * | getTerrainGroup () |
Get the TerrainGroup which this world section is using. | |
virtual const String & | getType () |
Get the type name of this section. | |
virtual PagedWorld * | getWorld () const |
Get the parent world. | |
WorkQueue::Response * | handleRequest (const WorkQueue::Request *req, const WorkQueue *srcQ) |
WorkQueue::RequestHandler override. | |
void | handleResponse (const WorkQueue::Response *res, const WorkQueue *srcQ) |
WorkQueue::ResponseHandler override. | |
virtual void | holdPage (PageID pageID) |
Ask for a page to be kept in memory if it's loaded. | |
virtual void | init (TerrainGroup *grp) |
Initialise this section from an existing TerrainGroup instance. | |
virtual bool | load (StreamSerialiser &stream) |
Load this section from a stream (returns true if successful) | |
virtual Page * | loadOrCreatePage (const Vector3 &worldPos) |
Load or create a page against this section covering the given world space position. | |
void | loadPage (PageID pageID, bool forceSynchronous=false) |
Overridden from PagedWorldSection. | |
virtual void | notifyCamera (Camera *cam) |
Notify a section of the current camera. | |
void | operator delete (void *ptr) |
void | operator delete (void *ptr, const char *, int, const char *) |
void | operator delete (void *ptr, void *) |
void | operator delete[] (void *ptr) |
void | operator delete[] (void *ptr, const char *, int, const char *) |
void * | operator new (size_t sz) |
void * | operator new (size_t sz, const char *file, int line, const char *func) |
operator new, with debug line info | |
void * | operator new (size_t sz, void *ptr) |
placement operator new | |
void * | operator new[] (size_t sz) |
void * | operator new[] (size_t sz, const char *file, int line, const char *func) |
array operator new, with debug line info | |
virtual void | removeAllPages () |
Remove all pages immediately. | |
virtual void | save (StreamSerialiser &stream) |
Save this section to a stream. | |
virtual void | setBoundingBox (const AxisAlignedBox &box) |
Set the bounds of this section. | |
void | setDefiner (TerrainDefiner *terrainDefiner) |
virtual void | setHoldRadius (Real sz) |
Set the Holding radius. | |
virtual void | setLoadingIntervalMs (uint32 loadingIntervalMs) |
Set the interval between the loading of single pages in milliseconds (ms) | |
virtual void | setLoadRadius (Real sz) |
Set the loading radius. | |
virtual void | setPageProvider (PageProvider *provider) |
Set the PageProvider which can provide streams Pages in this section. | |
virtual void | setPageRange (int32 minX, int32 minY, int32 maxX, int32 maxY) |
Set the index range of all Pages (values outside this will be ignored) | |
virtual void | setPageRangeMaxX (int32 maxX) |
Set the index range of all Pages (values outside this will be ignored) | |
virtual void | setPageRangeMaxY (int32 maxY) |
Set the index range of all Pages (values outside this will be ignored) | |
virtual void | setPageRangeMinX (int32 minX) |
Set the index range of all Pages (values outside this will be ignored) | |
virtual void | setPageRangeMinY (int32 minY) |
Set the index range of all Pages (values outside this will be ignored) | |
virtual void | setSceneManager (const String &smName) |
Change the SceneManager. | |
virtual void | setSceneManager (SceneManager *sm) |
Change the SceneManager. | |
virtual void | setStrategy (const String &stratName) |
Change the page strategy. | |
virtual void | setStrategy (PageStrategy *strat) |
Change the page strategy. | |
virtual void | unloadPage (Page *p, bool forceSynchronous=false) |
Ask for a page to be unloaded with the given (section-relative) PageID. | |
void | unloadPage (PageID pageID, bool forceSynchronous=false) |
Overridden from PagedWorldSection. | |
Static Public Attributes | |
static const uint32 | CHUNK_ID |
static const uint16 | CHUNK_VERSION |
static const uint16 | WORKQUEUE_LOAD_TERRAIN_PAGE_REQUEST |
Protected Member Functions | |
void | loadSubtypeData (StreamSerialiser &ser) |
Overridden from PagedWorldSection. | |
void | saveSubtypeData (StreamSerialiser &ser) |
virtual void | syncSettings () |
A world section which includes paged terrain.
Definition at line 81 of file OgreTerrainPagedWorldSection.h.
|
inherited |
Definition at line 72 of file OgrePagedWorldSection.h.
Ogre::TerrainPagedWorldSection::TerrainPagedWorldSection | ( | const String & | name, |
PagedWorld * | parent, | ||
SceneManager * | sm | ||
) |
Constructor.
name | The name of the section |
parent | The parent world |
sm | The SceneManager to use (can be left as null if to be loaded) |
|
virtual |
Give a section the opportunity to prepare page content procedurally.
Give a section the opportunity to prepare page content procedurally.
|
virtualinherited |
Get a serialiser set up to read Page data for the given PageID.
pageID | The ID of the page being requested |
Give a section the opportunity to unload page content procedurally.
Give a section the opportunity to unprepare page content procedurally.
|
virtualinherited |
Get a serialiser set up to write Page data for the given PageID.
pageID | The ID of the page being requested |
|
virtualinherited |
Return whether this handler can process a given request.
Reimplemented in Ogre::Page, Ogre::Terrain, Ogre::TerrainGroup, Ogre::TerrainLodManager, and Ogre::ResourceBackgroundQueue.
Definition at line 173 of file OgreWorkQueue.h.
Referenced by Ogre::DefaultWorkQueueBase::RequestHandlerHolder::handleRequest().
|
virtualinherited |
Return whether this handler can process a given response.
Reimplemented in Ogre::Page, Ogre::Terrain, Ogre::TerrainGroup, Ogre::TerrainLodManager, and Ogre::ResourceBackgroundQueue.
Definition at line 208 of file OgreWorkQueue.h.
Called when the frame ends.
Called when the frame starts.
|
virtualinherited |
Get the bounds of this section.
|
virtual |
Convenience method - this section always uses a grid strategy.
|
virtual |
Convenience method - this section always uses a grid strategy.
Get the interval between the loading of single pages in milliseconds (ms)
Get the loading radius.
|
inherited |
Get the name of this section.
Definition at line 99 of file OgrePagedWorldSection.h.
Get the page ID for a given world position.
|
virtualinherited |
Get the PageProvider which can provide streams for Pages in this section.
Definition at line 271 of file OgrePagedWorldSection.h.
get the index range of all Pages (values outside this will be ignored)
get the index range of all Pages (values outside this will be ignored)
get the index range of all Pages (values outside this will be ignored)
get the index range of all Pages (values outside this will be ignored)
|
virtualinherited |
Get the current SceneManager.
Definition at line 130 of file OgrePagedWorldSection.h.
|
virtualinherited |
Get the page strategy which this section is using.
Definition at line 101 of file OgrePagedWorldSection.h.
|
virtualinherited |
Get the data required by the PageStrategy which is specific to this world section.
Definition at line 135 of file OgrePagedWorldSection.h.
|
virtual |
Get the TerrainGroup which this world section is using.
Definition at line 109 of file OgreTerrainPagedWorldSection.h.
Get the type name of this section.
|
virtualinherited |
Get the parent world.
Definition at line 133 of file OgrePagedWorldSection.h.
|
virtual |
WorkQueue::RequestHandler override.
Implements Ogre::WorkQueue::RequestHandler.
|
virtual |
WorkQueue::ResponseHandler override.
Implements Ogre::WorkQueue::ResponseHandler.
Ask for a page to be kept in memory if it's loaded.
|
virtual |
Initialise this section from an existing TerrainGroup instance.
grp | The TerrainGroup which will form the basis of this world section. The instance will be owned by this class from now on and will be destroyed by it. |
|
virtualinherited |
Load this section from a stream (returns true if successful)
|
virtualinherited |
Load or create a page against this section covering the given world space position.
|
virtual |
Overridden from PagedWorldSection.
Reimplemented from Ogre::PagedWorldSection.
|
protectedvirtual |
Overridden from PagedWorldSection.
Reimplemented from Ogre::PagedWorldSection.
Notify a section of the current camera.
Definition at line 96 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 108 of file OgreMemoryAllocatedObject.h.
Definition at line 102 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 113 of file OgreMemoryAllocatedObject.h.
|
inherited |
Definition at line 119 of file OgreMemoryAllocatedObject.h.
Definition at line 73 of file OgreMemoryAllocatedObject.h.
|
inherited |
operator new, with debug line info
Definition at line 68 of file OgreMemoryAllocatedObject.h.
placement operator new
Definition at line 79 of file OgreMemoryAllocatedObject.h.
Definition at line 91 of file OgreMemoryAllocatedObject.h.
|
inherited |
array operator new, with debug line info
Definition at line 86 of file OgreMemoryAllocatedObject.h.
Remove all pages immediately.
|
virtualinherited |
Save this section to a stream.
|
protectedvirtual |
Reimplemented from Ogre::PagedWorldSection.
|
virtualinherited |
Set the bounds of this section.
void Ogre::TerrainPagedWorldSection::setDefiner | ( | TerrainDefiner * | terrainDefiner | ) |
Definition at line 170 of file OgreTerrainPagedWorldSection.h.
References OGRE_DELETE.
Set the Holding radius.
|
virtual |
Set the interval between the loading of single pages in milliseconds (ms)
Set the loading radius.
|
virtualinherited |
Set the PageProvider which can provide streams Pages in this section.
Definition at line 268 of file OgrePagedWorldSection.h.
|
virtual |
Set the index range of all Pages (values outside this will be ignored)
Set the index range of all Pages (values outside this will be ignored)
Set the index range of all Pages (values outside this will be ignored)
Set the index range of all Pages (values outside this will be ignored)
Set the index range of all Pages (values outside this will be ignored)
Change the SceneManager.
smName | The instance name of the SceneManager |
|
virtualinherited |
Change the SceneManager.
Change the page strategy.
|
virtualinherited |
Change the page strategy.
|
virtualinherited |
Ask for a page to be unloaded with the given (section-relative) PageID.
p | The Page to unload |
forceSynchronous | If true, the page will always be unloaded synchronously |
|
virtual |
Overridden from PagedWorldSection.
Reimplemented from Ogre::PagedWorldSection.
Definition at line 89 of file OgrePagedWorldSection.h.
Definition at line 90 of file OgrePagedWorldSection.h.
|
protectedinherited |
Definition at line 75 of file OgrePagedWorldSection.h.
|
protected |
Definition at line 181 of file OgreTerrainPagedWorldSection.h.
|
protected |
Definition at line 184 of file OgreTerrainPagedWorldSection.h.
|
protectedinherited |
Definition at line 74 of file OgrePagedWorldSection.h.
Definition at line 183 of file OgreTerrainPagedWorldSection.h.
|
protectedinherited |
Definition at line 80 of file OgrePagedWorldSection.h.
|
protectedinherited |
Definition at line 79 of file OgrePagedWorldSection.h.
|
protected |
Definition at line 180 of file OgreTerrainPagedWorldSection.h.
|
protectedinherited |
Definition at line 76 of file OgrePagedWorldSection.h.
|
protectedinherited |
Definition at line 81 of file OgrePagedWorldSection.h.
|
protectedinherited |
Definition at line 77 of file OgrePagedWorldSection.h.
|
protectedinherited |
Definition at line 78 of file OgrePagedWorldSection.h.
|
protected |
Definition at line 179 of file OgreTerrainPagedWorldSection.h.
|
protected |
Definition at line 178 of file OgreTerrainPagedWorldSection.h.
|
protected |
Definition at line 182 of file OgreTerrainPagedWorldSection.h.
Definition at line 158 of file OgreTerrainPagedWorldSection.h.
Copyright © 2012 Torus Knot Software Ltd
This work is licensed under a Creative Commons Attribution-ShareAlike 3.0 Unported License.