shawn::TagContainer Class Reference

#include <tag_container.h>

Inheritance diagram for shawn::TagContainer:

Inheritance graph
[legend]
Collaboration diagram for shawn::TagContainer:

Collaboration graph
[legend]

List of all members.

Public Types

Public Types
typedef std::map< std::string,
RefcntPointer< Tag > > 
TagMap
typedef TagMap::const_iterator tag_iterator

Public Member Functions

Ctor, Dtor
 TagContainer ()
virtual ~TagContainer ()
Tag Modification
overwrites already existing tag with same name

virtual void add_tag (const RefcntPointer< Tag > &) throw ()
virtual void remove_tag (const RefcntPointer< const Tag > &) throw ()
 tag must be contained in this container!
virtual void remove_tag_by_name (const std::string &) throw ()
 passing non-existing tag name is okay
virtual void clear_tags (void) throw ()
Tag Access
NULL if nonex

virtual RefcntPointer< const Tagfind_tag (const std::string &) const throw ()
virtual RefcntPointer< Tagfind_tag_w (const std::string &) throw ()
 NULL if nonex.
template<typename T>
const T * find_typed_tag (const std::string &t) const throw ( std::runtime_error )
template<typename T>
T * find_typed_tag_w (const std::string &t) throw ( std::runtime_error )
virtual tag_iterator begin_tags (void) const throw ()
virtual tag_iterator end_tags (void) const throw ()
virtual unsigned int count_tags (void) const throw ()


Member Typedef Documentation

typedef std::map<std::string, RefcntPointer<Tag> > shawn::TagContainer::TagMap

typedef TagMap::const_iterator shawn::TagContainer::tag_iterator


Constructor & Destructor Documentation

shawn::TagContainer::TagContainer (  ) 

virtual shawn::TagContainer::~TagContainer (  )  [virtual]


Member Function Documentation

virtual void shawn::TagContainer::add_tag ( const RefcntPointer< Tag > &   )  throw () [virtual]

virtual void shawn::TagContainer::remove_tag ( const RefcntPointer< const Tag > &   )  throw () [virtual]

tag must be contained in this container!

virtual void shawn::TagContainer::remove_tag_by_name ( const std::string &   )  throw () [virtual]

passing non-existing tag name is okay

virtual void shawn::TagContainer::clear_tags ( void   )  throw () [virtual]

virtual RefcntPointer<const Tag> shawn::TagContainer::find_tag ( const std::string &   )  const throw () [virtual]

Here is the caller graph for this function:

virtual RefcntPointer<Tag> shawn::TagContainer::find_tag_w ( const std::string &   )  throw () [virtual]

NULL if nonex.

Here is the caller graph for this function:

template<typename T>
const T* shawn::TagContainer::find_typed_tag ( const std::string &  t  )  const throw ( std::runtime_error ) [inline]

Here is the call graph for this function:

template<typename T>
T* shawn::TagContainer::find_typed_tag_w ( const std::string &  t  )  throw ( std::runtime_error ) [inline]

Here is the call graph for this function:

virtual tag_iterator shawn::TagContainer::begin_tags ( void   )  const throw () [virtual]

virtual tag_iterator shawn::TagContainer::end_tags ( void   )  const throw () [virtual]

virtual unsigned int shawn::TagContainer::count_tags ( void   )  const throw () [virtual]


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

Generated on Sun Feb 5 00:01:19 2012 for Shawn by  doxygen 1.5.6