CMS 3D CMS Logo

List of all members | Public Types | Public Member Functions | Private Attributes
GeometricDet Class Reference

#include <GeometricDet.h>

Public Types

typedef std::vector< GeometricDet const * > ConstGeometricDetContainer
 
typedef DDExpandedView::nav_type DDnav_type
 
enum  GDEnumType {
  unknown =100, Tracker =0, PixelBarrel =1, PixelEndCap =2,
  TIB =3, TID =4, TOB =5, TEC =6,
  layer =8, wheel =9, strng =10, rod =11,
  petal =12, ring =13, ladder =14, mergedDet =15,
  DetUnit =16, disk =17, panel =18, PixelPhase1Barrel =101,
  PixelPhase1EndCap =102, PixelPhase1Disk =117, OTPhase2EndCap =204, OTPhase2Barrel =205,
  OTPhase2Layer =208, OTPhase2Stack =215, PixelPhase2Barrel =201, PixelPhase2EndCap =202,
  OTPhase2Wheel =209, PixelPhase2FullDisk =217, PixelPhase2ReducedDisk =227, PixelPhase2TDRDisk =237
}
 
typedef std::vector< DDExpandedNodeGeoHistory
 
typedef std::vector< GeometricDet * > GeometricDetContainer
 
typedef enum GeometricDet::GDEnumType GeometricEnumType
 
typedef DDExpandedView::nav_type nav_type
 
typedef DDExpandedView::NavRange NavRange
 
typedef Surface::PositionType Position
 
typedef Surface::RotationType Rotation
 

Public Member Functions

void addComponent (GeometricDet *)
 
void addComponents (GeometricDetContainer const &cont)
 
void addComponents (ConstGeometricDetContainer const &cont)
 
std::unique_ptr< Boundsbounds () const
 
void clearComponents ()
 
GeometricDetcomponent (size_t index)
 
ConstGeometricDetContainercomponents ()
 
ConstGeometricDetContainer const & components () const
 
ConstGeometricDetContainer deepComponents () const
 
void deepComponents (ConstGeometricDetContainer &cont) const
 
void deleteComponents ()
 
DetId geographicalID () const
 
DetId geographicalId () const
 
 GeometricDet (DDFilteredView *fv, GeometricEnumType dd)
 
 GeometricDet (const PGeometricDet::Item &onePGD, GeometricEnumType dd)
 
bool isLeaf () const
 
DDName const & name () const
 
NavRange navpos () const
 
NavRange navRange () const
 
nav_type const & navType () const
 
std::vector< double > const & params () const
 
double phi () const
 
double pixROCCols () const
 
double pixROCRows () const
 
double pixROCx () const
 
double pixROCy () const
 
Position positionBounds () const
 
double radLength () const
 
double rho () const
 
DDRotationMatrix const & rotation () const
 
Rotation rotationBounds () const
 
void setGeographicalID (DetId id)
 
DDSolidShape const & shape () const
 
double siliconAPVNum () const
 
bool stereo () const
 
DDTranslation const & translation () const
 
GeometricEnumType type () const
 
double xi () const
 
 ~GeometricDet ()
 

Private Attributes

ConstGeometricDetContainer _container
 
nav_type _ddd
 
DDName _ddname
 
DetId _geographicalID
 
std::vector< double > _params
 
double _phi
 
double _pixROCCols
 
double _pixROCRows
 
double _pixROCx
 
double _pixROCy
 
double _radLength
 
double _rho
 
DDRotationMatrix _rot
 
DDSolidShape _shape
 
double _siliconAPVNum
 
bool _stereo
 
DDTranslation _trans
 
GeometricEnumType _type
 
double _xi
 

Detailed Description

Composite class GeometricDet. A composite can contain other composites, and so on; You can understand what you are looking at via enum.

Definition at line 30 of file GeometricDet.h.

Member Typedef Documentation

Definition at line 36 of file GeometricDet.h.

Definition at line 33 of file GeometricDet.h.

Definition at line 43 of file GeometricDet.h.

Definition at line 37 of file GeometricDet.h.

Definition at line 44 of file GeometricDet.h.

Definition at line 34 of file GeometricDet.h.

Definition at line 46 of file GeometricDet.h.

Definition at line 47 of file GeometricDet.h.

Member Enumeration Documentation

Enumerator
unknown 
Tracker 
PixelBarrel 
PixelEndCap 
TIB 
TID 
TOB 
TEC 
layer 
wheel 
strng 
rod 
petal 
ring 
ladder 
mergedDet 
DetUnit 
disk 
panel 
PixelPhase1Barrel 
PixelPhase1EndCap 
PixelPhase1Disk 
OTPhase2EndCap 
OTPhase2Barrel 
OTPhase2Layer 
OTPhase2Stack 
PixelPhase2Barrel 
PixelPhase2EndCap 
OTPhase2Wheel 
PixelPhase2FullDisk 
PixelPhase2ReducedDisk 
PixelPhase2TDRDisk 

Definition at line 52 of file GeometricDet.h.

52  {unknown=100, Tracker=0, PixelBarrel=1, PixelEndCap=2,
53  TIB=3, TID=4, TOB=5, TEC=6,
54  layer=8, wheel=9, strng=10, rod=11, petal=12, ring=13,
55  ladder=14, mergedDet=15, DetUnit=16, disk=17, panel=18,
enum GeometricDet::GDEnumType GeometricEnumType

Constructor & Destructor Documentation

GeometricDet::GeometricDet ( DDFilteredView fv,
GeometricEnumType  dd 
)

Constructors to be used when looping over DDD

Definition at line 150 of file GeometricDet.cc.

References _ddd, DDFilteredView::navPos(), and nt.

Referenced by ~GeometricDet().

150  :
151  //
152  // Set by hand the _ddd
153  //
154  _trans(fv->translation()),
155  _phi(_trans.Phi()),
156  _rho(_trans.Rho()),
157  _rot(fv->rotation()),
158  _shape(((fv->logicalPart()).solid()).shape()),
159  _ddname(((fv->logicalPart()).ddname()).name()),
160  _type(type),
161  _params(((fv->logicalPart()).solid()).parameters()),
162  // want this :) _ddd(fv->navPos().begin(),fv->navPos().end()),
163 #ifdef GEOMTRICDETDEBUG
164  _parents(fv->geoHistory().begin(),fv->geoHistory().end()),
165  _volume(((fv->logicalPart()).solid()).volume()),
166  _density(((fv->logicalPart()).material()).density()),
167  // _weight = (fv->logicalPart()).weight();
168  _weight(_density * ( _volume / 1000.)), // volume mm3->cm3
169  _copy(fv->copyno()),
170  _material(((fv->logicalPart()).material()).name().fullname()),
171 #endif
172  _radLength(getDouble("TrackerRadLength",*fv)),
173  _xi(getDouble("TrackerXi",*fv)),
174  _pixROCRows(getDouble("PixelROCRows",*fv)),
175  _pixROCCols(getDouble("PixelROCCols",*fv)),
176  _pixROCx(getDouble("PixelROC_X",*fv)),
177  _pixROCy(getDouble("PixelROC_Y",*fv)),
178  _stereo(getString("TrackerStereoDetectors",*fv)==strue),
179  _siliconAPVNum(getDouble("SiliconAPVNumber",*fv))
180 #ifdef GEOMTRICDETDEBUG
181  ,
182  _fromDD(true)
183 #endif
184 {
185  //std::cout << "GeometricDet3" << std::endl;
186  // workaround instead of this at initialization _ddd(fv->navPos().begin(),fv->navPos().end()),
187  const DDFilteredView::nav_type& nt = fv->navPos();
188  _ddd = nav_type(nt.begin(), nt.end());
189 }
type
Definition: HCALResponse.h:21
double _pixROCCols
Definition: GeometricDet.h:328
const DDLogicalPart & logicalPart() const
The logical-part of the current node in the filtered-view.
DDName _ddname
Definition: GeometricDet.h:312
double _pixROCRows
Definition: GeometricDet.h:327
double _pixROCy
Definition: GeometricDet.h:330
const DDRotationMatrix & rotation() const
The absolute rotation of the current node.
DDSolidShape const & shape() const
Definition: GeometricDet.h:138
double _siliconAPVNum
Definition: GeometricDet.h:332
DDTranslation _trans
Definition: GeometricDet.h:306
nav_type navPos() const
return the stack of sibling numbers
GeometricEnumType _type
Definition: GeometricDet.h:313
const DDGeoHistory & geoHistory() const
The list of ancestors up to the root-node of the current node.
double _pixROCx
Definition: GeometricDet.h:329
nav_type _ddd
Definition: GeometricDet.h:311
int copyno() const
Copy number associated with the current node.
DDName const & name() const
Definition: GeometricDet.h:146
const std::string fullname() const
Definition: DDName.h:53
std::vector< double > _params
Definition: GeometricDet.h:314
int nt
Definition: AMPTWrapper.h:32
DDSolidShape _shape
Definition: GeometricDet.h:310
double _radLength
Definition: GeometricDet.h:325
DDExpandedView::nav_type nav_type
DDRotationMatrix _rot
Definition: GeometricDet.h:309
DDExpandedView::nav_type nav_type
Definition: GeometricDet.h:44
const DDTranslation & translation() const
The absolute translation of the current node.
GeometricDet::GeometricDet ( const PGeometricDet::Item onePGD,
GeometricEnumType  dd 
)

Definition at line 193 of file GeometricDet.cc.

References _ddd, PGeometricDet::Item::_nt0, PGeometricDet::Item::_nt1, PGeometricDet::Item::_nt10, PGeometricDet::Item::_nt2, PGeometricDet::Item::_nt3, PGeometricDet::Item::_nt4, PGeometricDet::Item::_nt5, PGeometricDet::Item::_nt6, PGeometricDet::Item::_nt7, PGeometricDet::Item::_nt8, PGeometricDet::Item::_nt9, PGeometricDet::Item::_numnt, _params, PGeometricDet::Item::_params0, PGeometricDet::Item::_params1, PGeometricDet::Item::_params10, PGeometricDet::Item::_params2, PGeometricDet::Item::_params3, PGeometricDet::Item::_params4, PGeometricDet::Item::_params5, PGeometricDet::Item::_params6, PGeometricDet::Item::_params7, PGeometricDet::Item::_params8, PGeometricDet::Item::_params9, and PGeometricDet::Item::_shape.

193  :
194  _trans(onePGD._x, onePGD._y, onePGD._z),
195  _phi(onePGD._phi), //_trans.Phi()),
196  _rho(onePGD._rho), //_trans.Rho()),
197  _rot(onePGD._a11, onePGD._a12, onePGD._a13,
198  onePGD._a21, onePGD._a22, onePGD._a23,
199  onePGD._a31, onePGD._a32, onePGD._a33),
201  _ddd(),
202  _ddname(onePGD._name, onePGD._ns),//, "fromdb");
203  _type(type),
204  _params(),
206 #ifdef GEOMTRICDETDEBUG
207  _parents(), // will remain empty... hate wasting the space but want all methods to work.
208  _volume(onePGD._volume),
209  _density(onePGD._density),
210  _weight(onePGD._weight),
211  _copy(onePGD._copy),
212  _material(onePGD._material),
213 #endif
214  _radLength(onePGD._radLength),
215  _xi(onePGD._xi),
216  _pixROCRows(onePGD._pixROCRows),
217  _pixROCCols(onePGD._pixROCCols),
218  _pixROCx(onePGD._pixROCx),
219  _pixROCy(onePGD._pixROCy),
220  _stereo(onePGD._stereo),
222 #ifdef GEOMTRICDETDEBUG
223  , // mind the tricky comma is needed.
224  _fromDD(false)
225 #endif
226 {
227  //std::cout << "GeometricDet4" << std::endl;
228 
229  if(onePGD._shape==1||onePGD._shape==3){ //The parms vector is neede only in the case of box or trap shape
230  _params.reserve(11);
231  _params.push_back(onePGD._params0);
232  _params.push_back(onePGD._params1);
233  _params.push_back(onePGD._params2);
234  _params.push_back(onePGD._params3);
235  _params.push_back(onePGD._params4);
236  _params.push_back(onePGD._params5);
237  _params.push_back(onePGD._params6);
238  _params.push_back(onePGD._params7);
239  _params.push_back(onePGD._params8);
240  _params.push_back(onePGD._params9);
241  _params.push_back(onePGD._params10);
242  }
243 
244  _ddd.reserve(onePGD._numnt);
245  _ddd.push_back(onePGD._nt0);
246  _ddd.push_back(onePGD._nt1);
247  _ddd.push_back(onePGD._nt2);
248  _ddd.push_back(onePGD._nt3);
249  if ( onePGD._numnt > 4 ) {
250  _ddd.push_back(onePGD._nt4);
251  if ( onePGD._numnt > 5 ) {
252  _ddd.push_back(onePGD._nt5);
253  if ( onePGD._numnt > 6 ) {
254  _ddd.push_back(onePGD._nt6);
255  if ( onePGD._numnt > 7 ) {
256  _ddd.push_back(onePGD._nt7);
257  if ( onePGD._numnt > 8 ) {
258  _ddd.push_back(onePGD._nt8);
259  if ( onePGD._numnt > 9 ) {
260  _ddd.push_back(onePGD._nt9);
261  if ( onePGD._numnt > 10 ) {
262  _ddd.push_back(onePGD._nt10);
263  }}}}}}
264  }
265 
266 }
type
Definition: HCALResponse.h:21
double _pixROCCols
Definition: GeometricDet.h:328
DDName _ddname
Definition: GeometricDet.h:312
double _pixROCRows
Definition: GeometricDet.h:327
double _pixROCy
Definition: GeometricDet.h:330
double _siliconAPVNum
Definition: GeometricDet.h:332
DDTranslation _trans
Definition: GeometricDet.h:306
GeometricEnumType _type
Definition: GeometricDet.h:313
double _pixROCx
Definition: GeometricDet.h:329
nav_type _ddd
Definition: GeometricDet.h:311
std::vector< double > _params
Definition: GeometricDet.h:314
static DDSolidShape index(const int &ind)
Definition: DDSolidShapes.h:40
DetId _geographicalID
Definition: GeometricDet.h:316
DDSolidShape _shape
Definition: GeometricDet.h:310
double _radLength
Definition: GeometricDet.h:325
DDRotationMatrix _rot
Definition: GeometricDet.h:309
GeometricDet::~GeometricDet ( )

Member Function Documentation

void GeometricDet::addComponent ( GeometricDet det)
void GeometricDet::addComponents ( GeometricDetContainer const &  cont)
void GeometricDet::addComponents ( ConstGeometricDetContainer const &  cont)

Definition at line 296 of file GeometricDet.cc.

References _container, and popcon2dropbox::copy().

296  {
297  //std::cout << "addComponents" << std::endl;
298  _container.reserve(_container.size()+cont.size());
299  std::copy(cont.begin(), cont.end(), back_inserter(_container));
300 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:305
std::unique_ptr< Bounds > GeometricDet::bounds ( ) const

bounds() returns the Bounds.

Definition at line 338 of file GeometricDet.cc.

References _params, _shape, and TrackerShapeToBounds::buildBounds().

Referenced by TrackerGeometry::fillTestMap(), geographicalId(), and PlaneBuilderFromGeometricDet::plane().

338  {
339  //std::cout << "bounds" << std::endl;
340  const std::vector<double>& par = _params;
341  TrackerShapeToBounds shapeToBounds;
342  return std::unique_ptr<Bounds>(shapeToBounds.buildBounds(_shape,par));
343 }
Bounds * buildBounds(const DDSolidShape &, const std::vector< double > &) const
std::vector< double > _params
Definition: GeometricDet.h:314
DDSolidShape _shape
Definition: GeometricDet.h:310
void GeometricDet::clearComponents ( )
inline
GeometricDet* GeometricDet::component ( size_t  index)
inline
ConstGeometricDetContainer& GeometricDet::components ( )
inline

components() returns explicit components; please note that in case of a leaf GeometricDet it returns nothing (an empty vector)

Definition at line 176 of file GeometricDet.h.

References _container.

Referenced by GeometricDetLoader::beginRun(), PGeometricDetBuilder::beginRun(), Phase2OTBarrelLayerBuilder::build(), TIDRingBuilder::build(), Phase2OTBarrelRodBuilder::build(), PixelBarrelLayerBuilder::build(), PixelRodBuilder::build(), TECLayerBuilder::build(), TECPetalBuilder::build(), TECWedgeBuilder::build(), TIBLayerBuilder::build(), TIDLayerBuilder::build(), TOBLayerBuilder::build(), TOBRodBuilder::build(), Phase2EndcapLayerBuilder::build(), Phase2EndcapRingBuilder::build(), TrackerGeomBuilderFromGeometricDet::build(), GeometricSearchTrackerBuilder::build(), PixelBladeBuilder< T >::build(), PixelForwardLayerBuilder< T1, T2 >::build(), CmsTrackerDebugNavigator::iterate(), CmsTrackerDetIdBuilder::iterate(), CmsTrackerLevelBuilder::ExtractPhiModule::operator()(), TrackerGeometricDetExtraESModule::produce(), CmsTrackerRingBuilder::sortNS(), CmsTrackerLayerBuilder::sortNS(), CmsTrackerPixelPhase2RingBuilder::sortNS(), CmsTrackerOTRingBuilder::sortNS(), CmsTrackerRodBuilder::sortNS(), CmsTrackerStringBuilder::sortNS(), CmsTrackerOTLayerBuilder::sortNS(), CmsTrackerPanelBuilder::sortNS(), CmsTrackerPetalBuilder::sortNS(), CmsTrackerLadderBuilder::sortNS(), CmsTrackerWheelBuilder::sortNS(), CmsTrackerPixelPhase2DiskBuilder::sortNS(), CmsTrackerDiskBuilder::sortNS(), CmsTrackerPhase1DiskBuilder::sortNS(), CmsTrackerPhase2TPDiskBuilder::sortNS(), CmsTrackerOTDiscBuilder::sortNS(), CmsTrackerSubStrctBuilder::sortNS(), CmsTrackerPixelPhase2EndcapBuilder::sortNS(), CmsTrackerPixelPhase1EndcapBuilder::sortNS(), CmsTrackerBuilder::sortNS(), and TrackerGeometry::TrackerGeometry().

176  {
177  //std::cout << "components1" <<std::endl;
178  return _container;
179  }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:305
ConstGeometricDetContainer const& GeometricDet::components ( ) const
inline

Definition at line 180 of file GeometricDet.h.

References _container, deepComponents(), and parents.

180  {
181  //std::cout<<"const components2 "<<std::endl;
182  return _container;
183  }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:305
GeometricDet::ConstGeometricDetContainer GeometricDet::deepComponents ( ) const

deepComponents() returns all the components below; please note that if the current GeometricDet is a leaf, it returns it!

Definition at line 268 of file GeometricDet.cc.

Referenced by GeometricDetLoader::beginRun(), PGeometricDetBuilder::beginRun(), TrackerGeomBuilderFromGeometricDet::build(), TouchableToHistory::buildAll(), TrackerMapDDDtoID::buildAllStep2(), components(), CmsTrackerLevelBuilder::ExtractPhiGluedModule::operator()(), CmsTrackerLevelBuilder::LessR_module::operator()(), TrackerGeometricDetExtraESModule::produce(), and TrackerGeometry::TrackerGeometry().

268  {
269  //
270  // iterate on all the components ;)
271  //
272  //std::cout << "deepComponents1" << std::endl;
274  deepComponents(_temp);
275  return _temp;
276 }
std::vector< GeometricDet const * > ConstGeometricDetContainer
Definition: GeometricDet.h:36
ConstGeometricDetContainer deepComponents() const
void GeometricDet::deepComponents ( ConstGeometricDetContainer cont) const

Definition at line 278 of file GeometricDet.cc.

References _container, and isLeaf().

278  {
279  //std::cout << "const deepComponents2" << std::endl;
280  if (isLeaf())
281  cont.push_back(this);
282  else
283  std::for_each(_container.begin(),_container.end(),
284  [&](const GeometricDet* iDet) {
285  iDet->deepComponents(cont);
286  }
287  );
288 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:305
bool isLeaf() const
Definition: GeometricDet.h:109
void GeometricDet::deleteComponents ( )

deleteComponents() explicitly deletes the daughters

Definition at line 313 of file GeometricDet.cc.

References _container.

Referenced by clearComponents(), and ~GeometricDet().

313  {
314  //std::cout << "deleteComponents" << std::endl;
315  std::for_each(_container.begin(),_container.end(),Deleter());
316  _container.clear();
317 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:305
DetId GeometricDet::geographicalID ( ) const
inline

geometricalID() returns the ID associated to the GeometricDet.

Definition at line 208 of file GeometricDet.h.

References _geographicalID.

Referenced by CmsTrackerDetIdBuilder::buildId(), CmsTrackerDetIdBuilder::iterate(), GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

208  {
209  //std::cout<<"geographicalID"<<std::endl;
210  return _geographicalID;
211  }
DetId _geographicalID
Definition: GeometricDet.h:316
DetId GeometricDet::geographicalId ( ) const
inline
bool GeometricDet::isLeaf ( ) const
inline

Definition at line 109 of file GeometricDet.h.

References _container.

Referenced by deepComponents().

109  {
110  //std::cout <<"isLeaf() ==" <<_container.empty()<<std::endl;
111  return _container.empty();
112  }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:305
DDName const& GeometricDet::name ( void  ) const
inline
NavRange GeometricDet::navpos ( ) const
inline

Definition at line 161 of file GeometricDet.h.

References _ddd.

161  {
162  //std::cout<<"navpos"<<std::endl;
163  return NavRange(&_ddd.front(),_ddd.size());
164  }
nav_type _ddd
Definition: GeometricDet.h:311
DDExpandedView::NavRange NavRange
Definition: GeometricDet.h:34
NavRange GeometricDet::navRange ( ) const
inline

Definition at line 156 of file GeometricDet.h.

References _ddd.

156  {
157  //std::cout<<"navRange"<<std::endl;
158  return NavRange(&_ddd.front(),_ddd.size());
159  }
nav_type _ddd
Definition: GeometricDet.h:311
DDExpandedView::NavRange NavRange
Definition: GeometricDet.h:34
nav_type const& GeometricDet::navType ( ) const
inline

Definition at line 151 of file GeometricDet.h.

References _ddd.

Referenced by TrackerGeometricDetExtraESModule::produce(), and PGeometricDetBuilder::putOne().

151  {
152  //std::cout<<"navType"<<std::endl;
153  return _ddd;
154  }
nav_type _ddd
Definition: GeometricDet.h:311
std::vector<double> const& GeometricDet::params ( ) const
inline

Definition at line 165 of file GeometricDet.h.

References _params, and ~GeometricDet().

Referenced by GeometricDetLoader::putOne(), PGeometricDetBuilder::putOne(), and CmsTrackerLayerBuilder::sortNS().

165  {
166  //std::cout<<"params"<<std::endl;
167  return _params;
168  }
std::vector< double > _params
Definition: GeometricDet.h:314
double GeometricDet::phi ( void  ) const
inline
double GeometricDet::pixROCCols ( ) const
inline

Definition at line 268 of file GeometricDet.h.

References _pixROCCols.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

268  {
269  //std::cout<<"pixROCCols"<<std::endl;
270  return _pixROCCols;
271  }
double _pixROCCols
Definition: GeometricDet.h:328
double GeometricDet::pixROCRows ( ) const
inline

The following four pix* methods only return meaningful results for pixels.

Definition at line 264 of file GeometricDet.h.

References _pixROCRows.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

264  {
265  //std::cout<<"pixROCRows"<<std::endl;
266  return _pixROCRows;
267  }
double _pixROCRows
Definition: GeometricDet.h:327
double GeometricDet::pixROCx ( ) const
inline

Definition at line 272 of file GeometricDet.h.

References _pixROCx.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

272  {
273  //std::cout<<"pixROCx"<<std::endl;
274  return _pixROCx;
275  }
double _pixROCx
Definition: GeometricDet.h:329
double GeometricDet::pixROCy ( ) const
inline

Definition at line 276 of file GeometricDet.h.

References _pixROCy.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

276  {
277  //std::cout<<"pixROCy"<<std::endl;
278  return _pixROCy;
279  }
double _pixROCy
Definition: GeometricDet.h:330
GeometricDet::Position GeometricDet::positionBounds ( ) const

positionBounds() returns the position in cm.

Definition at line 320 of file GeometricDet.cc.

References _trans.

Referenced by geographicalId(), and PlaneBuilderFromGeometricDet::plane().

320  {
321  //std::cout << "positionBounds" << std::endl;
322  Position _pos(float(_trans.x()/cm),
323  float(_trans.y()/cm),
324  float(_trans.z()/cm));
325  return _pos;
326 }
DDTranslation _trans
Definition: GeometricDet.h:306
Surface::PositionType Position
Definition: GeometricDet.h:46
double GeometricDet::radLength ( ) const
inline

Definition at line 253 of file GeometricDet.h.

References _radLength.

Referenced by TrackerGeomBuilderFromGeometricDet::buildPlaneWithMaterial(), GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

253  {
254  //std::cout<<"radLength"<<std::endl;
255  return _radLength;
256  }
double _radLength
Definition: GeometricDet.h:325
double GeometricDet::rho ( ) const
inline

Definition at line 133 of file GeometricDet.h.

References _rho.

Referenced by Lepton.Lepton::absIsoFromEA(), Muon.Muon::absIsoWithFSR(), CmsTrackerLevelBuilder::LessR::operator()(), GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

133  {
134  //std::cout << "rho" <<std::endl;
135  return _rho;
136  }
DDRotationMatrix const& GeometricDet::rotation ( void  ) const
inline

Access methods

Definition at line 121 of file GeometricDet.h.

References _rot.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

121  {
122  //std::cout<<"rotation" <<std::endl;
123  return _rot;
124  }
DDRotationMatrix _rot
Definition: GeometricDet.h:309
GeometricDet::Rotation GeometricDet::rotationBounds ( ) const

rotationBounds() returns the rotation matrix.

Definition at line 328 of file GeometricDet.cc.

References _rot, x, y, and z.

Referenced by geographicalId(), and PlaneBuilderFromGeometricDet::plane().

328  {
329  //std::cout << "rotationBounds" << std::endl;
330  DD3Vector x, y, z;
331  _rot.GetComponents(x, y, z);
332  Rotation _rotation(float(x.X()),float(x.Y()),float(x.Z()),
333  float(y.X()),float(y.Y()),float(y.Z()),
334  float(z.X()),float(z.Y()),float(z.Z()));
335  return _rotation;
336 }
Surface::RotationType Rotation
Definition: GeometricDet.h:47
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > DD3Vector
A DD Translation is currently implemented with Root Vector3D.
Definition: DDTranslation.h:6
DDRotationMatrix _rot
Definition: GeometricDet.h:309
void GeometricDet::setGeographicalID ( DetId  id)
inline
DDSolidShape const& GeometricDet::shape ( void  ) const
inline

Definition at line 138 of file GeometricDet.h.

References _shape.

Referenced by GeometricDetLoader::putOne(), PGeometricDetBuilder::putOne(), and ~GeometricDet().

138  {
139  //std::cout<<"shape"<<std::endl;
140  return _shape;
141  }
DDSolidShape _shape
Definition: GeometricDet.h:310
double GeometricDet::siliconAPVNum ( ) const
inline

Definition at line 288 of file GeometricDet.h.

References _siliconAPVNum.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

288  {
289  //std::cout<<"siliconAPVNum"<<std::endl;
290  return _siliconAPVNum;
291  }
double _siliconAPVNum
Definition: GeometricDet.h:332
bool GeometricDet::stereo ( ) const
inline

The following two are only meaningful for the silicon tracker.

Definition at line 284 of file GeometricDet.h.

References _stereo.

Referenced by GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

284  {
285  //std::cout<<"stereo"<<std::endl;
286  return _stereo;
287  }
DDTranslation const& GeometricDet::translation ( void  ) const
inline
GeometricEnumType GeometricDet::type ( ) const
inline

Definition at line 142 of file GeometricDet.h.

References _type.

Referenced by CmsTrackerLevelBuilder::build(), CmsTrackerLevelBuilder::subDetByType::operator()(), GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

142  {
143  //std::cout<<"type"<<std::endl;
144  return _type;
145  }
GeometricEnumType _type
Definition: GeometricDet.h:313
double GeometricDet::xi ( ) const
inline

Definition at line 257 of file GeometricDet.h.

References _xi.

Referenced by TrackerGeomBuilderFromGeometricDet::buildPlaneWithMaterial(), GeometricDetLoader::putOne(), and PGeometricDetBuilder::putOne().

257  {
258  //std::cout<<"xi - chi"<<std::endl;
259  return _xi;
260  }

Member Data Documentation

ConstGeometricDetContainer GeometricDet::_container
private

what it says... used the DD in memory model to build the geometry... or not.

Definition at line 305 of file GeometricDet.h.

Referenced by addComponent(), addComponents(), clearComponents(), component(), components(), deepComponents(), deleteComponents(), isLeaf(), and setGeographicalID().

nav_type GeometricDet::_ddd
private

Definition at line 311 of file GeometricDet.h.

Referenced by GeometricDet(), navpos(), navRange(), navType(), and ~GeometricDet().

DDName GeometricDet::_ddname
private

Definition at line 312 of file GeometricDet.h.

Referenced by name(), and ~GeometricDet().

DetId GeometricDet::_geographicalID
private

Definition at line 316 of file GeometricDet.h.

Referenced by geographicalID(), geographicalId(), and setGeographicalID().

std::vector<double> GeometricDet::_params
private

Definition at line 314 of file GeometricDet.h.

Referenced by bounds(), GeometricDet(), params(), and ~GeometricDet().

double GeometricDet::_phi
private

Definition at line 307 of file GeometricDet.h.

Referenced by phi(), and ~GeometricDet().

double GeometricDet::_pixROCCols
private

Definition at line 328 of file GeometricDet.h.

Referenced by pixROCCols(), and ~GeometricDet().

double GeometricDet::_pixROCRows
private

Definition at line 327 of file GeometricDet.h.

Referenced by pixROCRows(), and ~GeometricDet().

double GeometricDet::_pixROCx
private

Definition at line 329 of file GeometricDet.h.

Referenced by pixROCx(), and ~GeometricDet().

double GeometricDet::_pixROCy
private

Definition at line 330 of file GeometricDet.h.

Referenced by pixROCy(), and ~GeometricDet().

double GeometricDet::_radLength
private

Definition at line 325 of file GeometricDet.h.

Referenced by radLength(), and ~GeometricDet().

double GeometricDet::_rho
private

Definition at line 308 of file GeometricDet.h.

Referenced by rho(), and ~GeometricDet().

DDRotationMatrix GeometricDet::_rot
private

Definition at line 309 of file GeometricDet.h.

Referenced by rotation(), rotationBounds(), and ~GeometricDet().

DDSolidShape GeometricDet::_shape
private

Definition at line 310 of file GeometricDet.h.

Referenced by bounds(), shape(), and ~GeometricDet().

double GeometricDet::_siliconAPVNum
private

Definition at line 332 of file GeometricDet.h.

Referenced by siliconAPVNum(), and ~GeometricDet().

bool GeometricDet::_stereo
private

Definition at line 331 of file GeometricDet.h.

Referenced by stereo(), and ~GeometricDet().

DDTranslation GeometricDet::_trans
private

Definition at line 306 of file GeometricDet.h.

Referenced by positionBounds(), translation(), and ~GeometricDet().

GeometricEnumType GeometricDet::_type
private

Definition at line 313 of file GeometricDet.h.

Referenced by type(), and ~GeometricDet().

double GeometricDet::_xi
private

Definition at line 326 of file GeometricDet.h.

Referenced by xi(), and ~GeometricDet().