CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
Classes | Functions
ListGroups.cc File Reference
#include <string>
#include <vector>
#include <map>
#include <iostream>
#include <iomanip>
#include "boost/format.hpp"
#include "FWCore/Framework/interface/EDAnalyzer.h"
#include "FWCore/Framework/interface/Event.h"
#include "FWCore/Framework/interface/EventSetup.h"
#include "FWCore/Framework/interface/ESTransientHandle.h"
#include "FWCore/ParameterSet/interface/ParameterSet.h"
#include "FWCore/Utilities/interface/InputTag.h"
#include "FWCore/ParameterSet/interface/types.h"
#include "FWCore/MessageLogger/interface/MessageLogger.h"
#include "DataFormats/DetId/interface/DetId.h"
#include "DataFormats/Math/interface/Vector3D.h"
#include "DetectorDescription/Core/interface/DDFilteredView.h"
#include "DetectorDescription/Core/interface/DDCompactView.h"
#include "DetectorDescription/Core/interface/DDMaterial.h"
#include "Geometry/Records/interface/IdealGeometryRecord.h"
#include <TROOT.h>
#include <TProfile2D.h>
#include <TColor.h>
#include <TStyle.h>
#include <TCanvas.h>
#include <TFrame.h>
#include <TText.h>
#include <TLegend.h>
#include <TLegendEntry.h>
#include <TLine.h>
#include "MaterialAccountingGroup.h"
#include "TrackingMaterialPlotter.h"
#include "ListGroupsMaterialDifference.h"
#include "FWCore/PluginManager/interface/ModuleDef.h"
#include "FWCore/Framework/interface/MakerMacros.h"

Go to the source code of this file.

Classes

class  ListGroups
 

Functions

static double dddGetDouble (const std::string &s, DDFilteredView const &view)
 
static std::string dddGetString (const std::string &s, DDFilteredView const &view)
 
static bool dddGetStringRaw (const DDFilteredView &view, const std::string &name, std::string &value)
 
static std::ostream & operator<< (std::ostream &out, const math::XYZVector &v)
 
static const
edm::ParameterSetDescriptionFillerPluginFactory::PMaker
< edm::ParameterSetDescriptionFiller
< ListGroups > > 
s_filler__LINE__ ("ListGroups")
 
static const
edm::MakerPluginFactory::PMaker
< edm::WorkerMaker< ListGroups > > 
s_maker__LINE__ ("ListGroups")
 

Function Documentation

static double dddGetDouble ( const std::string &  s,
DDFilteredView const &  view 
)
inlinestatic

Definition at line 60 of file ListGroups.cc.

References dddGetStringRaw(), AlCaHLTBitMon_QueryRunRegistry::string, and relativeConstraints::value.

60  {
62  if (dddGetStringRaw(view, s, value))
63  return double(::atof(value.c_str()));
64  else
65  return NAN;
66 }
static bool dddGetStringRaw(const DDFilteredView &view, const std::string &name, std::string &value)
Definition: ListGroups.cc:41
static std::string dddGetString ( const std::string &  s,
DDFilteredView const &  view 
)
inlinestatic

Definition at line 69 of file ListGroups.cc.

References dddGetStringRaw(), AlCaHLTBitMon_QueryRunRegistry::string, and relativeConstraints::value.

Referenced by ListGroups::analyze().

69  {
71  if (dddGetStringRaw(view, s, value))
72  return value;
73  else
74  return std::string();
75 }
static bool dddGetStringRaw(const DDFilteredView &view, const std::string &name, std::string &value)
Definition: ListGroups.cc:41
static bool dddGetStringRaw ( const DDFilteredView view,
const std::string &  name,
std::string &  value 
)
static

Definition at line 41 of file ListGroups.cc.

References DDfetch(), Exception, mps_fire::result, DDFilteredView::specificsV(), and DDValue::strings().

Referenced by dddGetDouble(), and dddGetString().

41  {
42  std::vector<const DDsvalues_type *> result;
43  view.specificsV(result);
44  for (std::vector<const DDsvalues_type *>::iterator it = result.begin(); it != result.end(); ++it) {
46  if (DDfetch(*it, parameter)) {
47  if (parameter.strings().size() == 1) {
48  value = parameter.strings().front();
49  return true;
50  } else {
51  throw cms::Exception("Configuration")<< " ERROR: multiple " << name << " tags encountered";
52  return false;
53  }
54  }
55  }
56  return false;
57 }
bool DDfetch(const DDsvalues_type *, DDValue &)
helper for retrieving DDValues from DDsvalues_type *.
Definition: DDsvalues.cc:80
tuple result
Definition: mps_fire.py:84
void specificsV(std::vector< const DDsvalues_type * > &result) const
User specific data attached to the current node.
static std::ostream& operator<< ( std::ostream &  out,
const math::XYZVector v 
)
inlinestatic

Definition at line 78 of file ListGroups.cc.

78  {
79  out << std::fixed << std::setprecision(3);
80  return out << "(" << v.rho() << ", " << v.z() << ", " << v.phi() << ")";
81 }
static const edm::ParameterSetDescriptionFillerPluginFactory::PMaker<edm::ParameterSetDescriptionFiller< ListGroups > > s_filler__LINE__ ( "ListGroups"  )
static
static const edm::MakerPluginFactory ::PMaker< edm::WorkerMaker< ListGroups > > s_maker__LINE__ ( "ListGroups"  )
static