VrmlNode Class Reference

#include <basic/geometry/vrml_reader/VrmlNode.h>

Inherited by VrmlAppearance, VrmlBaseHasMatrix, VrmlBboxCenter, VrmlBboxSize, VrmlChildren, VrmlCoordinate3, VrmlGroup, VrmlIndexedFaceSet, VrmlInline, VrmlMaterial, VrmlOneWordNode, VrmlSeparator, VrmlShape, VrmlTransform, and VrmlWorldInfo.

Inheritance diagram for VrmlNode:

Inheritance graph
[legend]
List of all members.

Public Member Functions

 VrmlNode ()
virtual ~VrmlNode ()
void AddRef ()
virtual void Parse (char *&buffer)
void Release ()
virtual void Render (VrmlStack &stack) const
virtual void RenderOpenGl (VrmlStack &stack) const
virtual IGS_ObjectRenderToIGS (VrmlStack &stack) const
void SetType (const char *string)

Static Public Member Functions

static void CleanupGlobals ()
static Keyword GetKeyword (char *&buffer)
static void GetKeywordString (char *&buffer, char *keyword)
static VrmlNodeParseDefNode (char *&buffer)
static VrmlNodeParseNode (Keyword keyword, char *&buffer)
static VrmlNodeParseUseNode (char *&buffer)

Static Public Attributes

static std::map< std::string,
VrmlNode * > 
g_DataBase

Protected Attributes

int m_RefCount

Detailed Description

Definition at line 17 of file VrmlNode.h.


Constructor & Destructor Documentation

VrmlNode::VrmlNode  ) 
 

Definition at line 52 of file VrmlNode.cpp.

References CleanVrmlNodes().

Here is the call graph for this function:

VrmlNode::~VrmlNode  )  [virtual]
 

Definition at line 75 of file VrmlNode.cpp.

References m_RefCount.


Member Function Documentation

void VrmlNode::AddRef  ) 
 

Definition at line 86 of file VrmlNode.cpp.

References m_RefCount.

Referenced by VrmlShape::Parse(), VrmlInline::Parse(), VrmlChildren::Parse(), ParseDefNode(), VrmlInline::ParseFile(), VrmlIndexedFaceSet::ParseNodeCoord(), VrmlIndexedFaceSet::ParseNodeTexCoord(), and VRML_20_Reader::Read().

void VrmlNode::CleanupGlobals  )  [static]
 

Definition at line 96 of file VrmlNode.cpp.

References g_DataBase.

Keyword VrmlNode::GetKeyword char *&  buffer  )  [static]
 

Reimplemented in VrmlIndexedFaceSet.

Definition at line 114 of file VrmlNode.cpp.

References GetKeywordString(), IJG_Assert, VRML_AmbientColor, VRML_AmbientIntensity, VRML_AppearanceLower, VRML_AppearanceUpper, VRML_BboxCenter, VRML_BboxSize, VRML_Ccw, VRML_Children, VRML_Collision, VRML_Color, VRML_ColorPerVertex, VRML_Convex, VRML_Coord, VRML_Coordinate3, VRML_CoordIndex, VRML_CreaseAngle, VRML_Cylinder, VRML_Define, VRML_DiffuseColor, VRML_DirectionalLight, VRML_DrawStyle, VRML_EmissiveColor, VRML_Geometry, VRML_Group, VRML_IndexedFaceSet, VRML_IndexedLineSet, VRML_Info, VRML_Inline, VRML_Invalid, VRML_MaterialBinding, VRML_MaterialIndex, VRML_MaterialLower, VRML_MaterialUpper, VRML_MatrixTransform, VRML_NavigationInfo, VRML_Normal, VRML_NormalBinding, VRML_NormalIndex, VRML_NormalPerVertex, VRML_PointSet, VRML_RenderCulling, VRML_Rotation, VRML_Scale, VRML_ScaleOrientation, VRML_Separator, VRML_Shape, VRML_ShapeHints, VRML_Shininess, VRML_Solid, VRML_SpecularColor, VRML_Sphere, VRML_TexCoord, VRML_TexCoordIndex, VRML_Texture, VRML_TextureCoordinate, VRML_TextureCoordIndex, VRML_TimeSensor, VRML_Transform, VRML_Translation, VRML_Transparency, VRML_Url, VRML_Use, VRML_Vector, VRML_Viewpoint, VRML_WorldInfo, VrmlKeywordAmbientColor, VrmlKeywordAmbientIntensity, VrmlKeywordAppearanceLower, VrmlKeywordAppearanceUpper, VrmlKeywordBboxCenter, VrmlKeywordBboxSize, VrmlKeywordCcw, VrmlKeywordChildren, VrmlKeywordCollision, VrmlKeywordColor, VrmlKeywordColorPerVertex, VrmlKeywordConvex, VrmlKeywordCoord, VrmlKeywordCoordIndex, VrmlKeywordCreaseAngle, VrmlKeywordCylinder, VrmlKeywordDefine, VrmlKeywordDiffuseColor, VrmlKeywordDirectionalLight, VrmlKeywordEmissiveColor, VrmlKeywordGeometry, VrmlKeywordGroup, VrmlKeywordInfo, VrmlKeywordInline, VrmlKeywordMaterialBinding, VrmlKeywordMaterialIndex, VrmlKeywordMaterialLower, VrmlKeywordMaterialUpper, VrmlKeywordMatrixTransform, VrmlKeywordNavigationInfo, VrmlKeywordNormal, VrmlKeywordNormalBinding, VrmlKeywordNormalIndex, VrmlKeywordNormalPerVertex, VrmlKeywordRenderCulling, VrmlKeywordRotation, VrmlKeywordRotationUpper, VrmlKeywordScale, VrmlKeywordScaleFactor, VrmlKeywordScaleOrientation, VrmlKeywordScaleUpper, VrmlKeywordSeparator, VrmlKeywordShape, VrmlKeywordShininess, VrmlKeywordSolid, VrmlKeywordSpecularColor, VrmlKeywordSphere, VrmlKeywordTexCoord, VrmlKeywordTexCoordIndex, VrmlKeywordTexture, VrmlKeywordTextureCoordinate, VrmlKeywordTextureCoordIndex, VrmlKeywordTimeSensor, VrmlKeywordTransform, VrmlKeywordTranslation, VrmlKeywordTranslationUpper, VrmlKeywordTransparency, VrmlKeywordUrl, VrmlKeywordUse, VrmlKeywordVector, VrmlKeywordViewpoint, and VrmlKeywordWorldInfo.

Referenced by VrmlTranslation::Parse(), VrmlTransform::Parse(), VrmlShape::Parse(), VrmlSeparator::Parse(), VrmlScale::Parse(), VrmlRotation::Parse(), VrmlMaterial::Parse(), VrmlInline::Parse(), VrmlIndexedFaceSet::Parse(), VrmlGroup::Parse(), VrmlChildren::Parse(), VrmlAppearance::Parse(), ParseDefNode(), VrmlInline::ParseFile(), VrmlIndexedFaceSet::ParseNodeCoord(), VrmlIndexedFaceSet::ParseNodeTexCoord(), and VRML_20_Reader::Read().

Here is the call graph for this function:

void VrmlNode::GetKeywordString char *&  buffer,
char *  keyword
[static]
 

Definition at line 405 of file VrmlNode.cpp.

References EatWhite().

Referenced by GetKeyword(), VrmlIndexedFaceSet::GetKeyword(), ParseDefNode(), and ParseUseNode().

Here is the call graph for this function:

void VrmlNode::Parse char *&  buffer  )  [virtual]
 

Reimplemented in VrmlAppearance, VrmlBboxCenter, VrmlBboxSize, VrmlChildren, VrmlCoordinate3, VrmlGroup, VrmlIndexedFaceSet, VrmlInline, VrmlMaterial, VrmlOneWordNode, VrmlRotation, VrmlScale, VrmlScaleOrientation, VrmlSeparator, VrmlShape, VrmlTransform, VrmlTranslation, and VrmlWorldInfo.

Definition at line 421 of file VrmlNode.cpp.

Referenced by VrmlWorldInfo::Parse(), and ParseNode().

VrmlNode * VrmlNode::ParseDefNode char *&  buffer  )  [static]
 

Definition at line 452 of file VrmlNode.cpp.

References AddRef(), EatWhite(), g_DataBase, GetKeyword(), GetKeywordString(), and ParseNode().

Referenced by ParseNode().

Here is the call graph for this function:

VrmlNode * VrmlNode::ParseNode Keyword  keyword,
char *&  buffer
[static]
 

Definition at line 475 of file VrmlNode.cpp.

References Parse(), ParseDefNode(), ParseUseNode(), SetType(), VRML_AppearanceUpper, VRML_BboxCenter, VRML_BboxSize, VRML_Children, VRML_Coordinate3, VRML_Cylinder, VRML_Define, VRML_DirectionalLight, VRML_DrawStyle, VRML_Group, VRML_IndexedFaceSet, VRML_IndexedLineSet, VRML_Info, VRML_Inline, VRML_Invalid, VRML_MaterialBinding, VRML_MaterialUpper, VRML_MatrixTransform, VRML_NavigationInfo, VRML_NormalBinding, VRML_PointSet, VRML_RenderCulling, VRML_Rotation, VRML_Scale, VRML_Separator, VRML_Shape, VRML_ShapeHints, VRML_Sphere, VRML_TextureCoordinate, VRML_TimeSensor, VRML_Transform, VRML_Translation, VRML_Use, VRML_Viewpoint, VRML_WorldInfo, VrmlKeywordAppearanceUpper, VrmlKeywordBboxCenter, VrmlKeywordBboxSize, VrmlKeywordChildren, VrmlKeywordCylinder, VrmlKeywordDirectionalLight, VrmlKeywordDrawStyle, VrmlKeywordIndexedLineSet, VrmlKeywordInfo, VrmlKeywordInline, VrmlKeywordMaterialBinding, VrmlKeywordMaterialUpper, VrmlKeywordMatrixTransform, VrmlKeywordNavigationInfo, VrmlKeywordNormalBinding, VrmlKeywordPointSet, VrmlKeywordRenderCulling, VrmlKeywordRotation, VrmlKeywordScale, VrmlKeywordShape, VrmlKeywordSphere, VrmlKeywordTextureCoordinate, VrmlKeywordTimeSensor, VrmlKeywordTransform, VrmlKeywordTranslation, and VrmlKeywordViewpoint.

Referenced by VrmlShape::Parse(), VrmlSeparator::Parse(), VrmlChildren::Parse(), VrmlAppearance::Parse(), ParseDefNode(), VrmlInline::ParseFile(), VrmlIndexedFaceSet::ParseNodeCoord(), VrmlIndexedFaceSet::ParseNodeTexCoord(), and VRML_20_Reader::Read().

Here is the call graph for this function:

VrmlNode * VrmlNode::ParseUseNode char *&  buffer  )  [static]
 

Definition at line 711 of file VrmlNode.cpp.

References g_DataBase, and GetKeywordString().

Referenced by ParseNode().

Here is the call graph for this function:

void VrmlNode::Release  ) 
 

Definition at line 733 of file VrmlNode.cpp.

References m_RefCount.

Referenced by VrmlIndexedFaceSet::~VrmlIndexedFaceSet(), VrmlInline::~VrmlInline(), and VrmlShape::~VrmlShape().

void VrmlNode::Render VrmlStack stack  )  const [virtual]
 

Reimplemented in VrmlAppearance, VrmlBboxCenter, VrmlBboxSize, VrmlChildren, VrmlCoordinate3, VrmlGroup, VrmlIndexedFaceSet, VrmlInline, VrmlMaterial, VrmlSeparator, VrmlShape, VrmlTransform, and VrmlWorldInfo.

Definition at line 748 of file VrmlNode.cpp.

Referenced by VrmlShape::Render(), VrmlIndexedFaceSet::Render(), VrmlAppearance::Render(), RenderOpenGl(), and RenderToIGS().

void VrmlNode::RenderOpenGl VrmlStack stack  )  const [virtual]
 

Reimplemented in VrmlAppearance, VrmlChildren, VrmlGroup, VrmlIndexedFaceSet, VrmlInline, VrmlMaterial, VrmlSeparator, VrmlShape, and VrmlTransform.

Definition at line 760 of file VrmlNode.cpp.

References Render().

Referenced by VrmlShape::RenderOpenGl(), VrmlInline::RenderOpenGl(), VrmlGroup::RenderOpenGl(), and VrmlAppearance::RenderOpenGl().

Here is the call graph for this function:

IGS_Object * VrmlNode::RenderToIGS VrmlStack stack  )  const [virtual]
 

Reimplemented in VrmlAppearance, VrmlBboxCenter, VrmlBboxSize, VrmlChildren, VrmlGroup, VrmlIndexedFaceSet, VrmlInline, VrmlMaterial, VrmlSeparator, VrmlShape, VrmlTransform, and VrmlWorldInfo.

Definition at line 771 of file VrmlNode.cpp.

References Render().

Referenced by VRML_20_Reader::Read(), VrmlShape::RenderToIGS(), and VrmlAppearance::RenderToIGS().

Here is the call graph for this function:

void VrmlNode::SetType const char *  string  ) 
 

Definition at line 782 of file VrmlNode.cpp.

Referenced by VrmlGroup::Parse(), and ParseNode().


Member Data Documentation

std::map< std::string, VrmlNode * > VrmlNode::g_DataBase [static]
 

Definition at line 41 of file VrmlNode.h.

Referenced by CleanupGlobals(), CleanVrmlNodes(), ParseDefNode(), and ParseUseNode().

int VrmlNode::m_RefCount [protected]
 

Definition at line 43 of file VrmlNode.h.

Referenced by AddRef(), Release(), and ~VrmlNode().


The documentation for this class was generated from the following files:
Generated on Sat Apr 1 22:07:10 2006 for Motion Planning Kernel by  doxygen 1.4.6-NO