Reverted change of Node::ParentList from being a vector<Node*> back to a vector<Group*>

This commit is contained in:
Robert Osfield
2014-06-03 09:52:55 +00:00
parent 3dde165f14
commit 333a16a88d
6 changed files with 13 additions and 29 deletions

View File

@@ -166,7 +166,7 @@ class OSG_EXPORT Node : public Object
virtual void traverse(NodeVisitor& /*nv*/) {}
/** A vector of osg::Group pointers which is used to store the parent(s) of node.*/
typedef std::vector<Node*> ParentList;
typedef std::vector<Group*> ParentList;
/** Get the parent list of node. */
inline const ParentList& getParents() const { return _parents; }
@@ -175,14 +175,14 @@ class OSG_EXPORT Node : public Object
* prevent modification of the parent list.*/
inline ParentList getParents() { return _parents; }
inline Node* getParent(unsigned int i) { return _parents[i]; }
inline Group* getParent(unsigned int i) { return _parents[i]; }
/**
* Get a single const parent of node.
* @param i index of the parent to get.
* @return the parent i.
*/
inline const Node* getParent(unsigned int i) const { return _parents[i]; }
inline const Group* getParent(unsigned int i) const { return _parents[i]; }
/**
* Get the number of parents of node.
@@ -192,20 +192,6 @@ class OSG_EXPORT Node : public Object
/** Provide interface for Composite like Group nodes to implement.*/
virtual unsigned int getNumChildren() const { return 0; }
/** Provide interface for Composite like Group nodes to implement.*/
virtual bool addChild( Node* /*child*/ ) { return false; }
/** Provide interface for Composite like Group nodes to implement.*/
virtual bool removeChild( Node* /*child*/ ) { return false; }
/** Provide interface for Composite like Group nodes to implement.*/
virtual bool replaceChild( Node* /*origChild*/, Node* /*newChild*/ ) { return false; }
/** Get the list of node paths parent paths.
* The optional Node* haltTraversalAtNode allows the user to prevent traversal beyond a specifed node. */
NodePathList getParentalNodePaths(osg::Node* haltTraversalAtNode=0) const;
@@ -483,8 +469,8 @@ class OSG_EXPORT Node : public Object
mutable BoundingSphere _boundingSphere;
mutable bool _boundingSphereComputed;
void addParent(osg::Node* node);
void removeParent(osg::Node* node);
void addParent(osg::Group* parent);
void removeParent(osg::Group* parent);
ParentList _parents;
friend class osg::Group;