10 #ifndef DtConfigurationCollection_H_
11 #define DtConfigurationCollection_H_
16 #include <boost/serialization/split_member.hpp>
17 #include <boost/serialization/set.hpp>
22 template <
typename ConfigurationType>
28 typedef typename Configurations::iterator
iterator;
43 if(
this == ©)
return *
this;
55 friend class boost::serialization::access;
60 template<
class Archive>
61 void serialize(Archive & ar,
const unsigned int version)
68 virtual ConfigurationType&
add(
const ConfigurationType& orig)
72 for(;curIter != endIter;++curIter)
74 if((*curIter)->name() == orig.name())
76 DtTHROW_NEW(DtInvalidInput,
"A configuration with that name"
77 "already exists in the collection.");
81 ConfigurationType* newConfig =
new ConfigurationType(orig);
129 typename Configurations::const_iterator curIter = configs.begin();
130 typename Configurations::const_iterator endIter = configs.end();
131 for(;curIter != endIter;++curIter)
142 for(;curIter != endIter;++curIter)
155 for(;curIter != endIter;++curIter)
157 if((*curIter)->name() == name)
171 for(;curIter != endIter;++curIter)
173 if((*curIter)->name() == name)
const_iterator begin() const
Definition: DtConfigurationCollection.h:114
virtual ~DtConfigurationCollection()
Definition: DtConfigurationCollection.h:49
Configurations::iterator iterator
Definition: DtConfigurationCollection.h:28
const Configurations & configurations() const
Get the channels for this window.
Definition: DtConfigurationCollection.h:121
std::vector< ConfigurationType * > Configurations
Definition: DtConfigurationCollection.h:26
DtConfigurationCollection()
Definition: DtConfigurationCollection.h:31
virtual const ConfigurationType * findConfiguration(const std::string &name) const
Return the configuration associated with name or null if one doesn't exist.
Definition: DtConfigurationCollection.h:167
void serialize(Archive &ar, const unsigned int version)
When the class Archive corresponds to an output archive, the & operator is defined similar to <<...
Definition: DtConfigurationCollection.h:61
virtual void destroyConfiguration(ConfigurationType *config)
Destroys a Channel configuration. Now the pointer must be a member of the channel Configuration...
Definition: DtConfigurationCollection.h:99
DtConfigurationCollection & operator=(const DtConfigurationCollection ©)
Definition: DtConfigurationCollection.h:41
void destroyAll()
Destroys all channel configurations.
Definition: DtConfigurationCollection.h:138
A collection of configurations.
Definition: DtConfigurationCollection.h:23
iterator begin()
Definition: DtConfigurationCollection.h:113
virtual ConfigurationType * findConfiguration(const std::string &name)
Return the configuration associated with name or null if one doesn't exist.
Definition: DtConfigurationCollection.h:151
iterator end()
Definition: DtConfigurationCollection.h:116
size_t size() const
Definition: DtConfigurationCollection.h:111
Configurations::const_iterator const_iterator
Definition: DtConfigurationCollection.h:29
void addConfigurations(const Configurations &configs)
Add several configurations.
Definition: DtConfigurationCollection.h:127
#define DT_SERIALIZE_MEMBER(NAME)
Serialize a Member whose name starts with 'my' If your member does not have that name, use Dt_SERIALIZE.
Definition: DtSerialize.h:158
virtual ConfigurationType & add(const ConfigurationType &orig)
Add a Channel configuration.
Definition: DtConfigurationCollection.h:68
DtConfigurationCollection(const DtConfigurationCollection ©)
Definition: DtConfigurationCollection.h:35
Configurations myConfigurations
Definition: DtConfigurationCollection.h:183
const_iterator end() const
Definition: DtConfigurationCollection.h:117