CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
List of all members | Public Member Functions | Private Attributes
DDTBH4Algo Class Reference

#include <DDTBH4Algo.h>

Inheritance diagram for DDTBH4Algo:

Public Member Functions

double blRadius () const
 
double blZBeg () const
 
double blZEnd () const
 
double blZPiv () const
 
DDMaterial ddmat (const std::string &s) const
 
DDName ddname (const std::string &s) const
 
 DDTBH4Algo ()
 
void execute (DDCompactView &cpv)
 
DDMaterial fibCladMat () const
 
DDName fibCladName () const
 
double fibCladThick () const
 
DDMaterial fibFibMat () const
 
DDName fibFibName () const
 
double fibLength () const
 
double fibSide () const
 
DDMaterial holeMat () const
 
const std::string & idNameSpace () const
 
void initialize (const DDNumericArguments &nArgs, const DDVectorArguments &vArgs, const DDMapArguments &mArgs, const DDStringArguments &sArgs, const DDStringVectorArguments &vsArgs)
 
DDRotation myrot (const std::string &s, const CLHEP::HepRotation &r) const
 
DDMaterial trgMat () const
 
double trgVetoHoleRadius () const
 
DDMaterial vacMat () const
 
std::string vacName () const
 
const std::vector< double > & vecFibPhi () const
 
const std::vector< double > & vecFibXOff () const
 
const std::vector< double > & vecFibYOff () const
 
const std::vector< double > & vecFibZPiv () const
 
const std::vector< std::string > & vecTrgName () const
 
const std::vector< double > & vecTrgPhi () const
 
const std::vector< double > & vecTrgSide () const
 
const std::vector< double > & vecTrgThick () const
 
const std::vector< double > & vecTrgXOff () const
 
const std::vector< double > & vecTrgYOff () const
 
const std::vector< double > & vecTrgZPiv () const
 
const std::vector< double > & vecVacZBeg () const
 
const std::vector< double > & vecVacZEnd () const
 
const std::vector< std::string > & vecWinMat () const
 
const std::vector< double > & vecWinThick () const
 
const std::vector< double > & vecWinZBeg () const
 
std::string winName () const
 
virtual ~DDTBH4Algo ()
 

Private Attributes

double m_BLRadius
 
double m_BLZBeg
 
double m_BLZEnd
 
double m_BLZPiv
 
std::string m_FibCladMat
 
std::string m_FibCladName
 
double m_FibCladThick
 
std::string m_FibFibMat
 
std::string m_FibFibName
 
double m_FibLength
 
double m_FibSide
 
std::string m_HoleMat
 
std::string m_idNameSpace
 
std::string m_TrgMat
 
double m_TrgVetoHoleRadius
 
std::string m_VacMat
 
std::string m_VacName
 
std::vector< double > m_vecFibPhi
 
std::vector< double > m_vecFibXOff
 
std::vector< double > m_vecFibYOff
 
std::vector< double > m_vecFibZPiv
 
std::vector< std::string > m_vecTrgName
 
std::vector< double > m_vecTrgPhi
 
std::vector< double > m_vecTrgSide
 
std::vector< double > m_vecTrgThick
 
std::vector< double > m_vecTrgXOff
 
std::vector< double > m_vecTrgYOff
 
std::vector< double > m_vecTrgZPiv
 
std::vector< double > m_vecVacZBeg
 
std::vector< double > m_vecVacZEnd
 
std::vector< std::string > m_vecWinMat
 
std::vector< double > m_vecWinThick
 
std::vector< double > m_vecWinZBeg
 
std::string m_WinName
 

Detailed Description

Definition at line 15 of file DDTBH4Algo.h.

Constructor & Destructor Documentation

DDTBH4Algo::DDTBH4Algo ( )

Definition at line 18 of file DDTBH4Algo.cc.

References gather_cfg::cout, and LogDebug.

18  :
19  m_idNameSpace (""),
20  m_BLZBeg (0),
21  m_BLZEnd (0),
22  m_BLZPiv (0),
23  m_BLRadius (0),
24  m_VacName (""),
25  m_VacMat (""),
26  m_vecVacZBeg (),
27  m_vecVacZEnd (),
28  m_WinName (""),
29  m_vecWinMat (),
30  m_vecWinZBeg (),
31  m_vecWinThick(),
32  m_TrgMat (""),
33  m_HoleMat (""),
35  m_vecTrgName (),
36  m_vecTrgSide (),
37  m_vecTrgThick(),
38  m_vecTrgPhi (),
39  m_vecTrgXOff (),
40  m_vecTrgYOff (),
41  m_vecTrgZPiv (),
42  m_FibFibName (""),
43  m_FibCladName (""),
44  m_FibFibMat (""),
45  m_FibCladMat (""),
46  m_FibSide (0),
47  m_FibCladThick(0),
48  m_FibLength (0),
49  m_vecFibPhi (),
50  m_vecFibXOff (),
51  m_vecFibYOff (),
52  m_vecFibZPiv ()
53 
54 {
55  std::cout<< "creating an instance if DDTBH4Algo" << std::endl ;
56  LogDebug("EcalGeom") << "DDTBH4Algo test: Creating an instance";
57 }
#define LogDebug(id)
std::string m_idNameSpace
Definition: DDTBH4Algo.h:73
std::string m_HoleMat
Definition: DDTBH4Algo.h:89
std::vector< double > m_vecFibXOff
Definition: DDTBH4Algo.h:107
std::string m_TrgMat
Definition: DDTBH4Algo.h:88
std::string m_FibCladMat
Definition: DDTBH4Algo.h:102
std::vector< double > m_vecWinThick
Definition: DDTBH4Algo.h:86
std::vector< double > m_vecTrgYOff
Definition: DDTBH4Algo.h:96
std::string m_VacName
Definition: DDTBH4Algo.h:79
double m_FibLength
Definition: DDTBH4Algo.h:105
std::vector< double > m_vecTrgXOff
Definition: DDTBH4Algo.h:95
double m_TrgVetoHoleRadius
Definition: DDTBH4Algo.h:90
double m_FibSide
Definition: DDTBH4Algo.h:103
double m_FibCladThick
Definition: DDTBH4Algo.h:104
double m_BLZEnd
Definition: DDTBH4Algo.h:76
std::vector< double > m_vecWinZBeg
Definition: DDTBH4Algo.h:85
std::vector< double > m_vecFibZPiv
Definition: DDTBH4Algo.h:109
std::string m_FibCladName
Definition: DDTBH4Algo.h:100
std::vector< std::string > m_vecWinMat
Definition: DDTBH4Algo.h:84
double m_BLZPiv
Definition: DDTBH4Algo.h:77
std::vector< double > m_vecTrgThick
Definition: DDTBH4Algo.h:93
std::vector< double > m_vecVacZEnd
Definition: DDTBH4Algo.h:82
std::vector< double > m_vecTrgSide
Definition: DDTBH4Algo.h:92
std::vector< double > m_vecTrgPhi
Definition: DDTBH4Algo.h:94
std::vector< double > m_vecFibPhi
Definition: DDTBH4Algo.h:106
std::vector< std::string > m_vecTrgName
Definition: DDTBH4Algo.h:91
std::string m_VacMat
Definition: DDTBH4Algo.h:80
std::vector< double > m_vecTrgZPiv
Definition: DDTBH4Algo.h:97
std::string m_FibFibMat
Definition: DDTBH4Algo.h:101
double m_BLZBeg
Definition: DDTBH4Algo.h:75
std::vector< double > m_vecVacZBeg
Definition: DDTBH4Algo.h:81
tuple cout
Definition: gather_cfg.py:145
double m_BLRadius
Definition: DDTBH4Algo.h:78
std::vector< double > m_vecFibYOff
Definition: DDTBH4Algo.h:108
std::string m_WinName
Definition: DDTBH4Algo.h:83
std::string m_FibFibName
Definition: DDTBH4Algo.h:99
DDTBH4Algo::~DDTBH4Algo ( )
virtual

Definition at line 59 of file DDTBH4Algo.cc.

59 {}

Member Function Documentation

double DDTBH4Algo::blRadius ( ) const
inline

Definition at line 39 of file DDTBH4Algo.h.

References m_BLRadius.

Referenced by execute().

39 { return m_BLRadius ; }
double m_BLRadius
Definition: DDTBH4Algo.h:78
double DDTBH4Algo::blZBeg ( ) const
inline

Definition at line 36 of file DDTBH4Algo.h.

References m_BLZBeg.

Referenced by execute().

36 { return m_BLZBeg ; }
double m_BLZBeg
Definition: DDTBH4Algo.h:75
double DDTBH4Algo::blZEnd ( ) const
inline

Definition at line 37 of file DDTBH4Algo.h.

References m_BLZEnd.

Referenced by execute().

37 { return m_BLZEnd ; }
double m_BLZEnd
Definition: DDTBH4Algo.h:76
double DDTBH4Algo::blZPiv ( ) const
inline

Definition at line 38 of file DDTBH4Algo.h.

References m_BLZPiv.

Referenced by execute().

38 { return m_BLZPiv ; }
double m_BLZPiv
Definition: DDTBH4Algo.h:77
DDMaterial DDTBH4Algo::ddmat ( const std::string &  s) const

Definition at line 71 of file DDTBH4Algo.cc.

References ddname().

Referenced by execute(), fibCladMat(), fibFibMat(), holeMat(), trgMat(), and vacMat().

72 {
73  return DDMaterial( ddname( s ) ) ;
74 }
DDMaterial is used to define and access material information.
Definition: DDMaterial.h:41
DDName ddname(const std::string &s) const
Definition: DDTBH4Algo.cc:77
DDName DDTBH4Algo::ddname ( const std::string &  s) const

Definition at line 77 of file DDTBH4Algo.cc.

References DDSplit(), and groupFilesInBlocks::temp.

Referenced by ddmat(), execute(), fibCladName(), fibFibName(), and myrot().

78 {
79  const std::pair<std::string,std::string> temp ( DDSplit(s) ) ;
80  return DDName( temp.first,
81  temp.second ) ;
82 }
DDName is used to identify DDD entities uniquely.
Definition: DDName.h:14
std::pair< std::string, std::string > DDSplit(const std::string &n)
split into (name,namespace), separator = &#39;:&#39;
Definition: DDSplit.cc:4
void DDTBH4Algo::execute ( DDCompactView cpv)

Definition at line 130 of file DDTBH4Algo.cc.

References blRadius(), blZBeg(), blZEnd(), blZPiv(), DDSolidFactory::box(), ddmat(), ddname(), fibCladMat(), fibCladName(), fibCladThick(), fibFibMat(), fibFibName(), fibLength(), fibSide(), holeMat(), i, int_to_string(), j, myrot(), DDName::name(), mergeVDriftHistosByStation::name, DDCompactView::position(), trgMat(), trgVetoHoleRadius(), DDSolidFactory::tubs(), vacMat(), vacName(), vecFibPhi(), vecFibXOff(), vecFibYOff(), vecFibZPiv(), vecTrgName(), vecTrgPhi(), vecTrgSide(), vecTrgThick(), vecTrgXOff(), vecTrgYOff(), vecTrgZPiv(), vecVacZBeg(), vecVacZEnd(), vecWinMat(), vecWinThick(), vecWinZBeg(), and winName().

131 {
132  const unsigned int copyOne (1) ;
133 
134  const double halfZbl ( ( blZEnd() - blZBeg() )/2. ) ;
135  for( unsigned int i ( 0 ) ; i != vecVacZBeg().size() ; ++i )
136  {
137  DDName vacNameNm ( ddname( vacName() + int_to_string(i+1) ) ) ;
138  const double halfZvac ( ( vecVacZEnd()[i] - vecVacZBeg()[i] )/2. ) ;
139  DDSolid vTubeSolid ( DDSolidFactory::tubs( vacNameNm ,
140  halfZvac,
141  0,
142  blRadius(),
143  0*deg, 360*deg ) ) ;
144  const DDLogicalPart vacLog ( vacNameNm, vacMat(), vTubeSolid ) ;
145 
146  cpv.position( vacLog,
147  parent().name(),
148  1+i,
149  DDTranslation(0,0,
150  - halfZbl
151  + halfZvac
152  + vecVacZBeg()[i]
153  - blZBeg()),
154  DDRotation() ) ;
155  }
156 
157  for( unsigned int i ( 0 ) ; i != vecWinZBeg().size() ; ++i )
158  {
159  DDName wName ( ddname( winName() + int_to_string(i+1)) ) ;
160  DDSolid wTubeSolid ( DDSolidFactory::tubs( wName ,
161  vecWinThick()[i]/2.,
162  0,
163  blRadius(),
164  0*deg, 360*deg ) ) ;
165  const DDLogicalPart wLog ( wName, ddmat(vecWinMat()[i]), wTubeSolid ) ;
166 
167  const double off ( 0<vecWinZBeg()[i] ? vecWinZBeg()[i] :
168  fabs(vecWinZBeg()[i]) - vecWinThick()[i] ) ;
169 
170  cpv.position( wLog,
171  parent().name(),
172  1+i,
173  DDTranslation(0,0,
174  - halfZbl
175  + vecWinThick()[i]/2.
176  + off
177  - blZBeg() ),
178  DDRotation() ) ;
179  }
180 
181  for( unsigned int i ( 0 ) ; i != vecTrgName().size() ; ++i )
182  {
183  DDName tName ( ddname( vecTrgName()[i]) ) ;
184  DDSolid tSolid ( DDSolidFactory::box( tName ,
185  vecTrgSide()[ i]/2.,
186  vecTrgSide()[ i]/2.,
187  vecTrgThick()[i]/2. ) ) ;
188  const DDLogicalPart tLog ( tName, trgMat(), tSolid ) ;
189 
190  if( tName.name() == "VETO" )
191  {
192  DDName vName ( ddname( tName.name() + "Hole" ) ) ;
193  DDSolid vTubeSolid ( DDSolidFactory::tubs( vName ,
194  vecTrgThick()[i]/2.,
195  0,
197  0*deg, 360*deg ) ) ;
198  const DDLogicalPart vLog ( vName, holeMat(), vTubeSolid ) ;
199 
200  cpv.position( vLog,
201  tName,
202  copyOne,
203  DDTranslation(0,0,0),
204  DDRotation() ) ;
205  }
206 
207  cpv.position( tLog,
208  parent().name(),
209  copyOne,
211  vecTrgYOff()[i],
212  vecTrgZPiv()[i] - halfZbl + blZPiv() - blZBeg() ),
213  myrot( tName.name()+"Rot",
214  CLHEP::HepRotationZ( vecTrgPhi()[i]) ) ) ;
215  }
216 
217  DDName pName ( fibCladName() ) ;
218  const double planeWidth ( 32.5*fibSide() +
219  33.5*fibCladThick() ) ;
220  const double planeThick ( 2*fibSide() +
221  3*fibCladThick() ) ;
222  DDSolid pSolid ( DDSolidFactory::box( pName ,
223  planeWidth/2.,
224  fibLength()/2.,
225  planeThick/2. ) ) ;
226  const DDLogicalPart pLog ( pName, fibCladMat(), pSolid ) ;
227 
229  fibSide() /2.,
230  fibLength()/2.,
231  fibSide() /2.) ) ;
232 
233  const DDLogicalPart fLog ( fibFibName(), fibFibMat(), fSolid ) ;
234 
235  for( unsigned int j ( 0 ) ; j != 32 ; ++j )
236  {
237  const double xoff ( planeWidth/2. -
238  (1+ j)*fibCladThick() -
239  (1+ j)*fibSide() ) ;
240  const double zoff ( -planeThick/2 + fibCladThick() + fibSide()/2. ) ;
241  cpv.position( fLog,
242  pName,
243  1+j,
244  DDTranslation( xoff, 0, zoff ),
245  DDRotation() ) ;
246 
247  cpv.position( fLog,
248  pName,
249  33+j,
250  DDTranslation( xoff + (fibCladThick()+fibSide())/2.,0, -zoff),
251  DDRotation() ) ;
252  }
253  for( unsigned int i ( 0 ) ; i != vecFibZPiv().size() ; ++i )
254  {
255  cpv.position( pLog,
256  parent().name(),
257  1+i,
258  DDTranslation( vecFibXOff()[i] - 0.5*fibSide(),
259  vecFibYOff()[i],
260  vecFibZPiv()[i] - halfZbl + blZPiv() - blZBeg() ),
261  myrot( pName.name()+"Rot" + int_to_string(i),
262  CLHEP::HepRotationZ( vecFibPhi()[i]) ) ) ;
263  }
264 }
const std::vector< double > & vecFibPhi() const
Definition: DDTBH4Algo.h:67
DDMaterial fibFibMat() const
Definition: DDTBH4Algo.h:62
int i
Definition: DBlmapReader.cc:9
std::string vacName() const
Definition: DDTBH4Algo.h:40
const std::vector< double > & vecFibYOff() const
Definition: DDTBH4Algo.h:69
const std::vector< double > & vecTrgXOff() const
Definition: DDTBH4Algo.h:56
DDMaterial ddmat(const std::string &s) const
Definition: DDTBH4Algo.cc:71
DDMaterial holeMat() const
Definition: DDTBH4Algo.h:50
const std::vector< double > & vecWinZBeg() const
Definition: DDTBH4Algo.h:46
double fibCladThick() const
Definition: DDTBH4Algo.h:65
void position(const DDLogicalPart &self, const DDLogicalPart &parent, std::string copyno, const DDTranslation &trans, const DDRotation &rot, const DDDivision *div=NULL)
DDName is used to identify DDD entities uniquely.
Definition: DDName.h:14
double fibLength() const
Definition: DDTBH4Algo.h:66
DDRotation myrot(const std::string &s, const CLHEP::HepRotation &r) const
Definition: DDTBH4Algo.cc:63
const std::vector< double > & vecVacZBeg() const
Definition: DDTBH4Algo.h:42
double blZPiv() const
Definition: DDTBH4Algo.h:38
const std::vector< double > & vecTrgSide() const
Definition: DDTBH4Algo.h:53
DDMaterial vacMat() const
Definition: DDTBH4Algo.h:41
A DDSolid represents the shape of a part.
Definition: DDSolid.h:35
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DDTranslation
Definition: DDTranslation.h:7
Represents a uniquely identifyable rotation matrix.
Definition: DDTransform.h:66
DDMaterial fibCladMat() const
Definition: DDTBH4Algo.h:63
const std::vector< double > & vecWinThick() const
Definition: DDTBH4Algo.h:47
DDName fibFibName() const
Definition: DDTBH4Algo.h:60
double blRadius() const
Definition: DDTBH4Algo.h:39
std::string int_to_string(const int &in)
Definition: DDutils.cc:16
const std::vector< double > & vecFibXOff() const
Definition: DDTBH4Algo.h:68
const std::vector< std::string > & vecWinMat() const
Definition: DDTBH4Algo.h:45
const std::vector< double > & vecTrgPhi() const
Definition: DDTBH4Algo.h:55
DDMaterial trgMat() const
Definition: DDTBH4Algo.h:49
int j
Definition: DBlmapReader.cc:9
A DDLogicalPart aggregates information concerning material, solid and sensitveness ...
Definition: DDLogicalPart.h:88
const std::vector< double > & vecTrgZPiv() const
Definition: DDTBH4Algo.h:58
const std::vector< double > & vecFibZPiv() const
Definition: DDTBH4Algo.h:70
double blZBeg() const
Definition: DDTBH4Algo.h:36
static DDSolid tubs(const DDName &name, double zhalf, double rIn, double rOut, double startPhi, double deltaPhi)
Definition: DDSolid.cc:788
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:519
DDName ddname(const std::string &s) const
Definition: DDTBH4Algo.cc:77
std::string winName() const
Definition: DDTBH4Algo.h:44
const std::vector< double > & vecTrgThick() const
Definition: DDTBH4Algo.h:54
double blZEnd() const
Definition: DDTBH4Algo.h:37
double fibSide() const
Definition: DDTBH4Algo.h:64
const std::vector< std::string > & vecTrgName() const
Definition: DDTBH4Algo.h:52
double trgVetoHoleRadius() const
Definition: DDTBH4Algo.h:51
const std::vector< double > & vecVacZEnd() const
Definition: DDTBH4Algo.h:43
const std::vector< double > & vecTrgYOff() const
Definition: DDTBH4Algo.h:57
DDName fibCladName() const
Definition: DDTBH4Algo.h:61
DDMaterial DDTBH4Algo::fibCladMat ( ) const
inline

Definition at line 63 of file DDTBH4Algo.h.

References ddmat(), and m_FibCladMat.

Referenced by execute().

63 { return ddmat(m_FibCladMat) ; }
DDMaterial ddmat(const std::string &s) const
Definition: DDTBH4Algo.cc:71
std::string m_FibCladMat
Definition: DDTBH4Algo.h:102
DDName DDTBH4Algo::fibCladName ( ) const
inline

Definition at line 61 of file DDTBH4Algo.h.

References ddname(), and m_FibCladName.

Referenced by execute().

61 { return ddname(m_FibCladName) ; }
std::string m_FibCladName
Definition: DDTBH4Algo.h:100
DDName ddname(const std::string &s) const
Definition: DDTBH4Algo.cc:77
double DDTBH4Algo::fibCladThick ( ) const
inline

Definition at line 65 of file DDTBH4Algo.h.

References m_FibCladThick.

Referenced by execute().

65 { return m_FibCladThick; }
double m_FibCladThick
Definition: DDTBH4Algo.h:104
DDMaterial DDTBH4Algo::fibFibMat ( ) const
inline

Definition at line 62 of file DDTBH4Algo.h.

References ddmat(), and m_FibFibMat.

Referenced by execute().

62 { return ddmat(m_FibFibMat) ; }
DDMaterial ddmat(const std::string &s) const
Definition: DDTBH4Algo.cc:71
std::string m_FibFibMat
Definition: DDTBH4Algo.h:101
DDName DDTBH4Algo::fibFibName ( ) const
inline

Definition at line 60 of file DDTBH4Algo.h.

References ddname(), and m_FibFibName.

Referenced by execute().

60 { return ddname(m_FibFibName) ; }
DDName ddname(const std::string &s) const
Definition: DDTBH4Algo.cc:77
std::string m_FibFibName
Definition: DDTBH4Algo.h:99
double DDTBH4Algo::fibLength ( ) const
inline

Definition at line 66 of file DDTBH4Algo.h.

References m_FibLength.

Referenced by execute().

66 { return m_FibLength ; }
double m_FibLength
Definition: DDTBH4Algo.h:105
double DDTBH4Algo::fibSide ( ) const
inline

Definition at line 64 of file DDTBH4Algo.h.

References m_FibSide.

Referenced by execute().

64 { return m_FibSide ; }
double m_FibSide
Definition: DDTBH4Algo.h:103
DDMaterial DDTBH4Algo::holeMat ( ) const
inline

Definition at line 50 of file DDTBH4Algo.h.

References ddmat(), and m_HoleMat.

Referenced by execute().

50 { return ddmat(m_HoleMat) ; }
std::string m_HoleMat
Definition: DDTBH4Algo.h:89
DDMaterial ddmat(const std::string &s) const
Definition: DDTBH4Algo.cc:71
const std::string& DDTBH4Algo::idNameSpace ( ) const
inline

Definition at line 34 of file DDTBH4Algo.h.

References m_idNameSpace.

Referenced by myrot().

34 { return m_idNameSpace ; }
std::string m_idNameSpace
Definition: DDTBH4Algo.h:73
void DDTBH4Algo::initialize ( const DDNumericArguments nArgs,
const DDVectorArguments vArgs,
const DDMapArguments mArgs,
const DDStringArguments sArgs,
const DDStringVectorArguments vsArgs 
)

Definition at line 85 of file DDTBH4Algo.cc.

References m_BLRadius, m_BLZBeg, m_BLZEnd, m_BLZPiv, m_FibCladMat, m_FibCladName, m_FibCladThick, m_FibFibMat, m_FibFibName, m_FibLength, m_FibSide, m_HoleMat, m_idNameSpace, m_TrgMat, m_TrgVetoHoleRadius, m_VacMat, m_VacName, m_vecFibPhi, m_vecFibXOff, m_vecFibYOff, m_vecFibZPiv, m_vecTrgName, m_vecTrgPhi, m_vecTrgSide, m_vecTrgThick, m_vecTrgXOff, m_vecTrgYOff, m_vecTrgZPiv, m_vecVacZBeg, m_vecVacZEnd, m_vecWinMat, m_vecWinThick, m_vecWinZBeg, m_WinName, and DDCurrentNamespace::ns().

90 {
92  m_BLZBeg = nArgs["BLZBeg"];
93  m_BLZEnd = nArgs["BLZEnd"];
94  m_BLZPiv = nArgs["BLZPiv"];
95  m_BLRadius = nArgs["BLRadius"];
96  m_VacName = sArgs["VacName"];
97  m_VacMat = sArgs["VacMat"];
98  m_vecVacZBeg = vArgs["VacZBeg"];
99  m_vecVacZEnd = vArgs["VacZEnd"];
100 
101  m_WinName = sArgs["WinName"];
102  m_vecWinMat = vsArgs["WinMat"];
103  m_vecWinZBeg = vArgs["WinZBeg"];
104  m_vecWinThick = vArgs["WinThick"];
105 
106  m_TrgMat = sArgs["TrgMat"];
107  m_HoleMat = sArgs["HoleMat"];
108  m_TrgVetoHoleRadius = nArgs["TrgVetoHoleRadius"];
109  m_vecTrgName = vsArgs["TrgName"];
110  m_vecTrgSide = vArgs["TrgSide"];
111  m_vecTrgThick = vArgs["TrgThick"];
112  m_vecTrgPhi = vArgs["TrgPhi"];
113  m_vecTrgXOff = vArgs["TrgXOff"];
114  m_vecTrgYOff = vArgs["TrgYOff"];
115  m_vecTrgZPiv = vArgs["TrgZPiv"];
116 
117  m_FibFibName = sArgs["FibFibName"];
118  m_FibCladName = sArgs["FibCladName"];
119  m_FibFibMat = sArgs["FibFibMat"];
120  m_FibCladMat = sArgs["FibCladMat"];
121  m_FibSide = nArgs["FibSide"];
122  m_FibCladThick= nArgs["FibCladThick"];
123  m_FibLength = nArgs["FibLength"];
124  m_vecFibPhi = vArgs["FibPhi"];
125  m_vecFibXOff = vArgs["FibXOff"];
126  m_vecFibYOff = vArgs["FibYOff"];
127  m_vecFibZPiv = vArgs["FibZPiv"];
128 }
std::string m_idNameSpace
Definition: DDTBH4Algo.h:73
std::string m_HoleMat
Definition: DDTBH4Algo.h:89
std::vector< double > m_vecFibXOff
Definition: DDTBH4Algo.h:107
std::string m_TrgMat
Definition: DDTBH4Algo.h:88
std::string m_FibCladMat
Definition: DDTBH4Algo.h:102
std::vector< double > m_vecWinThick
Definition: DDTBH4Algo.h:86
static std::string & ns()
std::vector< double > m_vecTrgYOff
Definition: DDTBH4Algo.h:96
std::string m_VacName
Definition: DDTBH4Algo.h:79
double m_FibLength
Definition: DDTBH4Algo.h:105
std::vector< double > m_vecTrgXOff
Definition: DDTBH4Algo.h:95
double m_TrgVetoHoleRadius
Definition: DDTBH4Algo.h:90
double m_FibSide
Definition: DDTBH4Algo.h:103
double m_FibCladThick
Definition: DDTBH4Algo.h:104
double m_BLZEnd
Definition: DDTBH4Algo.h:76
std::vector< double > m_vecWinZBeg
Definition: DDTBH4Algo.h:85
std::vector< double > m_vecFibZPiv
Definition: DDTBH4Algo.h:109
std::string m_FibCladName
Definition: DDTBH4Algo.h:100
std::vector< std::string > m_vecWinMat
Definition: DDTBH4Algo.h:84
double m_BLZPiv
Definition: DDTBH4Algo.h:77
std::vector< double > m_vecTrgThick
Definition: DDTBH4Algo.h:93
std::vector< double > m_vecVacZEnd
Definition: DDTBH4Algo.h:82
std::vector< double > m_vecTrgSide
Definition: DDTBH4Algo.h:92
std::vector< double > m_vecTrgPhi
Definition: DDTBH4Algo.h:94
std::vector< double > m_vecFibPhi
Definition: DDTBH4Algo.h:106
std::vector< std::string > m_vecTrgName
Definition: DDTBH4Algo.h:91
std::string m_VacMat
Definition: DDTBH4Algo.h:80
std::vector< double > m_vecTrgZPiv
Definition: DDTBH4Algo.h:97
std::string m_FibFibMat
Definition: DDTBH4Algo.h:101
double m_BLZBeg
Definition: DDTBH4Algo.h:75
std::vector< double > m_vecVacZBeg
Definition: DDTBH4Algo.h:81
double m_BLRadius
Definition: DDTBH4Algo.h:78
std::vector< double > m_vecFibYOff
Definition: DDTBH4Algo.h:108
std::string m_WinName
Definition: DDTBH4Algo.h:83
std::string m_FibFibName
Definition: DDTBH4Algo.h:99
DDRotation DDTBH4Algo::myrot ( const std::string &  s,
const CLHEP::HepRotation &  r 
) const

Definition at line 63 of file DDTBH4Algo.cc.

References ddname(), DDrot(), and idNameSpace().

Referenced by execute().

65 {
66  return DDrot( ddname( idNameSpace() + ":" + s ), new DDRotationMatrix( r.xx(), r.xy(), r.xz(), r.yx(), r.yy(), r.yz(), r.zx(), r.zy(), r.zz() ) ) ;
67 }
const std::string & idNameSpace() const
Definition: DDTBH4Algo.h:34
DDRotation DDrot(const DDName &name, DDRotationMatrix *rot)
Definition of a uniquely identifiable rotation matrix named by DDName name.
Definition: DDRotation.cc:90
DDName ddname(const std::string &s) const
Definition: DDTBH4Algo.cc:77
ROOT::Math::Rotation3D DDRotationMatrix
A DDRotationMatrix is currently implemented with a ROOT Rotation3D.
DDMaterial DDTBH4Algo::trgMat ( ) const
inline

Definition at line 49 of file DDTBH4Algo.h.

References ddmat(), and m_TrgMat.

Referenced by execute().

49 { return ddmat(m_TrgMat) ; }
std::string m_TrgMat
Definition: DDTBH4Algo.h:88
DDMaterial ddmat(const std::string &s) const
Definition: DDTBH4Algo.cc:71
double DDTBH4Algo::trgVetoHoleRadius ( ) const
inline

Definition at line 51 of file DDTBH4Algo.h.

References m_TrgVetoHoleRadius.

Referenced by execute().

51 { return m_TrgVetoHoleRadius; }
double m_TrgVetoHoleRadius
Definition: DDTBH4Algo.h:90
DDMaterial DDTBH4Algo::vacMat ( ) const
inline

Definition at line 41 of file DDTBH4Algo.h.

References ddmat(), and m_VacMat.

Referenced by execute().

41 { return ddmat(m_VacMat); }
DDMaterial ddmat(const std::string &s) const
Definition: DDTBH4Algo.cc:71
std::string m_VacMat
Definition: DDTBH4Algo.h:80
std::string DDTBH4Algo::vacName ( ) const
inline

Definition at line 40 of file DDTBH4Algo.h.

References m_VacName.

Referenced by execute().

40 { return m_VacName ; }
std::string m_VacName
Definition: DDTBH4Algo.h:79
const std::vector<double>& DDTBH4Algo::vecFibPhi ( ) const
inline

Definition at line 67 of file DDTBH4Algo.h.

References m_vecFibPhi.

Referenced by execute().

67 { return m_vecFibPhi ; }
std::vector< double > m_vecFibPhi
Definition: DDTBH4Algo.h:106
const std::vector<double>& DDTBH4Algo::vecFibXOff ( ) const
inline

Definition at line 68 of file DDTBH4Algo.h.

References m_vecFibXOff.

Referenced by execute().

68 { return m_vecFibXOff ; }
std::vector< double > m_vecFibXOff
Definition: DDTBH4Algo.h:107
const std::vector<double>& DDTBH4Algo::vecFibYOff ( ) const
inline

Definition at line 69 of file DDTBH4Algo.h.

References m_vecFibYOff.

Referenced by execute().

69 { return m_vecFibYOff ; }
std::vector< double > m_vecFibYOff
Definition: DDTBH4Algo.h:108
const std::vector<double>& DDTBH4Algo::vecFibZPiv ( ) const
inline

Definition at line 70 of file DDTBH4Algo.h.

References m_vecFibZPiv.

Referenced by execute().

70 { return m_vecFibZPiv ; }
std::vector< double > m_vecFibZPiv
Definition: DDTBH4Algo.h:109
const std::vector<std::string>& DDTBH4Algo::vecTrgName ( ) const
inline

Definition at line 52 of file DDTBH4Algo.h.

References m_vecTrgName.

Referenced by execute().

52 { return m_vecTrgName ; }
std::vector< std::string > m_vecTrgName
Definition: DDTBH4Algo.h:91
const std::vector<double>& DDTBH4Algo::vecTrgPhi ( ) const
inline

Definition at line 55 of file DDTBH4Algo.h.

References m_vecTrgPhi.

Referenced by execute().

55 { return m_vecTrgPhi ; }
std::vector< double > m_vecTrgPhi
Definition: DDTBH4Algo.h:94
const std::vector<double>& DDTBH4Algo::vecTrgSide ( ) const
inline

Definition at line 53 of file DDTBH4Algo.h.

References m_vecTrgSide.

Referenced by execute().

53 { return m_vecTrgSide ; }
std::vector< double > m_vecTrgSide
Definition: DDTBH4Algo.h:92
const std::vector<double>& DDTBH4Algo::vecTrgThick ( ) const
inline

Definition at line 54 of file DDTBH4Algo.h.

References m_vecTrgThick.

Referenced by execute().

54 { return m_vecTrgThick; }
std::vector< double > m_vecTrgThick
Definition: DDTBH4Algo.h:93
const std::vector<double>& DDTBH4Algo::vecTrgXOff ( ) const
inline

Definition at line 56 of file DDTBH4Algo.h.

References m_vecTrgXOff.

Referenced by execute().

56 { return m_vecTrgXOff ; }
std::vector< double > m_vecTrgXOff
Definition: DDTBH4Algo.h:95
const std::vector<double>& DDTBH4Algo::vecTrgYOff ( ) const
inline

Definition at line 57 of file DDTBH4Algo.h.

References m_vecTrgYOff.

Referenced by execute().

57 { return m_vecTrgYOff ; }
std::vector< double > m_vecTrgYOff
Definition: DDTBH4Algo.h:96
const std::vector<double>& DDTBH4Algo::vecTrgZPiv ( ) const
inline

Definition at line 58 of file DDTBH4Algo.h.

References m_vecTrgZPiv.

Referenced by execute().

58 { return m_vecTrgZPiv ; }
std::vector< double > m_vecTrgZPiv
Definition: DDTBH4Algo.h:97
const std::vector<double>& DDTBH4Algo::vecVacZBeg ( ) const
inline

Definition at line 42 of file DDTBH4Algo.h.

References m_vecVacZBeg.

Referenced by execute().

42 { return m_vecVacZBeg ; }
std::vector< double > m_vecVacZBeg
Definition: DDTBH4Algo.h:81
const std::vector<double>& DDTBH4Algo::vecVacZEnd ( ) const
inline

Definition at line 43 of file DDTBH4Algo.h.

References m_vecVacZEnd.

Referenced by execute().

43 { return m_vecVacZEnd ; }
std::vector< double > m_vecVacZEnd
Definition: DDTBH4Algo.h:82
const std::vector<std::string>& DDTBH4Algo::vecWinMat ( ) const
inline

Definition at line 45 of file DDTBH4Algo.h.

References m_vecWinMat.

Referenced by execute().

45 { return m_vecWinMat ; }
std::vector< std::string > m_vecWinMat
Definition: DDTBH4Algo.h:84
const std::vector<double>& DDTBH4Algo::vecWinThick ( ) const
inline

Definition at line 47 of file DDTBH4Algo.h.

References m_vecWinThick.

Referenced by execute().

47 { return m_vecWinThick; }
std::vector< double > m_vecWinThick
Definition: DDTBH4Algo.h:86
const std::vector<double>& DDTBH4Algo::vecWinZBeg ( ) const
inline

Definition at line 46 of file DDTBH4Algo.h.

References m_vecWinZBeg.

Referenced by execute().

46 { return m_vecWinZBeg ; }
std::vector< double > m_vecWinZBeg
Definition: DDTBH4Algo.h:85
std::string DDTBH4Algo::winName ( ) const
inline

Definition at line 44 of file DDTBH4Algo.h.

References m_WinName.

Referenced by execute().

44 { return m_WinName ; }
std::string m_WinName
Definition: DDTBH4Algo.h:83

Member Data Documentation

double DDTBH4Algo::m_BLRadius
private

Definition at line 78 of file DDTBH4Algo.h.

Referenced by blRadius(), and initialize().

double DDTBH4Algo::m_BLZBeg
private

Definition at line 75 of file DDTBH4Algo.h.

Referenced by blZBeg(), and initialize().

double DDTBH4Algo::m_BLZEnd
private

Definition at line 76 of file DDTBH4Algo.h.

Referenced by blZEnd(), and initialize().

double DDTBH4Algo::m_BLZPiv
private

Definition at line 77 of file DDTBH4Algo.h.

Referenced by blZPiv(), and initialize().

std::string DDTBH4Algo::m_FibCladMat
private

Definition at line 102 of file DDTBH4Algo.h.

Referenced by fibCladMat(), and initialize().

std::string DDTBH4Algo::m_FibCladName
private

Definition at line 100 of file DDTBH4Algo.h.

Referenced by fibCladName(), and initialize().

double DDTBH4Algo::m_FibCladThick
private

Definition at line 104 of file DDTBH4Algo.h.

Referenced by fibCladThick(), and initialize().

std::string DDTBH4Algo::m_FibFibMat
private

Definition at line 101 of file DDTBH4Algo.h.

Referenced by fibFibMat(), and initialize().

std::string DDTBH4Algo::m_FibFibName
private

Definition at line 99 of file DDTBH4Algo.h.

Referenced by fibFibName(), and initialize().

double DDTBH4Algo::m_FibLength
private

Definition at line 105 of file DDTBH4Algo.h.

Referenced by fibLength(), and initialize().

double DDTBH4Algo::m_FibSide
private

Definition at line 103 of file DDTBH4Algo.h.

Referenced by fibSide(), and initialize().

std::string DDTBH4Algo::m_HoleMat
private

Definition at line 89 of file DDTBH4Algo.h.

Referenced by holeMat(), and initialize().

std::string DDTBH4Algo::m_idNameSpace
private

Definition at line 73 of file DDTBH4Algo.h.

Referenced by idNameSpace(), and initialize().

std::string DDTBH4Algo::m_TrgMat
private

Definition at line 88 of file DDTBH4Algo.h.

Referenced by initialize(), and trgMat().

double DDTBH4Algo::m_TrgVetoHoleRadius
private

Definition at line 90 of file DDTBH4Algo.h.

Referenced by initialize(), and trgVetoHoleRadius().

std::string DDTBH4Algo::m_VacMat
private

Definition at line 80 of file DDTBH4Algo.h.

Referenced by initialize(), and vacMat().

std::string DDTBH4Algo::m_VacName
private

Definition at line 79 of file DDTBH4Algo.h.

Referenced by initialize(), and vacName().

std::vector<double> DDTBH4Algo::m_vecFibPhi
private

Definition at line 106 of file DDTBH4Algo.h.

Referenced by initialize(), and vecFibPhi().

std::vector<double> DDTBH4Algo::m_vecFibXOff
private

Definition at line 107 of file DDTBH4Algo.h.

Referenced by initialize(), and vecFibXOff().

std::vector<double> DDTBH4Algo::m_vecFibYOff
private

Definition at line 108 of file DDTBH4Algo.h.

Referenced by initialize(), and vecFibYOff().

std::vector<double> DDTBH4Algo::m_vecFibZPiv
private

Definition at line 109 of file DDTBH4Algo.h.

Referenced by initialize(), and vecFibZPiv().

std::vector<std::string> DDTBH4Algo::m_vecTrgName
private

Definition at line 91 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgName().

std::vector<double> DDTBH4Algo::m_vecTrgPhi
private

Definition at line 94 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgPhi().

std::vector<double> DDTBH4Algo::m_vecTrgSide
private

Definition at line 92 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgSide().

std::vector<double> DDTBH4Algo::m_vecTrgThick
private

Definition at line 93 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgThick().

std::vector<double> DDTBH4Algo::m_vecTrgXOff
private

Definition at line 95 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgXOff().

std::vector<double> DDTBH4Algo::m_vecTrgYOff
private

Definition at line 96 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgYOff().

std::vector<double> DDTBH4Algo::m_vecTrgZPiv
private

Definition at line 97 of file DDTBH4Algo.h.

Referenced by initialize(), and vecTrgZPiv().

std::vector<double> DDTBH4Algo::m_vecVacZBeg
private

Definition at line 81 of file DDTBH4Algo.h.

Referenced by initialize(), and vecVacZBeg().

std::vector<double> DDTBH4Algo::m_vecVacZEnd
private

Definition at line 82 of file DDTBH4Algo.h.

Referenced by initialize(), and vecVacZEnd().

std::vector<std::string> DDTBH4Algo::m_vecWinMat
private

Definition at line 84 of file DDTBH4Algo.h.

Referenced by initialize(), and vecWinMat().

std::vector<double> DDTBH4Algo::m_vecWinThick
private

Definition at line 86 of file DDTBH4Algo.h.

Referenced by initialize(), and vecWinThick().

std::vector<double> DDTBH4Algo::m_vecWinZBeg
private

Definition at line 85 of file DDTBH4Algo.h.

Referenced by initialize(), and vecWinZBeg().

std::string DDTBH4Algo::m_WinName
private

Definition at line 83 of file DDTBH4Algo.h.

Referenced by initialize(), and winName().