Introduce GraphicsOperation subclass from osg::Operation, and osgUtil::GLObjectOperation

for compiling subgraphs.
This commit is contained in:
Robert Osfield
2007-07-13 17:25:35 +00:00
parent 65156475f6
commit a28588a84c
9 changed files with 99 additions and 57 deletions

View File

@@ -903,17 +903,15 @@ bool DatabasePager::getCompileGLObjectsForContextID(unsigned int contextID)
DatabasePager::CompileOperation::CompileOperation(osgDB::DatabasePager* databasePager):
osg::Operation("DatabasePager::CompileOperation",false),
osg::GraphicsOperation("DatabasePager::CompileOperation",false),
_databasePager(databasePager)
{
}
void DatabasePager::CompileOperation::operator () (osg::Object* object)
void DatabasePager::CompileOperation::operator () (osg::GraphicsContext* context)
{
osg::GraphicsContext* context = dynamic_cast<osg::GraphicsContext*>(object);
if (!context) return;
// osg::notify(osg::NOTICE)<<"Background thread compiling"<<std::endl;
if (_databasePager.valid()) _databasePager->compileAllGLObjects(*(context->getState()));
}