CMS 3D CMS Logo

All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Modules Pages
DDEcalAPDAlgo.cc
Go to the documentation of this file.
1 #include <cmath>
2 #include <algorithm>
3 
9 #include <string>
10 #include <vector>
11 
18 
19 class DDEcalAPDAlgo : public DDAlgorithm {
20 public:
21  //Constructor and Destructor
22  DDEcalAPDAlgo();
23  ~DDEcalAPDAlgo() override;
24 
25  void initialize(const DDNumericArguments& nArgs,
26  const DDVectorArguments& vArgs,
27  const DDMapArguments& mArgs,
28  const DDStringArguments& sArgs,
29  const DDStringVectorArguments& vsArgs) override;
30  void execute(DDCompactView& cpv) override;
31 
32 protected:
33 private:
34  DDName ddname(const std::string& s) const;
35 
36  const std::vector<double>& vecCerPos() const { return m_vecCerPos; }
37  int apdHere() const { return m_APDHere; }
38 
39  DDName capName() const { return ddname(m_capName); }
40  DDMaterial capMat() const { return DDMaterial(ddname(m_capMat)); }
41  double capXSize() const { return m_capXSize; }
42  double capYSize() const { return m_capYSize; }
43  double capThick() const { return m_capThick; }
44 
45  DDName cerName() const { return ddname(m_CERName); }
46  DDMaterial cerMat() const { return DDMaterial(ddname(m_CERMat)); }
47  double cerXSize() const { return m_CERXSize; }
48  double cerYSize() const { return m_CERYSize; }
49  double cerThick() const { return m_CERThick; }
50 
51  DDName bsiName() const { return ddname(m_BSiName); }
52  DDMaterial bsiMat() const { return DDMaterial(ddname(m_BSiMat)); }
53  double bsiXSize() const { return m_BSiXSize; }
54  double bsiYSize() const { return m_BSiYSize; }
55  double bsiThick() const { return m_BSiThick; }
56 
57  DDName sglName() const { return ddname(m_SGLName); }
58  DDMaterial sglMat() const { return DDMaterial(ddname(m_SGLMat)); }
59  double sglThick() const { return m_SGLThick; }
60 
61  DDName atjName() const { return ddname(m_ATJName); }
62  DDMaterial atjMat() const { return DDMaterial(ddname(m_ATJMat)); }
63  double atjThick() const { return m_ATJThick; }
64 
65  DDName aglName() const { return ddname(m_AGLName); }
66  DDMaterial aglMat() const { return DDMaterial(ddname(m_AGLMat)); }
67  double aglThick() const { return m_AGLThick; }
68 
69  DDName andName() const { return ddname(m_ANDName); }
70  DDMaterial andMat() const { return DDMaterial(ddname(m_ANDMat)); }
71  double andThick() const { return m_ANDThick; }
72 
73  DDName apdName() const { return ddname(m_APDName); }
74  DDMaterial apdMat() const { return DDMaterial(ddname(m_APDMat)); }
75  double apdSide() const { return m_APDSide; }
76  double apdThick() const { return m_APDThick; }
77  double apdZ() const { return m_APDZ; }
78  double apdX1() const { return m_APDX1; }
79  double apdX2() const { return m_APDX2; }
80 
81 private:
82  std::string m_idNameSpace; //Namespace of this and ALL sub-parts
83 
84  std::vector<double> m_vecCerPos; // Translation
85  int m_APDHere;
86 
87  std::string m_capName; // Capsule
89  double m_capXSize; //
90  double m_capYSize; //
91  double m_capThick; //
92 
93  std::string m_CERName; // Ceramic
95  double m_CERXSize; //
96  double m_CERYSize; //
97  double m_CERThick; //
98 
99  std::string m_BSiName; // Bulk Silicon
101  double m_BSiXSize; //
102  double m_BSiYSize; //
103  double m_BSiThick; //
104 
107  double m_APDSide; //
108  double m_APDThick; //
109  double m_APDZ; //
110  double m_APDX1; //
111  double m_APDX2; //
112 
113  std::string m_ATJName; // After-The-Junction
115  double m_ATJThick; //
116 
117  std::string m_SGLName; // APD-Silicone glue
119  double m_SGLThick; //
120 
121  std::string m_AGLName; // APD-Glue
123  double m_AGLThick; //
124 
125  std::string m_ANDName; // APD-Non-Depleted
127  double m_ANDThick; //
128 };
129 
131  : m_vecCerPos(),
132  m_APDHere(0),
133 
134  m_capName(""),
135  m_capMat(""),
136  m_capXSize(0),
137  m_capYSize(0),
138  m_capThick(0),
139 
140  m_CERName(""),
141  m_CERMat(""),
142  m_CERXSize(0),
143  m_CERYSize(0),
144  m_CERThick(0),
145 
146  m_BSiName(""),
147  m_BSiMat(""),
148  m_BSiXSize(0),
149  m_BSiYSize(0),
150  m_BSiThick(0),
151 
152  m_APDName(""),
153  m_APDMat(""),
154  m_APDSide(0),
155  m_APDThick(0),
156  m_APDZ(0),
157  m_APDX1(0),
158  m_APDX2(0),
159 
160  m_ATJName(""),
161  m_ATJMat(""),
162  m_ATJThick(0),
163 
164  m_SGLName(""),
165  m_SGLMat(""),
166  m_SGLThick(0),
167 
168  m_AGLName(""),
169  m_AGLMat(""),
170  m_AGLThick(0),
171 
172  m_ANDName(""),
173  m_ANDMat(""),
174  m_ANDThick(0) {
175  LogDebug("EcalGeom") << "DDEcalAPDAlgo info: Creating an instance";
176 }
177 
179 
181  const DDVectorArguments& vArgs,
182  const DDMapArguments& mArgs,
183  const DDStringArguments& sArgs,
184  const DDStringVectorArguments& vsArgs) {
185  LogDebug("EcalGeom") << "DDEcalAPDAlgo info: Initialize";
186 
187  m_idNameSpace = parent().name().ns();
188 
189  m_vecCerPos = vArgs["CerPos"];
190  m_APDHere = (int)(nArgs["APDHere"]);
191 
192  m_capName = sArgs["CapName"];
193  m_capMat = sArgs["CapMat"];
194  m_capXSize = nArgs["CapXSize"];
195  m_capYSize = nArgs["CapYSize"];
196  m_capThick = nArgs["CapThick"];
197 
198  m_CERName = sArgs["CerName"];
199  m_CERMat = sArgs["CerMat"];
200  m_CERXSize = nArgs["CerXSize"];
201  m_CERYSize = nArgs["CerYSize"];
202  m_CERThick = nArgs["CerThick"];
203 
204  m_BSiName = sArgs["BSiName"];
205  m_BSiMat = sArgs["BSiMat"];
206  m_BSiXSize = nArgs["BSiXSize"];
207  m_BSiYSize = nArgs["BSiYSize"];
208  m_BSiThick = nArgs["BSiThick"];
209 
210  m_APDName = sArgs["APDName"];
211  m_APDMat = sArgs["APDMat"];
212  m_APDSide = nArgs["APDSide"];
213  m_APDThick = nArgs["APDThick"];
214  m_APDZ = nArgs["APDZ"];
215  m_APDX1 = nArgs["APDX1"];
216  m_APDX2 = nArgs["APDX2"];
217 
218  m_ATJName = sArgs["ATJName"];
219  m_ATJMat = sArgs["ATJMat"];
220  m_ATJThick = nArgs["ATJThick"];
221 
222  m_SGLName = sArgs["SGLName"];
223  m_SGLMat = sArgs["SGLMat"];
224  m_SGLThick = nArgs["SGLThick"];
225 
226  m_AGLName = sArgs["AGLName"];
227  m_AGLMat = sArgs["AGLMat"];
228  m_AGLThick = nArgs["AGLThick"];
229 
230  m_ANDName = sArgs["ANDName"];
231  m_ANDMat = sArgs["ANDMat"];
232  m_ANDThick = nArgs["ANDThick"];
233 
234  LogDebug("EcalGeom") << "DDEcalAPDAlgo info: end initialize";
235 }
236 
238 // DDEcalBarrelAlgo methods...
240 
242  LogDebug("EcalGeom") << "******** DDEcalAPDAlgo execute!" << std::endl;
243 
244  //++++++++++++++++++++++++++++++++++ APD ++++++++++++++++++++++++++++++++++
245  const DDName capDDName(capName().name());
246 
247  DDSolid capSolid(DDSolidFactory::box(capDDName, capXSize() / 2., capYSize() / 2., capThick() / 2.));
248 
249  const unsigned int copyCAP(1);
250 
251  const DDLogicalPart capLog(capDDName, capMat(), capSolid);
252 
253  const DDName sglDDName(sglName().name());
254 
255  DDSolid sglSolid(DDSolidFactory::box(sglDDName, capXSize() / 2., capYSize() / 2., sglThick() / 2.));
256 
257  const DDLogicalPart sglLog(sglDDName, sglMat(), sglSolid);
258 
259  const unsigned int copySGL(1);
260 
261  const DDName cerDDName(cerName().name());
262 
263  DDSolid cerSolid(DDSolidFactory::box(cerDDName, cerXSize() / 2., cerYSize() / 2., cerThick() / 2.));
264 
265  const DDLogicalPart cerLog(cerDDName, cerMat(), cerSolid);
266 
267  const unsigned int copyCER(1);
268 
269  const DDName bsiDDName(bsiName().name());
270 
271  DDSolid bsiSolid(DDSolidFactory::box(bsiDDName, bsiXSize() / 2., bsiYSize() / 2., bsiThick() / 2.));
272 
273  const DDLogicalPart bsiLog(bsiDDName, bsiMat(), bsiSolid);
274 
275  const unsigned int copyBSi(1);
276 
277  const DDName atjDDName(atjName().name());
278 
279  DDSolid atjSolid(DDSolidFactory::box(atjDDName, apdSide() / 2., apdSide() / 2., atjThick() / 2.));
280 
281  const DDLogicalPart atjLog(atjDDName, atjMat(), atjSolid);
282 
283  const unsigned int copyATJ(1);
284 
285  const DDName aglDDName(aglName().name());
286 
287  DDSolid aglSolid(DDSolidFactory::box(aglDDName, bsiXSize() / 2., bsiYSize() / 2., aglThick() / 2.));
288 
289  const DDLogicalPart aglLog(aglDDName, aglMat(), aglSolid);
290 
291  const unsigned int copyAGL(1);
292 
293  const DDName andDDName(andName().name());
294 
295  DDSolid andSolid(DDSolidFactory::box(andDDName, apdSide() / 2., apdSide() / 2., andThick() / 2.));
296 
297  const DDLogicalPart andLog(andDDName, andMat(), andSolid);
298 
299  const unsigned int copyAND(1);
300 
301  const DDName apdDDName(apdName().name());
302 
303  DDSolid apdSolid(DDSolidFactory::box(apdDDName, apdSide() / 2., apdSide() / 2., apdThick() / 2.));
304 
305  const DDLogicalPart apdLog(apdDDName, apdMat(), apdSolid);
306 
307  const unsigned int copyAPD(1);
308 
309  if (0 != apdHere()) {
310  cpv.position(aglLog, bsiLog, copyAGL, DDTranslation(0, 0, -aglThick() / 2. + bsiThick() / 2.), DDRotation());
311 
312  cpv.position(
313  andLog, bsiLog, copyAND, DDTranslation(0, 0, -andThick() / 2. - aglThick() + bsiThick() / 2.), DDRotation());
314 
315  cpv.position(apdLog,
316  bsiLog,
317  copyAPD,
318  DDTranslation(0, 0, -apdThick() / 2. - andThick() - aglThick() + bsiThick() / 2.),
319  DDRotation());
320 
321  cpv.position(atjLog,
322  bsiLog,
323  copyATJ,
324  DDTranslation(0, 0, -atjThick() / 2. - apdThick() - andThick() - aglThick() + bsiThick() / 2.),
325  DDRotation());
326 
327  cpv.position(bsiLog, cerLog, copyBSi, DDTranslation(0, 0, -bsiThick() / 2. + cerThick() / 2.), DDRotation());
328 
329  cpv.position(sglLog, capLog, copySGL, DDTranslation(0, 0, -sglThick() / 2. + capThick() / 2.), DDRotation());
330 
331  cpv.position(
332  cerLog, capLog, copyCER, DDTranslation(0, 0, -sglThick() - cerThick() / 2. + capThick() / 2.), DDRotation());
333 
334  cpv.position(
335  capLog, parent().name(), copyCAP, DDTranslation(vecCerPos()[0], vecCerPos()[1], vecCerPos()[2]), DDRotation());
336  }
337 
338  LogDebug("EcalGeom") << "******** DDEcalAPDAlgo test: end it...";
339 }
340 
342  const std::pair<std::string, std::string> temp(DDSplit(s));
343  if (temp.second.empty()) {
344  return DDName(temp.first, m_idNameSpace);
345  } else {
346  return DDName(temp.first, temp.second);
347  }
348 }
349 
351 
352 DEFINE_EDM_PLUGIN(DDAlgorithmFactory, DDEcalAPDAlgo, "ecal:DDEcalAPDAlgo");
DDEcalAPDAlgo::m_capThick
double m_capThick
Definition: DDEcalAPDAlgo.cc:91
DDEcalAPDAlgo::andName
DDName andName() const
Definition: DDEcalAPDAlgo.cc:69
DDEcalAPDAlgo::m_BSiYSize
double m_BSiYSize
Definition: DDEcalAPDAlgo.cc:102
DDEcalAPDAlgo::m_SGLName
std::string m_SGLName
Definition: DDEcalAPDAlgo.cc:117
DDEcalAPDAlgo::m_APDZ
double m_APDZ
Definition: DDEcalAPDAlgo.cc:109
DDEcalAPDAlgo::m_APDX1
double m_APDX1
Definition: DDEcalAPDAlgo.cc:110
DDCurrentNamespace.h
DDEcalAPDAlgo::m_BSiMat
std::string m_BSiMat
Definition: DDEcalAPDAlgo.cc:100
DDEcalAPDAlgo::sglThick
double sglThick() const
Definition: DDEcalAPDAlgo.cc:59
DDEcalAPDAlgo::aglMat
DDMaterial aglMat() const
Definition: DDEcalAPDAlgo.cc:66
DDTransform.h
MessageLogger.h
DDEcalAPDAlgo::m_ANDMat
std::string m_ANDMat
Definition: DDEcalAPDAlgo.cc:126
DDName
DDName is used to identify DDD entities uniquely.
Definition: DDName.h:15
DDEcalAPDAlgo::atjMat
DDMaterial atjMat() const
Definition: DDEcalAPDAlgo.cc:62
DDEcalAPDAlgo::atjName
DDName atjName() const
Definition: DDEcalAPDAlgo.cc:61
DDEcalAPDAlgo::sglName
DDName sglName() const
Definition: DDEcalAPDAlgo.cc:57
DDEcalAPDAlgo::m_capXSize
double m_capXSize
Definition: DDEcalAPDAlgo.cc:89
DDEcalAPDAlgo::cerMat
DDMaterial cerMat() const
Definition: DDEcalAPDAlgo.cc:46
DDEcalAPDAlgo::apdHere
int apdHere() const
Definition: DDEcalAPDAlgo.cc:37
DDSplit.h
DDEcalAPDAlgo::bsiXSize
double bsiXSize() const
Definition: DDEcalAPDAlgo.cc:53
DDEcalAPDAlgo::aglName
DDName aglName() const
Definition: DDEcalAPDAlgo.cc:65
DDEcalAPDAlgo::m_APDHere
int m_APDHere
Definition: DDEcalAPDAlgo.cc:85
DDEcalAPDAlgo::sglMat
DDMaterial sglMat() const
Definition: DDEcalAPDAlgo.cc:58
DDEcalAPDAlgo::m_AGLThick
double m_AGLThick
Definition: DDEcalAPDAlgo.cc:123
DDEcalAPDAlgo::m_capMat
std::string m_capMat
Definition: DDEcalAPDAlgo.cc:88
DDEcalAPDAlgo::andMat
DDMaterial andMat() const
Definition: DDEcalAPDAlgo.cc:70
DDEcalAPDAlgo::m_AGLMat
std::string m_AGLMat
Definition: DDEcalAPDAlgo.cc:122
groupFilesInBlocks.temp
list temp
Definition: groupFilesInBlocks.py:142
DDEcalAPDAlgo::m_APDMat
std::string m_APDMat
Definition: DDEcalAPDAlgo.cc:106
DDEcalAPDAlgo::execute
void execute(DDCompactView &cpv) override
Definition: DDEcalAPDAlgo.cc:241
DDEcalAPDAlgo::apdX1
double apdX1() const
Definition: DDEcalAPDAlgo.cc:78
DDEcalAPDAlgo::m_AGLName
std::string m_AGLName
Definition: DDEcalAPDAlgo.cc:121
DDEcalAPDAlgo::apdSide
double apdSide() const
Definition: DDEcalAPDAlgo.cc:75
DDEcalAPDAlgo::m_capYSize
double m_capYSize
Definition: DDEcalAPDAlgo.cc:90
DDEcalAPDAlgo::m_CERThick
double m_CERThick
Definition: DDEcalAPDAlgo.cc:97
DDEcalAPDAlgo::capYSize
double capYSize() const
Definition: DDEcalAPDAlgo.cc:42
DDEcalAPDAlgo::m_CERXSize
double m_CERXSize
Definition: DDEcalAPDAlgo.cc:95
DDEcalAPDAlgo::m_ATJName
std::string m_ATJName
Definition: DDEcalAPDAlgo.cc:113
alignCSCRings.s
s
Definition: alignCSCRings.py:92
DDEcalAPDAlgo::ddname
DDName ddname(const std::string &s) const
Definition: DDEcalAPDAlgo.cc:341
DDMaterial
DDMaterial is used to define and access material information.
Definition: DDMaterial.h:45
DDEcalAPDAlgo::m_BSiXSize
double m_BSiXSize
Definition: DDEcalAPDAlgo.cc:101
DDEcalAPDAlgo::capName
DDName capName() const
Definition: DDEcalAPDAlgo.cc:39
DDEcalAPDAlgo::m_APDThick
double m_APDThick
Definition: DDEcalAPDAlgo.cc:108
DDTranslation
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
DDCompactView
Compact representation of the geometrical detector hierarchy.
Definition: DDCompactView.h:81
DDEcalAPDAlgo::apdX2
double apdX2() const
Definition: DDEcalAPDAlgo.cc:79
DDEcalAPDAlgo::capThick
double capThick() const
Definition: DDEcalAPDAlgo.cc:43
DDEcalAPDAlgo::bsiName
DDName bsiName() const
Definition: DDEcalAPDAlgo.cc:51
DDEcalAPDAlgo::m_SGLMat
std::string m_SGLMat
Definition: DDEcalAPDAlgo.cc:118
DDEcalAPDAlgo::bsiMat
DDMaterial bsiMat() const
Definition: DDEcalAPDAlgo.cc:52
DDSolid.h
DDEcalAPDAlgo::atjThick
double atjThick() const
Definition: DDEcalAPDAlgo.cc:63
DDEcalAPDAlgo::cerXSize
double cerXSize() const
Definition: DDEcalAPDAlgo.cc:47
DEFINE_EDM_PLUGIN
#define DEFINE_EDM_PLUGIN(factory, type, name)
Definition: PluginFactory.h:124
AlCaHLTBitMon_QueryRunRegistry.string
string
Definition: AlCaHLTBitMon_QueryRunRegistry.py:256
LogDebug
#define LogDebug(id)
Definition: MessageLogger.h:223
DDEcalAPDAlgo::bsiThick
double bsiThick() const
Definition: DDEcalAPDAlgo.cc:55
DDEcalAPDAlgo::m_ATJMat
std::string m_ATJMat
Definition: DDEcalAPDAlgo.cc:114
DDEcalAPDAlgo::capMat
DDMaterial capMat() const
Definition: DDEcalAPDAlgo.cc:40
edmplugin::PluginFactory
Definition: PluginFactory.h:34
DDEcalAPDAlgo::m_CERName
std::string m_CERName
Definition: DDEcalAPDAlgo.cc:93
DDEcalAPDAlgo::andThick
double andThick() const
Definition: DDEcalAPDAlgo.cc:71
DDLogicalPart
A DDLogicalPart aggregates information concerning material, solid and sensitveness ....
Definition: DDLogicalPart.h:93
DDEcalAPDAlgo::m_idNameSpace
std::string m_idNameSpace
Definition: DDEcalAPDAlgo.cc:82
DDTypes.h
DDMaterial.h
DDEcalAPDAlgo::aglThick
double aglThick() const
Definition: DDEcalAPDAlgo.cc:67
createfilelist.int
int
Definition: createfilelist.py:10
DDEcalAPDAlgo::m_APDSide
double m_APDSide
Definition: DDEcalAPDAlgo.cc:107
DDTranslation.h
DDEcalAPDAlgo::~DDEcalAPDAlgo
~DDEcalAPDAlgo() override
Definition: DDEcalAPDAlgo.cc:178
DDEcalAPDAlgo::m_BSiThick
double m_BSiThick
Definition: DDEcalAPDAlgo.cc:103
DDEcalAPDAlgo::m_CERMat
std::string m_CERMat
Definition: DDEcalAPDAlgo.cc:94
DDLogicalPart.h
DDEcalAPDAlgo::m_APDName
std::string m_APDName
Definition: DDEcalAPDAlgo.cc:105
DDEcalAPDAlgo::m_ATJThick
double m_ATJThick
Definition: DDEcalAPDAlgo.cc:115
DDEcalAPDAlgo::bsiYSize
double bsiYSize() const
Definition: DDEcalAPDAlgo.cc:54
DDEcalAPDAlgo::vecCerPos
const std::vector< double > & vecCerPos() const
Definition: DDEcalAPDAlgo.cc:36
ReadMapType< double >
DDAlgorithm.h
DDEcalAPDAlgo::cerYSize
double cerYSize() const
Definition: DDEcalAPDAlgo.cc:48
DDEcalAPDAlgo::cerName
DDName cerName() const
Definition: DDEcalAPDAlgo.cc:45
DDEcalAPDAlgo::m_CERYSize
double m_CERYSize
Definition: DDEcalAPDAlgo.cc:96
DDName.h
DDEcalAPDAlgo::apdName
DDName apdName() const
Definition: DDEcalAPDAlgo.cc:73
DDEcalAPDAlgo::m_SGLThick
double m_SGLThick
Definition: DDEcalAPDAlgo.cc:119
DDEcalAPDAlgo::apdZ
double apdZ() const
Definition: DDEcalAPDAlgo.cc:77
Skims_PA_cff.name
name
Definition: Skims_PA_cff.py:17
DDSolid
A DDSolid represents the shape of a part.
Definition: DDSolid.h:39
DDEcalAPDAlgo::m_ANDName
std::string m_ANDName
Definition: DDEcalAPDAlgo.cc:125
DDEcalAPDAlgo::DDEcalAPDAlgo
DDEcalAPDAlgo()
Definition: DDEcalAPDAlgo.cc:130
DDEcalAPDAlgo
Definition: DDEcalAPDAlgo.cc:19
DDEcalAPDAlgo::cerThick
double cerThick() const
Definition: DDEcalAPDAlgo.cc:49
DDEcalAPDAlgo::apdThick
double apdThick() const
Definition: DDEcalAPDAlgo.cc:76
DDEcalAPDAlgo::m_APDX2
double m_APDX2
Definition: DDEcalAPDAlgo.cc:111
DDEcalAPDAlgo::apdMat
DDMaterial apdMat() const
Definition: DDEcalAPDAlgo.cc:74
DDSolidFactory::box
static DDSolid box(const DDName &name, double xHalf, double yHalf, double zHalf)
Creates a box with side length 2*xHalf, 2*yHalf, 2*zHalf.
Definition: DDSolid.cc:533
DDEcalAPDAlgo::initialize
void initialize(const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs) override
Definition: DDEcalAPDAlgo.cc:180
DDEcalAPDAlgo::m_vecCerPos
std::vector< double > m_vecCerPos
Definition: DDEcalAPDAlgo.cc:84
DDAlgorithmFactory.h
class-composition.parent
parent
Definition: class-composition.py:88
DDEcalAPDAlgo::m_BSiName
std::string m_BSiName
Definition: DDEcalAPDAlgo.cc:99
DDEcalAPDAlgo::m_ANDThick
double m_ANDThick
Definition: DDEcalAPDAlgo.cc:127
DDSplit
std::pair< std::string, std::string > DDSplit(const std::string &n)
split into (name,namespace), separator = ':'
Definition: DDSplit.cc:3
DDCompactView::position
void position(const DDLogicalPart &self, const DDLogicalPart &parent, const std::string &copyno, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=nullptr)
Definition: DDCompactView.cc:76
DDRotation
ROOT::Math::Rotation3D DDRotation
Definition: DDEcalEndcapAlgo.cc:18
DDEcalAPDAlgo::m_capName
std::string m_capName
Definition: DDEcalAPDAlgo.cc:87
DDEcalAPDAlgo::capXSize
double capXSize() const
Definition: DDEcalAPDAlgo.cc:41