Public Member Functions |
| TaIndexSet (void) |
| Constructor.
|
| TaIndexSet (const TaIndexSet &rOtherSet) |
| Copy-constructor (from TaIndexSet, incl attributes)
|
| TaIndexSet (const IndexSet &rOtherSet) |
| Copy-constructor (from IndexSet, sets attributes to default)
|
| TaIndexSet (const std::string &rFilename, const std::string &rLabel="") |
| Construct from file.
|
virtual | ~TaIndexSet (void) |
| Virtual destructor.
|
virtual TaIndexSet & | Assign (const IndexSet &rSrc) |
| Relaxed assignment method.
|
virtual TaIndexSet & | operator= (const IndexSet &rSrc) |
| Relaxed assignment operator.
|
virtual void | Attributes (const IndexSet &rOtherSet) |
| Set attributes.
|
virtual void | Attributes (const TaIndexSet &rOtherSet) |
| Set attributes.
|
bool | Erase (const Idx &rIndex) |
| Erase Element (incl its attribute)
|
IndexSet::Iterator | Erase (const Iterator &pos) |
| Erase element by iterator (incl attribute)
|
void | EraseSet (const IndexSet &rOtherSet) |
| Erase elements given by other set.
|
void | RestrictSet (const IndexSet &rOtherSet) |
| Restrict to specified subset.
|
Idx | Insert (void) |
| Insert new index to set using default attribute.
|
Idx | Insert (const Attr &rAttr) |
| Insert new index with attribute.
|
bool | Insert (const Idx &rIndex) |
| Insert element.
|
bool | Insert (const Idx &rIndex, const Attr &attr) |
| Insert element with attribute.
|
virtual void | InsertSet (const IndexSet &rOtherSet) |
| Inserts elements of rOtherSet.
|
virtual void | InsertSet (const TaIndexSet &rOtherSet) |
| Inserts elements of rOtherSet.
|
virtual void | Clear (void) |
| Clear all set.
|
| IndexSet (void) |
| Constructor.
|
| IndexSet (const IndexSet &rOtherSet) |
| Copy-constructor.
|
| IndexSet (const TBaseSet< Idx > &rOtherSet) |
| Copy-constructor.
|
| IndexSet (const std::string &rFilename, const std::string &rLabel="") |
| Construct from file.
|
virtual | ~IndexSet (void) |
| Virtual destructor.
|
Idx | MaxIndex (void) const |
| Get maximum index used in this set (0 for emptyset)
|
bool | Valid (const Idx &rIndex) const |
| Test whether index is not 0.
|
Idx | Signature (void) const |
| Compute an Idx type signature for a Set.
|
std::string | Str (const Idx &rIndex) const |
| Return pretty printable index.
|
| TBaseSet (void) |
| Constructor.
|
| TBaseSet (const TBaseSet &rOtherSet) |
| Copy-constructor.
|
| TBaseSet (const std::string &rFilename, const std::string &rLabel="BaseSet") |
| Constructor from file.
|
virtual | ~TBaseSet (void) |
| Virtual destructor.
|
const std::string & | Name (void) const |
| Return name of TBaseSet.
|
void | Name (const std::string &rName) |
| Set name of TBaseSet.
|
Idx | Size (void) const |
| Get Size of TBaseSet.
|
bool | Empty (void) const |
| Test whether if the TBaseSet is Empty.
|
Iterator | Begin (void) const |
| Iterator to the begin of set.
|
Iterator | End (void) const |
| Iterator to the end of set.
|
virtual Iterator | Erase (const Iterator &pos) |
| Erase element by iterator.
|
virtual void | EraseSet (const TBaseSet &rOtherSet) |
| Erase elements given by other set.
|
virtual void | RestrictSet (const TBaseSet &rOtherSet) |
| Restrict elements given by other set.
|
virtual Iterator | Inject (const Iterator &pos, const Idx &rElem) |
| Insert specified element.
|
virtual void | Inject (const Idx &rElem) |
| Insert specified element.
|
virtual void | InsertSet (const TBaseSet &rOtherSet) |
| Insert elements given by rOtherSet.
|
virtual void | SetUnion (const TBaseSet &rOtherSet) |
| Set Union, result is accumulated in this set.
|
virtual void | SetIntersection (const TBaseSet &rOtherSet) |
| Set Intersection, result is stored in this set.
|
bool | Exists (const Idx &rElem) const |
| Test existence of element.
|
Iterator | Find (const Idx &rElem) const |
| Find element and return iterator.
|
TBaseSet | operator+ (const TBaseSet &rOtherSet) const |
| Set union operator.
|
TBaseSet | operator- (const TBaseSet &rOtherSet) const |
| Set difference operator.
|
TBaseSet | operator* (const TBaseSet &rOtherSet) const |
| Set intersection operator.
|
bool | operator<= (const TBaseSet &rOtherSet) const |
| Test for subset.
|
bool | operator>= (const TBaseSet &rOtherSet) const |
| Test for superset.
|
bool | operator< (const TBaseSet &rOtherSet) const |
| Order for sorting containers of TBaseSet.
|
void | DValid (const std::string &rMessage="") const |
| Some validation of deferred copy mechanism (provoke abort)
|
virtual void | Detach (void) const |
| Detach from extern storage (incl allocation and true copy)
|
virtual void | Lock (void) const |
| Detach and lock any further reallocation.
|
virtual const AttributeVoid * | Attributep (void) const |
| Attribute typeinfo.
|
virtual AttributeVoid * | Attributep (const Idx &rElem) |
| Attribute access.
|
virtual const AttributeVoid & | Attribute (void) const |
| Attribute typeinfo.
|
virtual const AttributeVoid & | Attribute (const Idx &rElem) const |
| Attribute access.
|
virtual void | Attribute (const Idx &rElem, const Type &rAttr) |
| Attribute access.
|
virtual bool | AttributeTry (const Type &rAttr) const |
| Attribute typeinfo.
|
virtual void | AttributeTry (const Idx &rElem, const Type &rAttr) |
| Attribute access.
|
virtual TBaseSet & | AssignWithoutAttributes (const TBaseSet &rSourceSet) |
| Attribute access.
|
virtual void | Attributes (const TBaseSet &rOtherSet) |
| Attributes access.
|
virtual Idx | AttributesSize (void) const |
| Attribute access.
|
virtual void | ClearAttributes (void) |
| Attribute access.
|
virtual bool | EqualAttributes (const TBaseSet &rOtherSet) const |
| Attribute access.
|
virtual void | ClrAttribute (const Idx &rElem) |
| Attribute access.
|
virtual void | XElementTag (const std::string &rTag) |
| Configure the element name tag.
|
virtual const std::string & | TypeName (void) const |
| Get objects's type name.
|
virtual void | TypeName (const std::string &rType) |
| Overwrite faudes-type name.
|
| Type (void) |
| Constructor.
|
| Type (const Type &rType) |
| Copy constructor.
|
virtual | ~Type (void) |
| Destructor.
|
virtual Type * | New (void) const |
| Construct on heap.
|
virtual Type * | Copy (void) const |
| Construct on heap.
|
virtual const Type * | Cast (const Type *pOther) const |
| Cast other object to this type.
|
virtual Type & | Assign (const Type &rSrc) |
| Assign configuration data from other object.
|
virtual Type & | operator= (const Type &rSrc) |
| Assign configurationdata from other object.
|
virtual bool | Equal (const Type &rOther) const |
| Test equality of configuration data.
|
virtual bool | operator== (const Type &rOther) const |
| Test equality of configuration data.
|
virtual bool | operator!= (const Type &rOther) const |
| Test equality of configuration data.
|
void | Write (const Type *pContext=0) const |
| Write configuration data to console.
|
void | Write (const std::string &pFileName, const std::string &rLabel="", const Type *pContext=0, std::ios::openmode openmode=std::ios::out|std::ios::trunc) const |
| Write configuration data to a file.
|
void | Write (const std::string &pFileName, std::ios::openmode openmode) const |
| Write configuration data to a file.
|
void | Write (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const |
| Write configuration data to TokenWriter.
|
virtual void | XWrite (const std::string &pFileName, const std::string &rLabel="", const Type *pContext=0) const |
| Write configuration data to an XML file.
|
void | XWrite (const Type *pContext=0) const |
| Write configuration data in XML format to concole Note: this write function uses the virtual function DoXWrite(), to be reimplemented by derived classes.
|
void | XWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const |
| Write configuration data in XML format to TokenWriter.
|
std::string | ToString (const std::string &rLabel="", const Type *pContext=0) const |
| Write configuration data to a string.
|
std::string | ToText (const std::string &rLabel="", const Type *pContext=0) const |
| Write configuration data to a formated string.
|
void | DWrite (const Type *pContext=0) const |
| Write configuration data to console, debugging format.
|
void | DWrite (const std::string &pFileName, const std::string &rLabel="", const Type *pContext=0, std::ios::openmode openmode=std::ios::out|std::ios::trunc) const |
| Write configuration data to a file, debugging format.
|
void | DWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const |
| Write configuration data in debug format to TokenWriter.
|
void | SWrite (TokenWriter &rTw) const |
| Write statistics comment to TokenWriter.
|
void | SWrite (void) const |
| Write statistics comment to console.
|
std::string | ToSText (void) const |
| Write statistics to a string.
|
void | Read (const std::string &rFileName, const std::string &rLabel="", const Type *pContext=0) |
| Read configuration data from file with label specified.
|
void | FromString (const std::string &rString, const std::string &rLabel="", const Type *pContext=0) |
| Read configuration data from a string.
|
void | Read (TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0) |
| Read configuration data from TokenReader with label sepcified.
|
| TaBaseSet (void) |
| Constructor.
|
| TaBaseSet (const TaBaseSet &rOtherSet) |
| Copy-constructor.
|
| TaBaseSet (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Copy-constructor.
|
| TaBaseSet (const std::string &rFilename, const std::string &rLabel="BaseSet") |
| Constructor from file.
|
virtual | ~TaBaseSet (void) |
| Virtual destructor.
|
virtual TaBaseSet & | Assign (const TaBaseSet &rSourceSet) |
| Faudes Type interface.
|
virtual TaBaseSet & | Assign (const TBaseSet< Idx, std::less< Idx > > &rSourceSet) |
| Copy from a TBaseSet with attributes, provided that they can be casted acciordingly.
|
virtual TaBaseSet & | AssignWithoutAttributes (const TBaseSet< Idx, std::less< Idx > > &rSourceSet) |
| Copy from a TBaseSet without attributes.
|
virtual TaBaseSet & | operator= (const TaBaseSet &rSource) |
| Faudes Type interface.
|
virtual TaBaseSet & | operator= (const TBaseSet< Idx, std::less< Idx > > &rSource) |
| Faudes Type interface (extension).
|
const Attr * | Attributep (void) const |
| Attribute typeinfo.
|
virtual Attr * | Attributep (const Idx &rElem) |
| Get attribute reference by element.
|
const Attr & | Attribute (void) const |
| Attribute typeinfo.
|
virtual const Attr & | Attribute (const Idx &rElem) const |
| Get attribute by element.
|
virtual void | Attribute (const Idx &rElem, const Type &attr) |
| Set attribute.
|
virtual void | Attribute (const Idx &rElem, const Attr &attr) |
| Set attribute.
|
virtual bool | AttributeTry (const Type &rAttr) const |
| Attribute typeinfo.
|
virtual void | AttributeTry (const Idx &rElem, const Type &attr) |
| Set attribute.
|
virtual Idx | AttributesSize (void) const |
| Get number of explicit (aka non-default) attributes.
|
virtual void | ClearAttributes (void) |
| Clear all attributes to default value.
|
virtual bool | EqualAttributes (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) const |
| Test whether attributes match with other set, Return true if attributes match for shared elements.
|
virtual bool | EqualAttributes (const TaBaseSet &rOtherSet) const |
| Test whether attributes match with other set, Return true if attributes match for shared elements.
|
virtual bool | operator== (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) const |
| Test set equality.
|
virtual void | Attributes (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Set attributes.
|
virtual void | Attributes (const TaBaseSet &rOtherSet) |
| Set attributes.
|
virtual void | ClrAttribute (const Idx &rElem) |
| Clear attribute to default value.
|
void | InsertSet (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Inserts elements of rOtherSet.
|
void | InsertSet (const TaBaseSet &rOtherSet) |
| Inserts elements of rOtherSet.
|
TBaseSet< Idx, std::less< Idx >
>::Iterator | Erase (const typename TBaseSet< Idx, std::less< Idx > >::Iterator &pos) |
| Erase element by iterator (incl attribute)
|
void | EraseSet (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Erase elements given by other set.
|
void | RestrictSet (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Restrict to specified subset.
|
void | SetUnion (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Set union.
|
void | SetIntersection (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) |
| Set intersection.
|
virtual void | Detach (void) const |
| Detach from extern storage (reimplement base)
|
| TBaseSet (void) |
| Constructor.
|
| TBaseSet (const TBaseSet &rOtherSet) |
| Copy-constructor.
|
| TBaseSet (const std::string &rFilename, const std::string &rLabel="BaseSet") |
| Constructor from file.
|
virtual | ~TBaseSet (void) |
| Virtual destructor.
|
const std::string & | Name (void) const |
| Return name of TBaseSet.
|
void | Name (const std::string &rName) |
| Set name of TBaseSet.
|
Idx | Size (void) const |
| Get Size of TBaseSet.
|
bool | Empty (void) const |
| Test whether if the TBaseSet is Empty.
|
Iterator | Begin (void) const |
| Iterator to the begin of set.
|
Iterator | End (void) const |
| Iterator to the end of set.
|
virtual void | EraseSet (const TBaseSet &rOtherSet) |
| Erase elements given by other set.
|
virtual void | RestrictSet (const TBaseSet &rOtherSet) |
| Restrict elements given by other set.
|
virtual Iterator | Inject (const Iterator &pos, const T &rElem) |
| Insert specified element.
|
virtual void | Inject (const T &rElem) |
| Insert specified element.
|
virtual void | InsertSet (const TBaseSet &rOtherSet) |
| Insert elements given by rOtherSet.
|
virtual void | SetUnion (const TBaseSet &rOtherSet) |
| Set Union, result is accumulated in this set.
|
virtual void | SetIntersection (const TBaseSet &rOtherSet) |
| Set Intersection, result is stored in this set.
|
bool | Exists (const T &rElem) const |
| Test existence of element.
|
Iterator | Find (const T &rElem) const |
| Find element and return iterator.
|
TBaseSet | operator+ (const TBaseSet &rOtherSet) const |
| Set union operator.
|
TBaseSet | operator- (const TBaseSet &rOtherSet) const |
| Set difference operator.
|
TBaseSet | operator* (const TBaseSet &rOtherSet) const |
| Set intersection operator.
|
bool | operator<= (const TBaseSet &rOtherSet) const |
| Test for subset.
|
bool | operator>= (const TBaseSet &rOtherSet) const |
| Test for superset.
|
bool | operator< (const TBaseSet &rOtherSet) const |
| Order for sorting containers of TBaseSet.
|
void | DValid (const std::string &rMessage="") const |
| Some validation of deferred copy mechanism (provoke abort)
|
virtual void | Lock (void) const |
| Detach and lock any further reallocation.
|
virtual TBaseSet & | AssignWithoutAttributes (const TBaseSet &rSourceSet) |
| Attribute access.
|
virtual void | Attributes (const TBaseSet &rOtherSet) |
| Attributes access.
|
virtual bool | EqualAttributes (const TBaseSet &rOtherSet) const |
| Attribute access.
|
virtual AttributeVoid * | Attributep (const T &rElem) |
| Attribute access.
|
virtual const AttributeVoid & | Attribute (const T &rElem) const |
| Attribute access.
|
virtual void | Attribute (const T &rElem, const Type &rAttr) |
| Attribute access.
|
virtual void | AttributeTry (const T &rElem, const Type &rAttr) |
| Attribute access.
|
virtual void | ClrAttribute (const T &rElem) |
| Attribute access.
|
virtual void | XElementTag (const std::string &rTag) |
| Configure the element name tag.
|
virtual const std::string & | TypeName (void) const |
| Get objects's type name.
|
virtual void | TypeName (const std::string &rType) |
| Overwrite faudes-type name.
|
Protected Member Functions |
virtual void | DoAssign (const TaIndexSet &rSource) |
| Assign my members.
|
virtual void | DoAssign (const IndexSet &rSource) |
| Assign my members.
|
virtual void | DoWrite (TokenWriter &tw, const std::string &rLabel="", const Type *pContext=0) const |
| Write to TokenWriter, see Type::Write for public wrappers.
|
virtual void | DoXWrite (TokenWriter &tw, const std::string &rLabel="", const Type *pContext=0) const |
| Write to TokenWriter, see Type::Write for public wrappers.
|
virtual void | DoRead (TokenReader &rTr, const std::string &rLabel="", const Type *pContext=0) |
| Read from TokenReader, see Type::Read for public wrappers.
|
virtual const std::string & | XElementTag (void) const |
| Get name of elements (used for XML IO)
|
virtual void | DoDWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const |
| Token output, debugging see Type::DWrite for public wrappers.
|
virtual void | DoSWrite (TokenWriter &rTw) const |
| Token output, see Type::SWrite for public wrappers.
|
virtual void | DoAssign (const TBaseSet &rSourceSet) |
| assign my members
|
virtual bool | DoEqual (const TBaseSet &rOtherSet) const |
| test equality
|
TBaseSet< Idx, std::less< Idx >
>::Iterator | ThisIterator (const typename std::set< Idx, std::less< Idx > >::const_iterator &sit) const |
| Convert STL iterator to API iterator.
|
void | RelinkClients (void) |
| Ensure that we do not host contents to anyone else.
|
void | AttachClient (TBaseSet *pRef) const |
| Record that we provide contents to some other BaseSet.
|
void | DetachClient (TBaseSet *pRef) const |
| Record that we stop providing data for some TBaseSet.
|
void | AttachIterator (Iterator *pFit) const |
| Record that an iterator refers to this TBaseSet.
|
void | DetachIterator (Iterator *pFit) const |
| Record that an iterator stops to refer to this TBaseSet.
|
virtual const TypeDefinition * | TypeDefinitionp (void) const |
| Reimplment from type to use chache.
|
void | FnctUnion (const TBaseSet &rOtherSet, TBaseSet &rRes) const |
| static empty STL client list
|
void | FnctDifference (const TBaseSet &rOtherSet, TBaseSet &rRes) const |
| Implementation of difference.
|
void | FnctIntersection (const TBaseSet &rOtherSet, TBaseSet &rRes) const |
| Implementation of intersection.
|
virtual void | DoAssign (const Type &rSrc) |
| Assign configuration data from other object.
|
virtual bool | DoEqual (const Type &rOther) const |
| Test equality of configuration data.
|
virtual Token | XBeginTag (const std::string &rLabel="", const std::string &rFallbackLabel="") const |
virtual void | DoAssign (const TaBaseSet &rSourceSet) |
| assignment from source with matching attributes
|
virtual bool | DoEqual (const TBaseSet< Idx, std::less< Idx > > &rOtherSet) const |
| test equality, ignore attributes
|
virtual void | DoAttributep (const Idx &rElem, const Type *pAttr) |
| set attribute in map (assume elem exists in set, NULL <=> set to default)
|
virtual void | DoAttributep (const Idx &rElem, const Attr *pAttr) |
| set attribute in map (assume elem exists in set, NULL <=> set to default)
|
virtual const Attr * | DoAttributep (const Idx &rElem) const |
| get attribute from map (return null if elem does not exist in map)
|
virtual Attr * | DoAttributep (const Idx &rElem) |
| get attribute from map (insert explicit default if elem does not exist in map)
|
virtual void | DoDWrite (TokenWriter &rTw, const std::string &rLabel="", const Type *pContext=0) const |
| Token output, debugging see Type::DWrite for public wrappers.
|
virtual void | DoSWrite (TokenWriter &rTw) const |
| Token output, see Type::SWrite for public wrappers.
|
virtual void | DoAssign (const TBaseSet &rSourceSet) |
| assign my members
|
virtual bool | DoEqual (const TBaseSet &rOtherSet) const |
| test equality
|
TBaseSet< T, Cmp >::Iterator | ThisIterator (const typename std::set< T, Cmp >::const_iterator &sit) const |
| Convert STL iterator to API iterator.
|
void | RelinkClients (void) |
| Ensure that we do not host contents to anyone else.
|
void | AttachClient (TBaseSet *pRef) const |
| Record that we provide contents to some other BaseSet.
|
void | DetachClient (TBaseSet *pRef) const |
| Record that we stop providing data for some TBaseSet.
|
void | AttachIterator (Iterator *pFit) const |
| Record that an iterator refers to this TBaseSet.
|
void | DetachIterator (Iterator *pFit) const |
| Record that an iterator stops to refer to this TBaseSet.
|
virtual const TypeDefinition * | TypeDefinitionp (void) const |
| Reimplment from type to use chache.
|
virtual const std::string & | XElementTag (void) const |
| Get name of elements (used for XML IO)
|
void | FnctUnion (const TBaseSet &rOtherSet, TBaseSet &rRes) const |
| static empty STL client list
|
void | FnctDifference (const TBaseSet &rOtherSet, TBaseSet &rRes) const |
| Implementation of difference.
|
void | FnctIntersection (const TBaseSet &rOtherSet, TBaseSet &rRes) const |
| Implementation of intersection.
|
Additional Inherited Members |
typedef std::set< Idx,
std::less< Idx > >::iterator | iterator |
| STL iterator, non-const version.
|
typedef std::set< Idx,
std::less< Idx >
>::const_iterator | const_iterator |
| STL iterator, const version.
|
typedef std::map< Idx,
AttributeVoid * >::iterator | aiterator |
| STL attribute iterator, non-const version.
|
typedef std::map< Idx,
AttributeVoid * >
::const_iterator | const_aiterator |
| STL attribute iterator, const version.
|
typedef TBaseSet< Idx,
std::less< Idx > >::iterator | iterator |
| use TBaseSet STL iterators
|
typedef TBaseSet< Idx,
std::less< Idx >
>::const_iterator | const_iterator |
| use TBaseSet STL iterators
|
typedef TBaseSet< Idx,
std::less< Idx > >::aiterator | aiterator |
| use TBaseSet STL iterators
|
typedef TBaseSet< Idx,
std::less< Idx >
>::const_aiterator | const_aiterator |
| use TBaseSet STL iterators
|
std::string | mMyName |
| Name of this BaseSet.
|
std::set< Idx, std::less< Idx > > * | pSet |
| Pointer on STL set to operate on.
|
std::set< Idx, std::less< Idx > > * | mpSet |
| STL set, if this object hosts data (else NULL)
|
std::map< Idx, AttributeVoid * > * | pAttributes |
| Pointer to attribute map to operate on.
|
std::map< Idx, AttributeVoid * > * | mpAttributes |
| Attribute map, if this object hosts data (else NULL).
|
TBaseSet< Idx, std::less< Idx > > * | pHostSet |
| Pointer on BaseSet that hosts our data (THIS if we host)
|
std::list< TBaseSet< Idx,
std::less< Idx >
> * >::iterator | mClientRecord |
| Iterator to the client list that hosts our data (maintained by host)
|
std::list< TBaseSet< Idx,
std::less< Idx > > * > * | mpClients |
| BaseSets, that use data hosted by us (NULL if we dont host data, emptyset if we host to ourself excl.)
|
bool | mDetached |
| Indicate "hosts data to myself only".
|
bool | mLocked |
| Indicate "dont re-allocate the STL set ever again".
|
std::set< Iterator * > | mIterators |
| Iterators that refer to this TBaseSet.
|
Attr * | mpDefAttribute |
| default attribute
|
static std::set< Idx,
std::less< Idx > > | msEmptySet |
| static empty STL set for default constructor
|
static std::map< Idx,
AttributeVoid * > | msEmptyAttributes |
| static empty STL map for default constructor
|
static std::set< T, Cmp > | msEmptySet = std::set<T,Cmp>() |
| static empty STL set for default constructor
|
static std::map< T,
AttributeVoid * > | msEmptyAttributes = std::map<T,AttributeVoid*>() |
| static empty STL map for default constructor
|
template<class Attr>
class faudes::TaIndexSet< Attr >
Set of indices with attributes.
A TaIndexSet<Attr> is a template derived from IndexSet, such that each set element has an Attribute of class Attr. The template parameter Attr must provide basic functions for file IO and must define a default value, see AttributeVoid and AttributeFlags for an examples. Attributes are maintained by an STL map to associate indices with attributes different from the default value. Thus, attributes with default value do not take up any memeory.
- Parameters
-
mAttributeMap | STL map of type std::map<Idx,Attr> to hold attributes |
The copy constructor copies attributes; the methods InsertSet(), EraseSet() and RestrictSet() maintain attributes; all other set operations derived from IndexSet either return a IndexSet (no attributes) or set all attributes to the dafault value. To set or get an attribute of an index that does not exist in the set is considered as an error and triggers an exception (id 60) when the macro FAUDES_CHECKED is defined.
The format for token IO is demonstrated by the following example of a set with name "MySet" consisting of indices 17, 25, 40, where index 25 has a nontrivial attribute attached:
<Myset>
17
25 <AValue> "Some Value" </AValue>
40
</MySet>
Note that attributes may be either subsections or tokens of type different from integer and string. This is to allow reading a token stream to a class with incompatible (or no) attributes.
Definition at line 316 of file cfl_indexset.h.