Refactored Observer/ObserverNodePath and DatabasePager to improve their robustness.
This commit is contained in:
@@ -345,28 +345,9 @@ class OSGDB_EXPORT DatabasePager : public osg::NodeVisitor::DatabaseRequestHandl
|
||||
|
||||
struct RequestQueue;
|
||||
|
||||
struct PagedLODObserver : public osg::observer_ptr<osg::PagedLOD>
|
||||
{
|
||||
typedef osg::observer_ptr<osg::PagedLOD> BaseClass;
|
||||
|
||||
PagedLODObserver(osg::PagedLOD* plod):BaseClass(plod) {}
|
||||
PagedLODObserver(const PagedLODObserver& plodObserver):BaseClass(plodObserver) {}
|
||||
|
||||
PagedLODObserver& operator = (const PagedLODObserver& rhs)
|
||||
{
|
||||
(*static_cast<BaseClass*>(this)) = rhs;
|
||||
return *this;
|
||||
}
|
||||
|
||||
virtual void objectDeleted(void* ptr)
|
||||
{
|
||||
BaseClass::objectDeleted(ptr);
|
||||
}
|
||||
};
|
||||
|
||||
typedef osg::observer_ptr<osg::PagedLOD> PagedLODObserver;
|
||||
typedef std::list< PagedLODObserver > PagedLODList;
|
||||
|
||||
|
||||
struct DatabaseRequest : public osg::Referenced
|
||||
{
|
||||
DatabaseRequest():
|
||||
|
||||
Reference in New Issue
Block a user