VR-Forces 4.6 Class Documentation
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
List of all members | Public Member Functions | Protected Types | Protected Member Functions | Protected Attributes | Friends
makVrv::DtElementDefinitionNew Class Reference

The element definition class contains the element definition information. More...

Public Member Functions

const DtUnicodename () const
 Get the name of the element definition.
bool isEqual (const DtElementDefinitionNew &) const
 check if two element definitions are equal we don't comapre the parent or children
int numberOfVisualizerDefinitionSets () const
 Get the number of visualizer definition sets the definition has.
DtVisualizerDefinitionSetvisualizerDefinitionSet (int modelSet)
 Get the visualizer set for the model set.
const DtVisualizerDefinitionSetvisualizerDefinitionSet (int modelSet) const
 Get the visualizer set for the model set.
DtElementDefinitionNewfindParent ()
 Find the element definition that his inherits from.
const DtElementDefinitionNewfindParent () const
 Find the element definition that his inherits from.
unsigned int numberOfChildren () const
 Get the number of element definitions which inherit from this definition.
DtElementDefinitionNewfindChild (unsigned int index)
 Find a child at a given index.
const DtElementDefinitionNewfindChild (unsigned int index) const
 Find a child at a given index.
int findChildIndex (const DtElementDefinitionNew *child) const
 Get the index of a child definition.
DtVisualizerDefinitionfindOrCreateLocalVisualizer (int modelSet, int visualizerIndex)
 Finds or creates a local visualizer, there must be a visualizer at the visualizerIndex, either a local visualizer or an inherited visualizer.
DtVisualizerAttributefindOrCreateLocalAttribute (int modelSet, int visualizerIndex, const std::string &attributeName)
 Utility function for finding or creating a local visualizer and local attribute.
bool isHier () const
 Is this element definition a hierarchy node?
void setIsHier (bool isHier)
 Set the name of the element definition.
DtElementDefinitionNewclone () const
 Create a clone of this element definition.

Protected Types

typedef std::vector
< DtElementDefinitionNew * > 
DefinitionList
typedef std::vector
< DtVisualizerDefinitionSet * > 
DefinitionSetList

Protected Member Functions

 DtElementDefinitionNew (const DtUnicode &name)
 Create a top level element definition.
 DtElementDefinitionNew (const DtUnicode &name, DtElementDefinitionNew *parent)
 Create an element definition which inherits from another definition.
 ~DtElementDefinitionNew ()
 DTOR.
DtElementDefinitionNewclone (const DtUnicode &name, DtElementDefinitionNew *newParent) const
 Create a clone of this element definition with a new name and a new parent.
void setName (const DtUnicode &name)
 Set the name of the element definition.
void addChild (DtElementDefinitionNew *child)
 Internal function.
void removeChild (DtElementDefinitionNew *child)
 Internal function.

Protected Attributes

DtUnicode myName
DefinitionSetList mySets
bool myIsHier
DtElementDefinitionNewmyParent
DefinitionList myChildren

Friends

class DtElementDefinitionManager
 Use the element definition manager to create, copy and destroy element definitions.

Detailed Description

The element definition class contains the element definition information.

The makVrv::DtElementDefinitionManager is responsible for create and destroying instances of the element definitions.

Member Typedef Documentation

Constructor & Destructor Documentation

makVrv::DtElementDefinitionNew::DtElementDefinitionNew ( const DtUnicode name)
protected

Create a top level element definition.

makVrv::DtElementDefinitionNew::DtElementDefinitionNew ( const DtUnicode name,
DtElementDefinitionNew parent 
)
protected

Create an element definition which inherits from another definition.

makVrv::DtElementDefinitionNew::~DtElementDefinitionNew ( )
protected

DTOR.

Member Function Documentation

const DtUnicode& makVrv::DtElementDefinitionNew::name ( ) const

Get the name of the element definition.

The name of an element is unique.

bool makVrv::DtElementDefinitionNew::isEqual ( const DtElementDefinitionNew ) const

check if two element definitions are equal we don't comapre the parent or children

Returns
true is those two element Definitions are identical
int makVrv::DtElementDefinitionNew::numberOfVisualizerDefinitionSets ( ) const

Get the number of visualizer definition sets the definition has.

DtVisualizerDefinitionSet& makVrv::DtElementDefinitionNew::visualizerDefinitionSet ( int  modelSet)

Get the visualizer set for the model set.

If visualizer definition set for the definition does not exist yet one will be created.

const DtVisualizerDefinitionSet& makVrv::DtElementDefinitionNew::visualizerDefinitionSet ( int  modelSet) const

Get the visualizer set for the model set.

If the visualizer definition set does not exist for the model set an exception (DtInvalidInput) will be thrown.

DtElementDefinitionNew* makVrv::DtElementDefinitionNew::findParent ( )

Find the element definition that his inherits from.

Returns
0 if this is a top level definition.
const DtElementDefinitionNew* makVrv::DtElementDefinitionNew::findParent ( ) const

Find the element definition that his inherits from.

Returns
0 if this is a top level definition.
unsigned int makVrv::DtElementDefinitionNew::numberOfChildren ( ) const

Get the number of element definitions which inherit from this definition.

DtElementDefinitionNew* makVrv::DtElementDefinitionNew::findChild ( unsigned int  index)

Find a child at a given index.

Returns
0 if the child does not exist at the provided index.
const DtElementDefinitionNew* makVrv::DtElementDefinitionNew::findChild ( unsigned int  index) const

Find a child at a given index.

Returns
0 if the child does not exist at the provided index.
int makVrv::DtElementDefinitionNew::findChildIndex ( const DtElementDefinitionNew child) const

Get the index of a child definition.

The index of the child may change if any children are removed.

Returns
-1 if the definition passed in is not a child.
DtVisualizerDefinition* makVrv::DtElementDefinitionNew::findOrCreateLocalVisualizer ( int  modelSet,
int  visualizerIndex 
)

Finds or creates a local visualizer, there must be a visualizer at the visualizerIndex, either a local visualizer or an inherited visualizer.

Returns
0 if the Visualizer definition index is invalid.
DtVisualizerAttribute* makVrv::DtElementDefinitionNew::findOrCreateLocalAttribute ( int  modelSet,
int  visualizerIndex,
const std::string &  attributeName 
)

Utility function for finding or creating a local visualizer and local attribute.

A local visualizer is owned by this element.

Returns
0 if the Visualizer definition index is invalid. See findOrCreateLocalVisualizer function.
bool makVrv::DtElementDefinitionNew::isHier ( ) const

Is this element definition a hierarchy node?

void makVrv::DtElementDefinitionNew::setIsHier ( bool  isHier)

Set the name of the element definition.

DtElementDefinitionNew* makVrv::DtElementDefinitionNew::clone ( ) const

Create a clone of this element definition.

DtElementDefinitionNew* makVrv::DtElementDefinitionNew::clone ( const DtUnicode name,
DtElementDefinitionNew newParent 
) const
protected

Create a clone of this element definition with a new name and a new parent.

void makVrv::DtElementDefinitionNew::setName ( const DtUnicode name)
protected

Set the name of the element definition.

void makVrv::DtElementDefinitionNew::addChild ( DtElementDefinitionNew child)
protected

Internal function.

void makVrv::DtElementDefinitionNew::removeChild ( DtElementDefinitionNew child)
protected

Internal function.

Friends And Related Function Documentation

friend class DtElementDefinitionManager
friend

Use the element definition manager to create, copy and destroy element definitions.

Member Data Documentation

DtUnicode makVrv::DtElementDefinitionNew::myName
protected
DefinitionSetList makVrv::DtElementDefinitionNew::mySets
protected
bool makVrv::DtElementDefinitionNew::myIsHier
protected
DtElementDefinitionNew* makVrv::DtElementDefinitionNew::myParent
protected
DefinitionList makVrv::DtElementDefinitionNew::myChildren
protected

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

Document ID: Generated on Thu Apr 12 03:15:37 EDT 2018 from SVN revision 187986
Copyright © 2005-2018 VT MÄK. All Rights Reserved (www.mak.com)