OGRE
1.12.13
Object-Oriented Graphics Rendering Engine
|
The PageManager is the entry point through which you load all PagedWorld instances, and the place where PageStrategy instances and factory classes are registered to customise the paging behaviour. More...
#include <OgrePageManager.h>
Public Types | |
typedef std::vector< Camera * > | CameraList |
typedef std::map< String, PageContentCollectionFactory * > | ContentCollectionFactoryMap |
typedef std::map< String, PageContentFactory * > | ContentFactoryMap |
typedef std::map< String, PageStrategy * > | StrategyMap |
typedef std::map< String, PagedWorld * > | WorldMap |
typedef std::map< String, PagedWorldSectionFactory * > | WorldSectionFactoryMap |
Public Member Functions | |
PageManager () | |
virtual | ~PageManager () |
virtual bool | _loadProceduralPage (Page *page, PagedWorldSection *section) |
Give a provider the opportunity to prepare page content procedurally. More... | |
virtual bool | _prepareProceduralPage (Page *page, PagedWorldSection *section) |
Give a provider the opportunity to prepare page content procedurally. More... | |
StreamSerialiser * | _readPageStream (PageID pageID, PagedWorldSection *section) |
Get a serialiser set up to read Page data for the given PageID. More... | |
StreamSerialiser * | _readWorldStream (const String &filename) |
Get a serialiser set up to read PagedWorld data for the given world name. More... | |
virtual bool | _unloadProceduralPage (Page *page, PagedWorldSection *section) |
Give a manager the opportunity to unload page content procedurally. More... | |
virtual bool | _unprepareProceduralPage (Page *page, PagedWorldSection *section) |
Give a manager the opportunity to unprepare page content procedurally. More... | |
StreamSerialiser * | _writePageStream (PageID pageID, PagedWorldSection *section) |
Get a serialiser set up to write Page data for the given PageID. More... | |
StreamSerialiser * | _writeWorldStream (const String &filename) |
Get a serialiser set up to write PagedWorld data. More... | |
void | addCamera (Camera *c) |
Tells the paging system to start tracking a given camera. More... | |
void | addContentCollectionFactory (PageContentCollectionFactory *f) |
Add a new PageContentCollectionFactory implementation. More... | |
void | addContentFactory (PageContentFactory *f) |
Add a new PageContentFactory implementation. More... | |
void | addStrategy (PageStrategy *strategy) |
Add a new PageStrategy implementation. More... | |
void | addWorldSectionFactory (PagedWorldSectionFactory *f) |
Add a new PagedWorldSectionFactory implementation. More... | |
PageContent * | createContent (const String &typeName) |
Create a new instance of PageContent using the registered factories. More... | |
PageContentCollection * | createContentCollection (const String &typeName) |
Create a new instance of PageContentCollection using the registered factories. More... | |
PagedWorld * | createWorld (const String &name=BLANKSTRING) |
Create a new PagedWorld instance. More... | |
PagedWorldSection * | createWorldSection (const String &typeName, const String &name, PagedWorld *parent, SceneManager *sm) |
Create a new instance of PagedWorldSection using the registered factories. More... | |
void | destroyContent (PageContent *c) |
Destroy an instance of PageContent. More... | |
void | destroyContentCollection (PageContentCollection *coll) |
Destroy an instance of PageContentCollection. More... | |
void | destroyWorld (const String &name) |
Destroy a world. More... | |
void | destroyWorld (PagedWorld *world) |
Destroy a world. More... | |
void | destroyWorldSection (PagedWorldSection *s) |
Destroy an instance of PagedWorldSection. More... | |
const CameraList & | getCameraList () const |
Returns a list of cameras being tracked. More... | |
const ContentCollectionFactoryMap & | getContentCollectionFactories () const |
Get a reference to the registered strategies. More... | |
PageContentCollectionFactory * | getContentCollectionFactory (const String &name) |
Get a PageContentCollectionFactory. More... | |
const ContentFactoryMap & | getContentFactories () const |
Get a reference to the registered strategies. More... | |
PageContentFactory * | getContentFactory (const String &name) |
Get a PageContentFactory. More... | |
uint8 | getDebugDisplayLevel () const |
Get the debug display level. More... | |
PageProvider * | getPageProvider () const |
Get the PageProvider which can provide streams for any Page. More... | |
const String & | getPageResourceGroup () const |
Get the resource group that will be used to read/write files when the default load routines are used. More... | |
bool | getPagingOperationsEnabled () const |
Get whether paging operations are currently allowed to happen. More... | |
const StrategyMap & | getStrategies () const |
Get a reference to the registered strategies. More... | |
PageStrategy * | getStrategy (const String &name) |
Get a PageStrategy. More... | |
PagedWorld * | getWorld (const String &name) |
Get a named world. More... | |
const WorldMap & | getWorlds () const |
Get a reference to the worlds that are currently loaded. More... | |
const WorldSectionFactoryMap & | getWorldSectionFactories () const |
Get a reference to the registered strategies. More... | |
PagedWorldSectionFactory * | getWorldSectionFactory (const String &name) |
Get a PagedWorldSectionFactory. More... | |
bool | hasCamera (Camera *c) const |
Returns whether or not a given camera is being watched by the paging system. More... | |
PagedWorld * | loadWorld (const DataStreamPtr &stream, const String &name=BLANKSTRING) |
Load a new PagedWorld from a stream. More... | |
PagedWorld * | loadWorld (const String &filename, const String &name=BLANKSTRING) |
Load a new PagedWorld from a file. More... | |
void | removeCamera (Camera *c) |
Tells the paging system to stop tracking a given camera. More... | |
void | removeContentCollectionFactory (PageContentCollectionFactory *f) |
Remove a PageContentCollectionFactory implementation. More... | |
void | removeContentFactory (PageContentFactory *f) |
Remove a PageContentFactory implementation. More... | |
void | removeStrategy (PageStrategy *strategy) |
Remove a PageStrategy implementation. More... | |
void | removeWorldSectionFactory (PagedWorldSectionFactory *f) |
Remove a PagedWorldSectionFactory implementation. More... | |
void | saveWorld (PagedWorld *world, const DataStreamPtr &stream) |
Save a PagedWorld instance to a file. More... | |
void | saveWorld (PagedWorld *world, const String &filename) |
Save a PagedWorld instance to a file. More... | |
void | setDebugDisplayLevel (uint8 lvl) |
Set the debug display level. More... | |
void | setPageProvider (PageProvider *provider) |
Set the PageProvider which can provide streams for any Page. More... | |
void | setPageResourceGroup (const String &g) |
Set the resource group that will be used to read/write files when the default load routines are used. More... | |
void | setPagingOperationsEnabled (bool enabled) |
Pause or unpause all paging operations. More... | |
The PageManager is the entry point through which you load all PagedWorld instances, and the place where PageStrategy instances and factory classes are registered to customise the paging behaviour.
typedef std::map<String, PagedWorld*> Ogre::PageManager::WorldMap |
typedef std::map<String, PageStrategy*> Ogre::PageManager::StrategyMap |
typedef std::map<String, PageContentCollectionFactory*> Ogre::PageManager::ContentCollectionFactoryMap |
typedef std::map<String, PageContentFactory*> Ogre::PageManager::ContentFactoryMap |
typedef std::map<String, PagedWorldSectionFactory*> Ogre::PageManager::WorldSectionFactoryMap |
typedef std::vector<Camera*> Ogre::PageManager::CameraList |
Ogre::PageManager::PageManager | ( | ) |
|
virtual |
PagedWorld* Ogre::PageManager::createWorld | ( | const String & | name = BLANKSTRING | ) |
Create a new PagedWorld instance.
name | Optionally give a name to the world (if no name is given, one will be generated). |
void Ogre::PageManager::destroyWorld | ( | const String & | name | ) |
Destroy a world.
void Ogre::PageManager::destroyWorld | ( | PagedWorld * | world | ) |
Destroy a world.
PagedWorld* Ogre::PageManager::loadWorld | ( | const String & | filename, |
const String & | name = BLANKSTRING |
||
) |
Load a new PagedWorld from a file.
filename | The name of the file to load (standard is .world) |
name | Optionally give a name to the world (if no name is given, one will be generated). |
PagedWorld* Ogre::PageManager::loadWorld | ( | const DataStreamPtr & | stream, |
const String & | name = BLANKSTRING |
||
) |
Load a new PagedWorld from a stream.
stream | A stream from which to load the world data |
name | Optionally give a name to the world (if no name is given, one will be generated). |
void Ogre::PageManager::saveWorld | ( | PagedWorld * | world, |
const String & | filename | ||
) |
Save a PagedWorld instance to a file.
world | The world to be saved |
filename | The filename to save the data to |
void Ogre::PageManager::saveWorld | ( | PagedWorld * | world, |
const DataStreamPtr & | stream | ||
) |
Save a PagedWorld instance to a file.
world | The world to be saved |
stream | The stream to save the data to |
PagedWorld* Ogre::PageManager::getWorld | ( | const String & | name | ) |
Get a named world.
name | The name of the world (not a filename, the identifying name) |
|
inline |
Get a reference to the worlds that are currently loaded.
void Ogre::PageManager::addStrategy | ( | PageStrategy * | strategy | ) |
Add a new PageStrategy implementation.
void Ogre::PageManager::removeStrategy | ( | PageStrategy * | strategy | ) |
Remove a PageStrategy implementation.
PageStrategy* Ogre::PageManager::getStrategy | ( | const String & | name | ) |
Get a PageStrategy.
name | The name of the strategy to retrieve |
const StrategyMap& Ogre::PageManager::getStrategies | ( | ) | const |
Get a reference to the registered strategies.
void Ogre::PageManager::addContentCollectionFactory | ( | PageContentCollectionFactory * | f | ) |
Add a new PageContentCollectionFactory implementation.
void Ogre::PageManager::removeContentCollectionFactory | ( | PageContentCollectionFactory * | f | ) |
Remove a PageContentCollectionFactory implementation.
PageContentCollectionFactory* Ogre::PageManager::getContentCollectionFactory | ( | const String & | name | ) |
Get a PageContentCollectionFactory.
name | The name of the factory to retrieve |
PageContentCollection* Ogre::PageManager::createContentCollection | ( | const String & | typeName | ) |
Create a new instance of PageContentCollection using the registered factories.
typeName | The name of the type of collection to create |
void Ogre::PageManager::destroyContentCollection | ( | PageContentCollection * | coll | ) |
Destroy an instance of PageContentCollection.
const ContentCollectionFactoryMap& Ogre::PageManager::getContentCollectionFactories | ( | ) | const |
Get a reference to the registered strategies.
void Ogre::PageManager::addContentFactory | ( | PageContentFactory * | f | ) |
Add a new PageContentFactory implementation.
void Ogre::PageManager::removeContentFactory | ( | PageContentFactory * | f | ) |
Remove a PageContentFactory implementation.
PageContentFactory* Ogre::PageManager::getContentFactory | ( | const String & | name | ) |
Get a PageContentFactory.
name | The name of the factory to retrieve |
const ContentFactoryMap& Ogre::PageManager::getContentFactories | ( | ) | const |
Get a reference to the registered strategies.
PageContent* Ogre::PageManager::createContent | ( | const String & | typeName | ) |
Create a new instance of PageContent using the registered factories.
typeName | The name of the type of content to create |
void Ogre::PageManager::destroyContent | ( | PageContent * | c | ) |
Destroy an instance of PageContent.
void Ogre::PageManager::addWorldSectionFactory | ( | PagedWorldSectionFactory * | f | ) |
Add a new PagedWorldSectionFactory implementation.
void Ogre::PageManager::removeWorldSectionFactory | ( | PagedWorldSectionFactory * | f | ) |
Remove a PagedWorldSectionFactory implementation.
PagedWorldSectionFactory* Ogre::PageManager::getWorldSectionFactory | ( | const String & | name | ) |
Get a PagedWorldSectionFactory.
name | The name of the factory to retrieve |
PagedWorldSection* Ogre::PageManager::createWorldSection | ( | const String & | typeName, |
const String & | name, | ||
PagedWorld * | parent, | ||
SceneManager * | sm | ||
) |
Create a new instance of PagedWorldSection using the registered factories.
typeName | The name of the type of collection to create |
name | The instance name |
parent | The parent world |
sm | The SceneManager to use (can be null if this is to be loaded) |
void Ogre::PageManager::destroyWorldSection | ( | PagedWorldSection * | s | ) |
Destroy an instance of PagedWorldSection.
const WorldSectionFactoryMap& Ogre::PageManager::getWorldSectionFactories | ( | ) | const |
Get a reference to the registered strategies.
|
inline |
Set the PageProvider which can provide streams for any Page.
|
inline |
Get the PageProvider which can provide streams for any Page.
|
virtual |
Give a provider the opportunity to prepare page content procedurally.
|
virtual |
Give a provider the opportunity to prepare page content procedurally.
|
virtual |
Give a manager the opportunity to unload page content procedurally.
|
virtual |
Give a manager the opportunity to unprepare page content procedurally.
StreamSerialiser* Ogre::PageManager::_readPageStream | ( | PageID | pageID, |
PagedWorldSection * | section | ||
) |
Get a serialiser set up to read Page data for the given PageID.
pageID | The ID of the page being requested |
section | The parent section to which this page will belong |
StreamSerialiser* Ogre::PageManager::_writePageStream | ( | PageID | pageID, |
PagedWorldSection * | section | ||
) |
Get a serialiser set up to write Page data for the given PageID.
pageID | The ID of the page being requested |
section | The parent section to which this page will belong |
StreamSerialiser* Ogre::PageManager::_readWorldStream | ( | const String & | filename | ) |
Get a serialiser set up to read PagedWorld data for the given world name.
StreamSerialiser* Ogre::PageManager::_writeWorldStream | ( | const String & | filename | ) |
Get a serialiser set up to write PagedWorld data.
|
inline |
Get the resource group that will be used to read/write files when the default load routines are used.
|
inline |
Set the resource group that will be used to read/write files when the default load routines are used.
void Ogre::PageManager::addCamera | ( | Camera * | c | ) |
Tells the paging system to start tracking a given camera.
void Ogre::PageManager::removeCamera | ( | Camera * | c | ) |
Tells the paging system to stop tracking a given camera.
bool Ogre::PageManager::hasCamera | ( | Camera * | c | ) | const |
Returns whether or not a given camera is being watched by the paging system.
const CameraList& Ogre::PageManager::getCameraList | ( | ) | const |
Returns a list of cameras being tracked.
|
inline |
Set the debug display level.
|
inline |
Get the debug display level.
|
inline |
Pause or unpause all paging operations.
enabled | True to proceed with normal paging operations, false to pause. |
|
inline |
Get whether paging operations are currently allowed to happen.