CMS 3D CMS Logo

Classes | Functions
DDValue.h File Reference
#include <atomic>
#include <iostream>
#include <memory>
#include <string>
#include <utility>
#include <vector>
#include "DetectorDescription/Core/interface/DDValuePair.h"
#include "tbb/concurrent_unordered_map.h"
#include "tbb/concurrent_vector.h"

Go to the source code of this file.

Classes

struct  DDValue::AtomicUInt
 
class  DDValue
 
struct  DDValue::StringHolder
 Only used internally. More...
 

Functions

std::ostream & operator<< (std::ostream &o, const DDValue &v)
 

Function Documentation

std::ostream& operator<< ( std::ostream &  o,
const DDValue v 
)

Definition at line 154 of file DDValue.cc.

References mps_fire::i, DDValue::isEvaluated(), DDValue::name(), connectstrParser::o, alignCSCRings::s, DDValue::size(), and DDValue::strings().

155 {
156  o << v.name() << " = ";
157  unsigned int i = 0;
158  if( v.isEvaluated())
159  {
160  for(; i < v.size(); ++i )
161  {
162  o << '(' << v[i].first << ',' << v[i].second << ") ";
163  }
164  }
165  else
166  {
167  const std::vector<std::string> & s = v.strings();
168  for(; i < v.size(); ++i )
169  {
170  o << s[i] << ' ';
171  }
172  }
173  return o;
174 }
const std::string & name(void) const
the name of the DDValue
Definition: DDValue.h:54
bool isEvaluated(void) const
true, if values are numerical evaluated; else false.
Definition: DDValue.cc:204
const std::vector< std::string > & strings() const
a reference to the std::string-valued values stored in the given instance of DDValue ...
Definition: DDValue.h:61
unsigned int size() const
the size of the stored value-pairs (std::string,double)
Definition: DDValue.h:68