OpenSceneGraph 2.8.3
|
Classes | |
struct | PerRangeData |
Public Types | |
typedef std::vector< PerRangeData > | PerRangeDataList |
Public Member Functions | |
PagedLOD () | |
PagedLOD (const PagedLOD &, const CopyOp ©op=CopyOp::SHALLOW_COPY) | |
Copy constructor using CopyOp to manage deep vs shallow copy. | |
META_Node (osg, PagedLOD) | |
virtual void | traverse (NodeVisitor &nv) |
Traverse downwards : calls children's accept method with NodeVisitor. | |
virtual bool | addChild (Node *child) |
Add Node to Group. | |
virtual bool | addChild (Node *child, float min, float max) |
virtual bool | addChild (Node *child, float min, float max, const std::string &filename, float priorityOffset=0.0f, float priorityScale=1.0f) |
virtual bool | removeChildren (unsigned int pos, unsigned int numChildrenToRemove=1) |
Remove children from Group. | |
void | setDatabasePath (const std::string &path) |
Set the database path to prepend to children's filenames. | |
const std::string & | getDatabasePath () const |
Get the database path used to prepend to children's filenames. | |
void | setFileName (unsigned int childNo, const std::string &filename) |
const std::string & | getFileName (unsigned int childNo) const |
unsigned int | getNumFileNames () const |
void | setPriorityOffset (unsigned int childNo, float priorityOffset) |
float | getPriorityOffset (unsigned int childNo) const |
unsigned int | getNumPriorityOffsets () const |
void | setPriorityScale (unsigned int childNo, float priorityScale) |
float | getPriorityScale (unsigned int childNo) const |
unsigned int | getNumPriorityScales () const |
void | setTimeStamp (unsigned int childNo, double timeStamp) |
double | getTimeStamp (unsigned int childNo) const |
unsigned int | getNumTimeStamps () const |
void | setFrameNumber (unsigned int childNo, int frameNumber) |
double | getFrameNumber (unsigned int childNo) const |
unsigned int | getNumFrameNumbers () const |
osg::ref_ptr< osg::Referenced > & | getDatabaseRequest (unsigned int childNo) |
Return the DatabaseRequest object used by the DatabasePager to keep track of file load requests being carried on behalf of the DatabasePager. | |
const osg::ref_ptr < osg::Referenced > & | getDatabaseRequest (unsigned int childNo) const |
Return the const DatabaseRequest object. | |
void | setFrameNumberOfLastTraversal (int frameNumber) |
Set the frame number of the last time that this PageLOD node was traversed. | |
int | getFrameNumberOfLastTraversal () const |
Get the frame number of the last time that this PageLOD node was traversed. | |
void | setNumChildrenThatCannotBeExpired (unsigned int num) |
Set the number of children that the PagedLOD must keep around, even if they are older than their expiry time. | |
unsigned int | getNumChildrenThatCannotBeExpired () const |
Get the number of children that the PagedLOD must keep around, even if they are older than their expiry time. | |
virtual bool | removeExpiredChildren (double expiryTime, int expiryFrame, NodeList &removedChildren) |
Remove the children from the PagedLOD which haven't been visited since specified expiry time and expiry frame number. | |
virtual bool | releaseGLObjectsOnExpiredChildren (double releaseTime, int releaseFrame) |
Release the GL Objects of the children from the PagedLOD which haven't been visited since specified expiry time and expiry frame number. | |
Protected Member Functions | |
virtual | ~PagedLOD () |
void | expandPerRangeDataTo (unsigned int pos) |
Protected Attributes | |
std::string | _databasePath |
int | _frameNumberOfLastTraversal |
unsigned int | _numChildrenThatCannotBeExpired |
PerRangeDataList | _perRangeDataList |
typedef std::vector<PerRangeData> osg::PagedLOD::PerRangeDataList |
osg::PagedLOD::PagedLOD | ( | ) |
Copy constructor using CopyOp to manage deep vs shallow copy.
virtual osg::PagedLOD::~PagedLOD | ( | ) | [protected, virtual] |
virtual bool osg::PagedLOD::addChild | ( | Node * | child | ) | [virtual] |
If node is not NULL and is not contained in Group then increment its reference count, add it to the child list and dirty the bounding sphere to force it to recompute on next getBound() and return true for success. Otherwise return false. Scene nodes can't be added as child nodes.
Reimplemented from osg::LOD.
virtual bool osg::PagedLOD::addChild | ( | Node * | child, |
float | min, | ||
float | max | ||
) | [virtual] |
Reimplemented from osg::LOD.
virtual bool osg::PagedLOD::addChild | ( | Node * | child, |
float | min, | ||
float | max, | ||
const std::string & | filename, | ||
float | priorityOffset = 0.0f , |
||
float | priorityScale = 1.0f |
||
) | [virtual] |
void osg::PagedLOD::expandPerRangeDataTo | ( | unsigned int | pos | ) | [protected] |
const std::string& osg::PagedLOD::getDatabasePath | ( | ) | const [inline] |
Get the database path used to prepend to children's filenames.
osg::ref_ptr<osg::Referenced>& osg::PagedLOD::getDatabaseRequest | ( | unsigned int | childNo | ) | [inline] |
Return the DatabaseRequest object used by the DatabasePager to keep track of file load requests being carried on behalf of the DatabasePager.
Note, in normal OSG usage you should not set this value yourself, as this will be managed by the osgDB::DatabasePager.
const osg::ref_ptr<osg::Referenced>& osg::PagedLOD::getDatabaseRequest | ( | unsigned int | childNo | ) | const [inline] |
Return the const DatabaseRequest object.
const std::string& osg::PagedLOD::getFileName | ( | unsigned int | childNo | ) | const [inline] |
double osg::PagedLOD::getFrameNumber | ( | unsigned int | childNo | ) | const [inline] |
int osg::PagedLOD::getFrameNumberOfLastTraversal | ( | ) | const [inline] |
Get the frame number of the last time that this PageLOD node was traversed.
unsigned int osg::PagedLOD::getNumChildrenThatCannotBeExpired | ( | ) | const [inline] |
Get the number of children that the PagedLOD must keep around, even if they are older than their expiry time.
unsigned int osg::PagedLOD::getNumFileNames | ( | ) | const [inline] |
unsigned int osg::PagedLOD::getNumFrameNumbers | ( | ) | const [inline] |
unsigned int osg::PagedLOD::getNumPriorityOffsets | ( | ) | const [inline] |
unsigned int osg::PagedLOD::getNumPriorityScales | ( | ) | const [inline] |
unsigned int osg::PagedLOD::getNumTimeStamps | ( | ) | const [inline] |
float osg::PagedLOD::getPriorityOffset | ( | unsigned int | childNo | ) | const [inline] |
float osg::PagedLOD::getPriorityScale | ( | unsigned int | childNo | ) | const [inline] |
double osg::PagedLOD::getTimeStamp | ( | unsigned int | childNo | ) | const [inline] |
osg::PagedLOD::META_Node | ( | osg | , |
PagedLOD | |||
) |
virtual bool osg::PagedLOD::releaseGLObjectsOnExpiredChildren | ( | double | releaseTime, |
int | releaseFrame | ||
) | [virtual] |
Release the GL Objects of the children from the PagedLOD which haven't been visited since specified expiry time and expiry frame number.
Return true if any children have release called upon them, false otherwise.
virtual bool osg::PagedLOD::removeChildren | ( | unsigned int | pos, |
unsigned int | numChildrenToRemove = 1 |
||
) | [virtual] |
virtual bool osg::PagedLOD::removeExpiredChildren | ( | double | expiryTime, |
int | expiryFrame, | ||
NodeList & | removedChildren | ||
) | [virtual] |
Remove the children from the PagedLOD which haven't been visited since specified expiry time and expiry frame number.
The removed children are added to the removeChildren list passed into the method, this allows the children to be deleted later at the caller's discretion. Return true if children are removed, false otherwise.
void osg::PagedLOD::setDatabasePath | ( | const std::string & | path | ) |
Set the database path to prepend to children's filenames.
void osg::PagedLOD::setFileName | ( | unsigned int | childNo, |
const std::string & | filename | ||
) | [inline] |
void osg::PagedLOD::setFrameNumber | ( | unsigned int | childNo, |
int | frameNumber | ||
) | [inline] |
void osg::PagedLOD::setFrameNumberOfLastTraversal | ( | int | frameNumber | ) | [inline] |
Set the frame number of the last time that this PageLOD node was traversed.
Note, this frame number is automatically set by the traverse() method for all traversals (update, cull etc.).
void osg::PagedLOD::setNumChildrenThatCannotBeExpired | ( | unsigned int | num | ) | [inline] |
Set the number of children that the PagedLOD must keep around, even if they are older than their expiry time.
void osg::PagedLOD::setPriorityOffset | ( | unsigned int | childNo, |
float | priorityOffset | ||
) | [inline] |
void osg::PagedLOD::setPriorityScale | ( | unsigned int | childNo, |
float | priorityScale | ||
) | [inline] |
void osg::PagedLOD::setTimeStamp | ( | unsigned int | childNo, |
double | timeStamp | ||
) | [inline] |
virtual void osg::PagedLOD::traverse | ( | NodeVisitor & | ) | [virtual] |
Traverse downwards : calls children's accept method with NodeVisitor.
Reimplemented from osg::LOD.
std::string osg::PagedLOD::_databasePath [protected] |
int osg::PagedLOD::_frameNumberOfLastTraversal [protected] |
unsigned int osg::PagedLOD::_numChildrenThatCannotBeExpired [protected] |
PerRangeDataList osg::PagedLOD::_perRangeDataList [protected] |
![]() | Generated at Tue Mar 22 2011 13:20:22 for the OpenSceneGraph by doxygen 1.7.3. |