12 template <
class KeyType,
class ValueType>
16 typedef std::pair<KeyType, ValueType>
Pair;
73 template <
class K,
class V>
80 template <
class K,
class V>
83 typename std::map<K, V>::const_iterator it =
keyToValue_.find(key);
91 template <
class K,
class V>
93 typedef std::vector<const DDsvalues_type *> sv_type;
95 typename std::map<K, V>::const_iterator it =
keyToValue_.find(key);
97 sv_type
sv = it->second.specifics();
98 sv_type::const_iterator it = sv.begin();
100 for (; it != sv.end(); ++it) {
110 template <
class K,
class V>
112 typedef std::vector<const DDsvalues_type *> sv_type;
114 typename std::map<K, V>::const_iterator it =
keyToValue_.find(key);
116 sv_type
sv = it->second.specifics();
117 sv_type::const_iterator svIt = sv.begin();
118 sv_type::const_iterator svEd = sv.end();
120 for (; svIt != svEd; ++svIt) {
131 template <
class K,
class V>
133 typedef std::vector<const DDsvalues_type *> sv_type;
135 sv_type
sv = val.specifics();
136 sv_type::const_iterator svIt = sv.begin();
137 sv_type::const_iterator svEd = sv.end();
139 for (; svIt != svEd; ++svIt) {
149 template <
class K,
class V>
153 unsigned int pos)
const {
154 typedef std::vector<const DDsvalues_type *> sv_type;
156 sv_type
sv = val.specifics();
157 sv_type::const_iterator svIt = sv.begin();
158 sv_type::const_iterator svEd = sv.end();
160 for (; svIt != svEd; ++svIt) {
171 template <
class K,
class V>
175 unsigned int pos)
const {
176 typedef std::vector<const DDsvalues_type *> sv_type;
178 typename std::map<K, V>::const_iterator it =
keyToValue_.find(key);
180 sv_type
sv = it->second.specifics();
181 sv_type::const_iterator svIt = sv.begin();
182 sv_type::const_iterator svEd = sv.end();
185 for (; svIt != svEd; ++svIt) {
198 template <
class K,
class V>
200 std::vector<std::pair<K, V> >
result;
201 typedef std::vector<const DDsvalues_type *> sv_type;
202 typename std::map<V, K>::const_iterator it =
valueToKey_.begin();
203 typename std::map<V, K>::const_iterator ed =
valueToKey_.end();
206 for (; it != ed; ++it) {
207 sv_type
sv = it->first.specifics();
209 sv_type::const_iterator svIt = sv.begin();
210 sv_type::const_iterator svEd = sv.end();
212 for (; svIt != svEd; ++svIt) {
215 const std::vector<std::string> &
s = v.
strings();
219 result.emplace_back(std::make_pair(it->second, it->first));
230 template <
class K,
class V>
232 std::vector<std::pair<K, V> >
result;
233 typedef std::vector<const DDsvalues_type *> sv_type;
234 typename std::map<V, K>::const_iterator it =
valueToKey_.begin();
235 typename std::map<V, K>::const_iterator ed =
valueToKey_.end();
238 for (; it != ed; ++it) {
239 sv_type
sv = it->first.specifics();
241 sv_type::const_iterator svIt = sv.begin();
242 sv_type::const_iterator svEd = sv.end();
244 for (; svIt != svEd; ++svIt) {
247 const std::vector<double> &
s = v.
doubles();
251 result.emplace_back(std::make_pair(it->second, it->first));
262 template <
class K,
class V>
264 std::vector<std::pair<K, V> >
result;
265 typedef std::vector<const DDsvalues_type *> sv_type;
266 typename std::map<V, K>::const_iterator it =
valueToKey_.begin();
267 typename std::map<V, K>::const_iterator ed =
valueToKey_.end();
270 for (; it != ed; ++it) {
271 sv_type
sv = it->first.specifics();
273 sv_type::const_iterator svIt = sv.begin();
274 sv_type::const_iterator svEd = sv.end();
276 for (; svIt != svEd; ++svIt) {
278 result.emplace_back(std::make_pair(it->second, it->first));
unsigned int noSpecifics(const KeyType &key, const std::string &name) const
fetch a key given a value
std::pair< KeyType, ValueType > Pair
usefull typedef
const std::vector< double > & doubles() const
a reference to the double-valued values stored in the given instance of DDValue
bool value(const KeyType &key, ValueType &result)
removes a key-value pair
unsigned int toDouble(const std::string &name, const KeyType &key, double &value, unsigned int pos=0) const
returns the number specific parameters named 'name' and the corrsponding double
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
std::map< KeyType, ValueType > keyToValue_
ValueType
Type of the value held by a Value object.
std::vector< Pair > Vector
usefull typedef
const std::vector< std::string > & strings() const
a reference to the std::string-valued values stored in the given instance of DDValue ...
unsigned int toString(const std::string &name, const KeyType &key, std::string &value, unsigned int pos=0) const
same as toDouble but for std::string-valued values of named parameters
unsigned int size() const
the size of the stored value-pairs (std::string,double)
void insert(const KeyType &, const ValueType &)
insert a new key-value-pair
Vector all(const std::string &name, const std::string &value) const
get all std::mapped instances which have a specific 'name' with value 'value'
std::multimap< ValueType, KeyType > valueToKey_