OGRE  13.6
Object-Oriented Graphics Rendering Engine
Ogre::PageProvider Class Reference

Abstract class that can be implemented by the user application to provide a way to retrieve or generate page data from a source of their choosing. More...

#include <OgrePageManager.h>

Public Member Functions

 PageProvider ()
 
virtual ~PageProvider ()
 
virtual bool loadProceduralPage (Page *page, PagedWorldSection *section)
 Give a provider the opportunity to load page content procedurally. More...
 
virtual bool prepareProceduralPage (Page *page, PagedWorldSection *section)
 Give a provider the opportunity to prepare page content procedurally. More...
 
virtual StreamSerialiserreadPageStream (PageID pageID, PagedWorldSection *section)
 Get a serialiser set up to read Page data for the given PageID, or null if this provider cannot supply one. More...
 
virtual StreamSerialiserreadWorldStream (const String &filename)
 Get a serialiser set up to read PagedWorld data for the given world filename. More...
 
virtual bool unloadProceduralPage (Page *page, PagedWorldSection *section)
 Give a provider the opportunity to unload page content procedurally. More...
 
virtual bool unprepareProceduralPage (Page *page, PagedWorldSection *section)
 Give a provider the opportunity to unprepare page content procedurally. More...
 
virtual StreamSerialiserwritePageStream (PageID pageID, PagedWorldSection *section)
 Get a serialiser set up to write Page data for the given PageID, or null if this provider cannot supply one. More...
 
virtual StreamSerialiserwriteWorldStream (const String &filename)
 Get a serialiser set up to write PagedWorld data for the given world filename. More...
 

Detailed Description

Abstract class that can be implemented by the user application to provide a way to retrieve or generate page data from a source of their choosing.

Note
All of the methods in this class can be called in a background, non-render thread.

Constructor & Destructor Documentation

◆ PageProvider()

Ogre::PageProvider::PageProvider ( )
inline

◆ ~PageProvider()

virtual Ogre::PageProvider::~PageProvider ( )
inlinevirtual

Member Function Documentation

◆ prepareProceduralPage()

virtual bool Ogre::PageProvider::prepareProceduralPage ( Page page,
PagedWorldSection section 
)
inlinevirtual

Give a provider the opportunity to prepare page content procedurally.

This call may well happen in a separate thread so it should not access GPU resources, use loadProceduralPage for that

Returns
true if the page was populated, false otherwise

◆ loadProceduralPage()

virtual bool Ogre::PageProvider::loadProceduralPage ( Page page,
PagedWorldSection section 
)
inlinevirtual

Give a provider the opportunity to load page content procedurally.

This call will happen in the main render thread so it can access GPU resources. Use prepareProceduralPage for background preparation.

Returns
true if the page was populated, false otherwise

◆ unloadProceduralPage()

virtual bool Ogre::PageProvider::unloadProceduralPage ( Page page,
PagedWorldSection section 
)
inlinevirtual

Give a provider the opportunity to unload page content procedurally.

You should not call this method directly. This call will happen in the main render thread so it can access GPU resources. Use _unprepareProceduralPage for background preparation.

Returns
true if the page was populated, false otherwise

◆ unprepareProceduralPage()

virtual bool Ogre::PageProvider::unprepareProceduralPage ( Page page,
PagedWorldSection section 
)
inlinevirtual

Give a provider the opportunity to unprepare page content procedurally.

You should not call this method directly. This call may well happen in a separate thread so it should not access GPU resources, use _unloadProceduralPage for that

Returns
true if the page was unpopulated, false otherwise

◆ readWorldStream()

virtual StreamSerialiser* Ogre::PageProvider::readWorldStream ( const String filename)
inlinevirtual

Get a serialiser set up to read PagedWorld data for the given world filename.

The StreamSerialiser returned is the responsibility of the caller to delete.

◆ writeWorldStream()

virtual StreamSerialiser* Ogre::PageProvider::writeWorldStream ( const String filename)
inlinevirtual

Get a serialiser set up to write PagedWorld data for the given world filename.

The StreamSerialiser returned is the responsibility of the caller to delete.

◆ readPageStream()

virtual StreamSerialiser* Ogre::PageProvider::readPageStream ( PageID  pageID,
PagedWorldSection section 
)
inlinevirtual

Get a serialiser set up to read Page data for the given PageID, or null if this provider cannot supply one.

The StreamSerialiser returned is the responsibility of the caller to delete.

Parameters
pageIDThe ID of the page being requested
sectionThe parent section to which this page will belong

◆ writePageStream()

virtual StreamSerialiser* Ogre::PageProvider::writePageStream ( PageID  pageID,
PagedWorldSection section 
)
inlinevirtual

Get a serialiser set up to write Page data for the given PageID, or null if this provider cannot supply one.

The StreamSerialiser returned is the responsibility of the caller to delete.

Parameters
pageIDThe ID of the page being requested
sectionThe parent section to which this page will belong

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