//--------------------------------------------------------------------- Page::Page(PageID pageID, PagedWorldSection* parent) : mID(pageID) , mParent(parent) , mDeferredProcessInProgress(false) , mModified(false) , mDebugNode(0) { WorkQueue* wq = Root::getSingleton().getWorkQueue(); mWorkQueueChannel = wq->getChannel("Ogre/Page"); wq->addRequestHandler(mWorkQueueChannel, this); wq->addResponseHandler(mWorkQueueChannel, this); touch(); }
//--------------------------------------------------------------------- void ResourceBackgroundQueue::initialise() { WorkQueue* wq = Root::getSingleton().getWorkQueue(); mWorkQueueChannel = wq->getChannel("Ogre/ResourceBGQ"); wq->addResponseHandler(mWorkQueueChannel, this); wq->addRequestHandler(mWorkQueueChannel, this); }
//--------------------------------------------------------------------- TerrainPagedWorldSection::TerrainPagedWorldSection(const String& name, PagedWorld* parent, SceneManager* sm) : PagedWorldSection(name, parent, sm) , mTerrainGroup(0) , mTerrainDefiner(0) , mHasRunningTasks(false) , mLoadingIntervalMs(900) { // we always use a grid strategy setStrategy(parent->getManager()->getStrategy("Grid2D")); WorkQueue* wq = Root::getSingleton().getWorkQueue(); mWorkQueueChannel = wq->getChannel("Ogre/TerrainPagedWorldSection"); wq->addRequestHandler(mWorkQueueChannel, this); wq->addResponseHandler(mWorkQueueChannel, this); mNextLoadingTime = Root::getSingletonPtr()->getTimer()->getMilliseconds(); }
LodWorkQueueWorker::LodWorkQueueWorker() { WorkQueue* wq = Root::getSingleton().getWorkQueue(); mChannelID = wq->getChannel("PMGen"); wq->addRequestHandler(mChannelID, this); }