CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Groups Pages
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"
#include "FWCore/Utilities/interface/zero_allocator.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 121 of file DDValue.cc.

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

121  {
122  o << v.name() << " = ";
123  unsigned int i = 0;
124  if (v.isEvaluated()) {
125  for (; i < v.size(); ++i) {
126  o << '(' << v[i].first << ',' << v[i].second << ") ";
127  }
128  } else {
129  const std::vector<std::string>& s = v.strings();
130  for (; i < v.size(); ++i) {
131  o << s[i] << ' ';
132  }
133  }
134  return o;
135 }
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:152
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