Blender  V2.93
Public Member Functions | Protected Attributes | List of all members
Freestyle::NodeGroup Class Reference

#include <NodeGroup.h>

Inherits Freestyle::Node.

Inherited by Freestyle::NodeDrawingStyle, and Freestyle::NodeTransform.

Public Member Functions

 NodeGroup ()
 
virtual ~NodeGroup ()
 
virtual void AddChild (Node *iChild)
 
virtual int destroy ()
 
virtual void DetachChildren ()
 
virtual void DetachChild (Node *iChild)
 
virtual void RetrieveChildren (vector< Node * > &oNodes)
 
virtual void accept (SceneVisitor &v)
 
virtual const BBox< Vec3r > & UpdateBBox ()
 
virtual int numberOfChildren ()
 
- Public Member Functions inherited from Freestyle::Node
 Node ()
 
 Node (const Node &iBrother)
 
virtual ~Node ()
 
virtual const BBox< Vec3r > & bbox () const
 
virtual void setBBox (const BBox< Vec3r > &iBox)
 
virtual void AddBBox (const BBox< Vec3r > &iBox)
 
virtual void clearBBox ()
 
- Public Member Functions inherited from Freestyle::BaseObject
 BaseObject ()
 
virtual ~BaseObject ()
 
int addRef ()
 
int release ()
 

Protected Attributes

vector< Node * > _Children
 

Detailed Description

Definition at line 36 of file NodeGroup.h.

Constructor & Destructor Documentation

◆ NodeGroup()

Freestyle::NodeGroup::NodeGroup ( )
inline

Definition at line 38 of file NodeGroup.h.

◆ ~NodeGroup()

virtual Freestyle::NodeGroup::~NodeGroup ( )
inlinevirtual

Definition at line 41 of file NodeGroup.h.

Member Function Documentation

◆ accept()

void Freestyle::NodeGroup::accept ( SceneVisitor v)
virtual

Renders every children

Accept the corresponding visitor

Reimplemented from Freestyle::Node.

Reimplemented in Freestyle::NodeTransform, and Freestyle::NodeDrawingStyle.

Definition at line 68 of file NodeGroup.cpp.

References _Children, node, and v.

Referenced by Freestyle::Controller::LoadMesh().

◆ AddChild()

void Freestyle::NodeGroup::AddChild ( Node iChild)
virtual

◆ destroy()

int Freestyle::NodeGroup::destroy ( )
virtual

destroys all the underlying nodes Returns the reference counter after having done a release()

Node::destroy makes a release on the object and then returns the reference counter. If the reference counter is equal to 0, that means that nobody else is linking this node group and that we can destroy the whole underlying tree. Else, one or several Node link this node group, and we only returns the reference counter decremented by Node::destroy();

Reimplemented from Freestyle::BaseObject.

Definition at line 38 of file NodeGroup.cpp.

References _Children, Freestyle::BaseObject::destroy(), and node.

Referenced by Freestyle::Controller::ClearRootNode(), Freestyle::Controller::ComputeSteerableViewMap(), Freestyle::Controller::LoadMesh(), Freestyle::AppView::~AppView(), and Freestyle::Controller::~Controller().

◆ DetachChild()

void Freestyle::NodeGroup::DetachChild ( Node iChild)
virtual

Detached the specified child

Definition at line 91 of file NodeGroup.cpp.

References _Children, and node.

◆ DetachChildren()

void Freestyle::NodeGroup::DetachChildren ( )
virtual

Detaches all the children

Definition at line 80 of file NodeGroup.cpp.

References _Children, and node.

◆ numberOfChildren()

virtual int Freestyle::NodeGroup::numberOfChildren ( )
inlinevirtual

Returns the number of children

Definition at line 72 of file NodeGroup.h.

Referenced by Freestyle::Controller::LoadMesh().

◆ RetrieveChildren()

void Freestyle::NodeGroup::RetrieveChildren ( vector< Node * > &  oNodes)
virtual

Retrieve children

Definition at line 106 of file NodeGroup.cpp.

References _Children.

◆ UpdateBBox()

const BBox< Vec3r > & Freestyle::NodeGroup::UpdateBBox ( )
virtual

Member Data Documentation

◆ _Children

vector<Node *> Freestyle::NodeGroup::_Children
protected

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