MaterialNode Class Reference

#include <Ample.h>

Inheritance diagram for MaterialNode:
Inheritance graph
[legend]
Collaboration diagram for MaterialNode:
Collaboration graph
[legend]

List of all members.

Public Types

typedef Observer< NodeObserverObserverType
typedef std::vector
< NodeObserver * > 
ObserverList

Public Member Functions

void createFragment (VNMFragmentID ID, VNMFragmentType type, const VMatFrag &value)
FragmentgetFragmentByID (VNMFragmentID ID)
const FragmentgetFragmentByID (VNMFragmentID ID) const
FragmentgetFragmentByIndex (unsigned int index)
const FragmentgetFragmentByIndex (unsigned int index) const
FragmentgetFragmentByName (const std::string &name)
const FragmentgetFragmentByName (const std::string &name) const
uint16 getFragmentCount (void) const
void destroy (void)
void createTagGroup (const std::string &name)
TagGroupgetTagGroupByID (uint16 ID)
const TagGroupgetTagGroupByID (uint16 ID) const
TagGroupgetTagGroupByIndex (unsigned int index)
const TagGroupgetTagGroupByIndex (unsigned int index) const
TagGroupgetTagGroupByName (const std::string &name)
const TagGroupgetTagGroupByName (const std::string &name) const
unsigned int getTagGroupCount (void) const
TaggetTagByNames (const std::string &groupName, const std::string &tagName)
const TaggetTagByNames (const std::string &groupName, const std::string &tagName) const
bool isMine (void) const
VNodeID getID (void) const
VNodeType getType (void) const
const std::string & getName (void) const
void setName (const std::string &name)
SessiongetSession (void) const
unsigned int getDataVersion (void) const
unsigned int getStructureVersion (void) const
void addObserver (NodeObserver &observer)
void removeObserver (NodeObserver &observer)
void removeObserver (Observer< NodeObserver > &observer)
const ObserverListgetObservers (void) const

Friends

class Session

Detailed Description

Remarks:
Not finished.

Member Typedef Documentation

typedef std::vector<NodeObserver *> ObserverList [inherited]
typedef Observer<NodeObserver > ObserverType [inherited]

Member Function Documentation

void addObserver ( NodeObserver observer  )  [inline, inherited]

Adds the specified observer to this object.

Parameters:
observer The observer to add.
Remarks:
An observer can only be added once. Additional additions are ignored.
void createFragment ( VNMFragmentID  ID,
VNMFragmentType  type,
const VMatFrag &  value 
)
void createTagGroup ( const std::string &  name  )  [inherited]

Creates a new tag group in this node.

Parameters:
name The desired name of the tag group.
Remarks:
This call is asynchronous. It will not take effect until, at the earliest, after the first subsequent call to Session::update.
void destroy ( void   )  [inherited]

Destroys this node.

Remarks:
This call is asynchronous. It will not take effect until, at the earliest, after the first subsequent call to Session::update.
unsigned int getDataVersion ( void   )  const [inherited]
Returns:
The current version of the internal state.
Remarks:
This value is updated for any kind of change.
const Fragment* getFragmentByID ( VNMFragmentID  ID  )  const
Parameters:
ID The ID of the desired material fragment.
Returns:
The material fragment with the specified ID, or NULL if no such material fragment exists.
Fragment* getFragmentByID ( VNMFragmentID  ID  ) 
Parameters:
ID The ID of the desired material fragment.
Returns:
The material fragment with the specified ID, or NULL if no such material fragment exists.
const Fragment* getFragmentByIndex ( unsigned int  index  )  const
Parameters:
index The index of the desired material fragment.
Returns:
The material fragment at the specified index, or NULL if no such material fragment exists.
Fragment* getFragmentByIndex ( unsigned int  index  ) 
Parameters:
index The index of the desired material fragment.
Returns:
The material fragment at the specified index, or NULL if no such material fragment exists.
const Fragment* getFragmentByName ( const std::string &  name  )  const
Parameters:
name The name of the desired material fragment
Returns:
The material fragment with the specified name, or NULL if no such material fragment exists.
Fragment* getFragmentByName ( const std::string &  name  ) 
Parameters:
name The name of the desired material fragment
Returns:
The material fragment with the specified name, or NULL if no such material fragment exists.
uint16 getFragmentCount ( void   )  const
Returns:
The number of fragments in this material node.
VNodeID getID ( void   )  const [inherited]
Returns:
The ID of this node.
const std::string& getName ( void   )  const [inherited]
Returns:
The name of this node.
const ObserverList& getObservers ( void   )  const [inline, inherited]
Returns:
The list of observers attached to this object.
Session& getSession ( void   )  const [inherited]
Returns:
The session containing this node.
unsigned int getStructureVersion ( void   )  const [inherited]
Returns:
The current version of the internal structure.
Remarks:
This value is only updated when the internal structure changes.
const Tag* getTagByNames ( const std::string &  groupName,
const std::string &  tagName 
) const [inherited]
Parameters:
groupName The name of the group of the desired tag.
tagName The name of the desired tag.
Returns:
The tag with the specified name, in the specified group.
Tag* getTagByNames ( const std::string &  groupName,
const std::string &  tagName 
) [inherited]
Parameters:
groupName The name of the group of the desired tag.
tagName The name of the desired tag.
Returns:
The tag with the specified name, in the specified group.
const TagGroup* getTagGroupByID ( uint16  ID  )  const [inherited]
Parameters:
ID The ID of the desired tag group.
Returns:
The tag group with the specified ID, or NULL if no such tag group exists.
TagGroup* getTagGroupByID ( uint16  ID  )  [inherited]
Parameters:
ID The ID of the desired tag group.
Returns:
The tag group with the specified ID, or NULL if no such tag group exists.
const TagGroup* getTagGroupByIndex ( unsigned int  index  )  const [inherited]
Parameters:
index The index of the desired tag group.
Returns:
The tag group at the specified index, or NULL if no such tag group exists.
TagGroup* getTagGroupByIndex ( unsigned int  index  )  [inherited]
Parameters:
index The index of the desired tag group.
Returns:
The tag group at the specified index, or NULL if no such tag group exists.
const TagGroup* getTagGroupByName ( const std::string &  name  )  const [inherited]
Parameters:
name The name of the desired tag group.
Returns:
The tag group with the specified name, or NULL if no such tag group exists.
TagGroup* getTagGroupByName ( const std::string &  name  )  [inherited]
Parameters:
name The name of the desired tag group.
Returns:
The tag group with the specified name, or NULL if no such tag group exists.
unsigned int getTagGroupCount ( void   )  const [inherited]
Returns:
The number of tag groups in this node.
VNodeType getType ( void   )  const [inherited]
Returns:
The type of this node.
bool isMine ( void   )  const [inherited]
Returns:
true if this node was created from this client, otherwise false.
void removeObserver ( Observer< NodeObserver > &  observer  )  [inline, inherited]

Removes the specified observer from this object.

Parameters:
observer The observer to remove.
void removeObserver ( NodeObserver observer  )  [inline, inherited]

Removes the specified observer from this object.

Parameters:
observer The observer to remove.
void setName ( const std::string &  name  )  [inherited]

Changes the name of this node.

Parameters:
name The desired name.
Remarks:
This call is asynchronous. It will not take effect until, at the earliest, after the first subsequent call to Session::update.

Friends And Related Function Documentation

friend class Session [friend]

Reimplemented from Node.


Generated on Thu Nov 19 20:19:30 2009 for Ample by  doxygen 1.6.1