TagGroup Class Reference

#include <Ample.h>

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

List of all members.

Public Types

typedef Observer
< TagGroupObserver
ObserverType
typedef std::vector
< TagGroupObserver * > 
ObserverList

Public Member Functions

void destroy (void)
void createTag (const std::string &name, VNTagType type, const VNTag &value)
uint16 getID (void) const
const std::string & getName (void) const
void setName (const std::string &name)
TaggetTagByID (uint16 ID)
const TaggetTagByID (uint16 ID) const
TaggetTagByIndex (unsigned int index)
const TaggetTagByIndex (unsigned int index) const
TaggetTagByName (const std::string &name)
const TaggetTagByName (const std::string &name) const
unsigned int getTagCount (void) const
NodegetNode (void) const
unsigned int getDataVersion (void) const
unsigned int getStructureVersion (void) const
void addObserver (TagGroupObserver &observer)
void removeObserver (TagGroupObserver &observer)
void removeObserver (Observer< TagGroupObserver > &observer)
const ObserverListgetObservers (void) const

Friends

class Node

Detailed Description

Node tag group class. Represents a single tag group in a node.


Member Typedef Documentation

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

Member Function Documentation

void addObserver ( TagGroupObserver 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 createTag ( const std::string &  name,
VNTagType  type,
const VNTag &  value 
)

Creates a new tag in this tag group.

Parameters:
name The desired name of the tag.
type The desired type of the tag.
value The initial value of the tag.
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   ) 

Destroys this tag group.

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.
uint16 getID ( void   )  const
Returns:
The ID of this tag group.
const std::string& getName ( void   )  const
Returns:
The name of this tag group.
Node& getNode ( void   )  const
Returns:
The node containing this tag group.
const ObserverList& getObservers ( void   )  const [inline, inherited]
Returns:
The list of observers attached to this object.
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* getTagByID ( uint16  ID  )  const
Parameters:
ID The ID of the desired tag.
Returns:
The tag with the specified ID, or NULL if no such tag exists.
Tag* getTagByID ( uint16  ID  ) 
Parameters:
ID The ID of the desired tag.
Returns:
The tag with the specified ID, or NULL if no such tag exists.
const Tag* getTagByIndex ( unsigned int  index  )  const
Parameters:
index The index of the desired tag.
Returns:
The tag at the specified index, or NULL if no such tag exists.
Tag* getTagByIndex ( unsigned int  index  ) 
Parameters:
index The index of the desired tag.
Returns:
The tag at the specified index, or NULL if no such tag exists.
const Tag* getTagByName ( const std::string &  name  )  const
Parameters:
name The name of the desired tag.
Returns:
The tag with the specified name, or NULL if no such tag exists.
Tag* getTagByName ( const std::string &  name  ) 
Parameters:
name The name of the desired tag.
Returns:
The tag with the specified name, or NULL if no such tag exists.
unsigned int getTagCount ( void   )  const
Returns:
The number of tags in this tag group.
void removeObserver ( Observer< TagGroupObserver > &  observer  )  [inline, inherited]

Removes the specified observer from this object.

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

Removes the specified observer from this object.

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

Changes the name of this tag group.

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 Node [friend]

Reimplemented from Versioned.


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