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 151 of file DDValue.cc.

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

152 {
153  o << v.name() << " = ";
154  unsigned int i = 0;
155  if( v.isEvaluated())
156  {
157  for(; i < v.size(); ++i )
158  {
159  o << '(' << v[i].first << ',' << v[i].second << ") ";
160  }
161  }
162  else
163  {
164  const std::vector<std::string> & s = v.strings();
165  for(; i < v.size(); ++i )
166  {
167  o << s[i] << ' ';
168  }
169  }
170  return o;
171 }
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:201
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