osg::NodeGraph::NodeList Class Reference

List of all members.

Public Member Functions

Constructors


 NodeList (void)
Class Specific


int size (void)
bool empty (void)
NodeListdown (void)
void setDown (NodeList *down)
int degree (void)
void setDegree (int degree)
Nodefirst (void)
Nodelast (void)
void push_back (Node &node)
void push_front (Node &node)
void add (Node &node, bool back)

Private Attributes

int _degree
Node_first
Node_last
int _size
NodeList_down

Friends

class Node


Detailed Description

Definition at line 106 of file OSGNodeGraph.h.


Constructor & Destructor Documentation

osg::NodeGraph::NodeList::NodeList ( void   )  [inline]

Definition at line 122 of file OSGNodeGraph.h.

00123             : _degree(0), _first(0), _last(0), _size(0), _down(0) {;}


Member Function Documentation

int osg::NodeGraph::NodeList::size ( void   )  [inline]

Definition at line 130 of file OSGNodeGraph.h.

00130 { return _size; }

bool osg::NodeGraph::NodeList::empty ( void   )  [inline]

Definition at line 131 of file OSGNodeGraph.h.

00131                                                          { return _size ? 
00132                                                            false : true; }

NodeList* osg::NodeGraph::NodeList::down ( void   )  [inline]

Definition at line 133 of file OSGNodeGraph.h.

00133 { return _down; }

void osg::NodeGraph::NodeList::setDown ( NodeList down  )  [inline]

Definition at line 134 of file OSGNodeGraph.h.

00134 { _down = down; }

int osg::NodeGraph::NodeList::degree ( void   )  [inline]

Definition at line 135 of file OSGNodeGraph.h.

00135 { return _degree; }

void osg::NodeGraph::NodeList::setDegree ( int  degree  )  [inline]

Definition at line 136 of file OSGNodeGraph.h.

00136 { _degree = degree; }

Node* osg::NodeGraph::NodeList::first ( void   )  [inline]

Definition at line 137 of file OSGNodeGraph.h.

00137 { return _first; }

Node* osg::NodeGraph::NodeList::last ( void   )  [inline]

Definition at line 138 of file OSGNodeGraph.h.

00138 { return _last; }

void osg::NodeGraph::NodeList::push_back ( Node node  )  [inline]

Definition at line 140 of file OSGNodeGraph.h.

References osg::NodeGraph::Node::list, osg::NodeGraph::Node::prev, and osg::NodeGraph::Node::release().

00141         {
00142             node.release();
00143             if (_last) 
00144             {
00145                 _last->next = &node;
00146                 node.prev = _last;
00147                 _last = &node;
00148             }
00149             else 
00150             {
00151                 _last = &node;
00152                 _first = &node;
00153             }
00154             _size++;
00155             node.list = this;
00156         }

void osg::NodeGraph::NodeList::push_front ( Node node  )  [inline]

Definition at line 157 of file OSGNodeGraph.h.

References osg::NodeGraph::Node::list, osg::NodeGraph::Node::next, and osg::NodeGraph::Node::release().

00158         {
00159             node.release();
00160             if (_first)
00161             {
00162                 _first->prev = &node;
00163                 node.next = _first;
00164                 _first = &node;
00165             }
00166             else
00167             {
00168                 _last = &node;
00169                 _first = &node;
00170             }
00171             _size++;
00172             node.list = this;
00173         }

void osg::NodeGraph::NodeList::add ( Node node,
bool  back 
) [inline]

Definition at line 174 of file OSGNodeGraph.h.

00175             { back ? push_back(node) : push_front(node); }


Friends And Related Function Documentation

friend class Node [friend]

Definition at line 108 of file OSGNodeGraph.h.


Member Data Documentation

Definition at line 110 of file OSGNodeGraph.h.

Definition at line 111 of file OSGNodeGraph.h.

Definition at line 112 of file OSGNodeGraph.h.

Definition at line 113 of file OSGNodeGraph.h.

Definition at line 114 of file OSGNodeGraph.h.


The documentation for this class was generated from the following file:

Generated on Mon Mar 17 12:07:17 2008 for OpenSG by  doxygen 1.5.5