CMS 3D CMS Logo

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

#include <GeometricDet.h>

Public Types

using ConstGeometricDetContainer = std::vector< GeometricDet const * >
 
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
}
 
using GeoHistory = std::vector< DDExpandedNode >
 
using GeometricDetContainer = std::vector< GeometricDet * >
 
typedef enum GeometricDet::GDEnumType GeometricEnumType
 
using nav_type = DDExpandedView::nav_type
 
using NavRange = DDExpandedView::NavRange
 
using Position = Surface::PositionType
 
using Rotation = Surface::RotationType
 
using RotationMatrix = ROOT::Math::Rotation3D
 
using Translation = ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > >
 

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 (cms::DDFilteredView *fv, GeometricEnumType dd)
 
 GeometricDet (const PGeometricDet::Item &onePGD, GeometricEnumType dd)
 
bool isLeaf () const
 
std::string const & name () const
 
NavRange navpos () 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
 
RotationMatrix const & rotation () const
 
Rotation rotationBounds () const
 
void setGeographicalID (DetId id)
 
DDSolidShape const & shape () const
 
double siliconAPVNum () const
 
bool stereo () const
 
Translation const & translation () const
 
GeometricEnumType type () const
 
double xi () const
 
 ~GeometricDet ()
 

Private Attributes

ConstGeometricDetContainer _container
 
nav_type _ddd
 
std::string _ddname
 
DetId _geographicalID
 
std::vector< double > _params
 
double _phi
 
double _pixROCCols
 
double _pixROCRows
 
double _pixROCx
 
double _pixROCy
 
double _radLength
 
double _rho
 
RotationMatrix _rot
 
DDSolidShape _shape
 
double _siliconAPVNum
 
bool _stereo
 
Translation _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 33 of file GeometricDet.h.

Definition at line 42 of file GeometricDet.h.

Definition at line 34 of file GeometricDet.h.

Definition at line 43 of file GeometricDet.h.

Definition at line 32 of file GeometricDet.h.

Definition at line 46 of file GeometricDet.h.

Definition at line 47 of file GeometricDet.h.

using GeometricDet::RotationMatrix = ROOT::Math::Rotation3D

Definition at line 35 of file GeometricDet.h.

using GeometricDet::Translation = ROOT::Math::DisplacementVector3D<ROOT::Math::Cartesian3D<double> >

Definition at line 36 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  {
53  unknown = 100,
54  Tracker = 0,
55  PixelBarrel = 1,
56  PixelEndCap = 2,
57  TIB = 3,
58  TID = 4,
59  TOB = 5,
60  TEC = 6,
61  layer = 8,
62  wheel = 9,
63  strng = 10,
64  rod = 11,
65  petal = 12,
66  ring = 13,
67  ladder = 14,
68  mergedDet = 15,
69  DetUnit = 16,
70  disk = 17,
71  panel = 18,
72  PixelPhase1Barrel = 101,
73  PixelPhase1EndCap = 102,
74  PixelPhase1Disk = 117,
75  OTPhase2EndCap = 204,
76  OTPhase2Barrel = 205,
77  OTPhase2Layer = 208,
78  OTPhase2Stack = 215,
79  PixelPhase2Barrel = 201,
80  PixelPhase2EndCap = 202,
81  OTPhase2Wheel = 209,
82  PixelPhase2FullDisk = 217,
84  PixelPhase2TDRDisk = 237
enum GeometricDet::GDEnumType GeometricEnumType

Constructor & Destructor Documentation

GeometricDet::GeometricDet ( DDFilteredView fv,
GeometricEnumType  dd 
)

Constructors to be used when looping over DDD

Definition at line 68 of file GeometricDet.cc.

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

69  : //
70  // Set by hand the _ddd
71  //
72  _trans(fv->translation()),
73  _phi(_trans.Phi()),
74  _rho(_trans.Rho()),
75  _rot(fv->rotation()),
76  _shape(fv->shape()),
77  _ddname(fv->name()),
78  _type(type),
79  _params(fv->parameters()),
80  _radLength(getDouble("TrackerRadLength", *fv)),
81  _xi(getDouble("TrackerXi", *fv)),
82  _pixROCRows(getDouble("PixelROCRows", *fv)),
83  _pixROCCols(getDouble("PixelROCCols", *fv)),
84  _pixROCx(getDouble("PixelROC_X", *fv)),
85  _pixROCy(getDouble("PixelROC_Y", *fv)),
86  _stereo(getString("TrackerStereoDetectors", *fv) == strue),
87  _siliconAPVNum(getDouble("SiliconAPVNumber", *fv)) {
88  // workaround instead of this at initialization _ddd(fv->navPos().begin(),fv->navPos().end()),
89  const DDFilteredView::nav_type& nt = fv->navPos();
90  _ddd = nav_type(nt.begin(), nt.end());
91 }
type
Definition: HCALResponse.h:21
double _pixROCCols
Definition: GeometricDet.h:203
const std::string & name() const
The name of a logical-part of the current node in the filtered-view.
double _pixROCRows
Definition: GeometricDet.h:202
double _pixROCy
Definition: GeometricDet.h:205
const DDRotationMatrix & rotation() const
The absolute rotation of the current node.
double _siliconAPVNum
Definition: GeometricDet.h:207
nav_type navPos() const
return the stack of sibling numbers
GeometricEnumType _type
Definition: GeometricDet.h:196
double _pixROCx
Definition: GeometricDet.h:204
nav_type _ddd
Definition: GeometricDet.h:194
Translation _trans
Definition: GeometricDet.h:189
const std::vector< double > & parameters() const
RotationMatrix _rot
Definition: GeometricDet.h:192
std::vector< double > _params
Definition: GeometricDet.h:197
std::string _ddname
Definition: GeometricDet.h:195
int nt
Definition: AMPTWrapper.h:42
DDSolidShape _shape
Definition: GeometricDet.h:193
const DDSolidShape shape() const
DDExpandedView::nav_type nav_type
Definition: GeometricDet.h:43
double _radLength
Definition: GeometricDet.h:200
DDExpandedView::nav_type nav_type
const DDTranslation & translation() const
The absolute translation of the current node.
GeometricDet::GeometricDet ( cms::DDFilteredView fv,
GeometricEnumType  dd 
)

Definition at line 93 of file GeometricDet.cc.

94  : _trans(fv->translation()),
95  _phi(_trans.Phi()),
96  _rho(_trans.Rho()),
97  _rot(fv->rotation()),
98  _shape(DDSolidShape(static_cast<int>(fv->shape()))),
99  _ddd(fv->navPos()),
100  _ddname(fv->name()),
101  _type(type),
102  _params(fv->parameters()),
103  _radLength(fv->get<double>("TrackerRadLength")),
104  _xi(fv->get<double>("TrackerXi")),
105  _pixROCRows(fv->get<double>("PixelROCRows")),
106  _pixROCCols(fv->get<double>("PixelROCCols")),
107  _pixROCx(fv->get<double>("PixelROC_X")),
108  _pixROCy(fv->get<double>("PixelROC_Y")),
109  _stereo(fv->get<std::string_view>("TrackerStereoDetectors") == strue),
110  _siliconAPVNum(fv->get<double>("SiliconAPVNumber")) {}
type
Definition: HCALResponse.h:21
double _pixROCCols
Definition: GeometricDet.h:203
double _pixROCRows
Definition: GeometricDet.h:202
const RotationMatrix rotation() const
double _pixROCy
Definition: GeometricDet.h:205
double _siliconAPVNum
Definition: GeometricDet.h:207
GeometricEnumType _type
Definition: GeometricDet.h:196
double _pixROCx
Definition: GeometricDet.h:204
nav_type _ddd
Definition: GeometricDet.h:194
const Translation translation() const
const cms::DDSolidShape shape() const
Translation _trans
Definition: GeometricDet.h:189
RotationMatrix _rot
Definition: GeometricDet.h:192
nav_type navPos() const
return the stack of sibling numbers which indicates
std::vector< double > _params
Definition: GeometricDet.h:197
std::string_view name() const
std::string _ddname
Definition: GeometricDet.h:195
T get(const std::string &) const
extract attribute value
DDSolidShape _shape
Definition: GeometricDet.h:193
DDSolidShape
Definition: DDSolidShapes.h:6
double _radLength
Definition: GeometricDet.h:200
const std::vector< double > parameters() const
extract shape parameters
GeometricDet::GeometricDet ( const PGeometricDet::Item onePGD,
GeometricEnumType  dd 
)

Definition at line 114 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.

115  : _trans(onePGD._x, onePGD._y, onePGD._z),
116  _phi(onePGD._phi), //_trans.Phi()),
117  _rho(onePGD._rho), //_trans.Rho()),
118  _rot(onePGD._a11,
119  onePGD._a12,
120  onePGD._a13,
121  onePGD._a21,
122  onePGD._a22,
123  onePGD._a23,
124  onePGD._a31,
125  onePGD._a32,
126  onePGD._a33),
127  _shape(static_cast<DDSolidShape>(onePGD._shape)),
128  _ddd(),
129  _ddname(onePGD._name),
130  _type(type),
131  _params(),
133  _radLength(onePGD._radLength),
134  _xi(onePGD._xi),
135  _pixROCRows(onePGD._pixROCRows),
136  _pixROCCols(onePGD._pixROCCols),
137  _pixROCx(onePGD._pixROCx),
138  _pixROCy(onePGD._pixROCy),
139  _stereo(onePGD._stereo),
141  if (onePGD._shape == 1 || onePGD._shape == 3) { //The parms vector is neede only in the case of box or trap shape
142  _params.reserve(11);
143  _params.emplace_back(onePGD._params0);
144  _params.emplace_back(onePGD._params1);
145  _params.emplace_back(onePGD._params2);
146  _params.emplace_back(onePGD._params3);
147  _params.emplace_back(onePGD._params4);
148  _params.emplace_back(onePGD._params5);
149  _params.emplace_back(onePGD._params6);
150  _params.emplace_back(onePGD._params7);
151  _params.emplace_back(onePGD._params8);
152  _params.emplace_back(onePGD._params9);
153  _params.emplace_back(onePGD._params10);
154  }
155 
156  _ddd.reserve(onePGD._numnt);
157  _ddd.emplace_back(onePGD._nt0);
158  _ddd.emplace_back(onePGD._nt1);
159  _ddd.emplace_back(onePGD._nt2);
160  _ddd.emplace_back(onePGD._nt3);
161  if (onePGD._numnt > 4) {
162  _ddd.emplace_back(onePGD._nt4);
163  if (onePGD._numnt > 5) {
164  _ddd.emplace_back(onePGD._nt5);
165  if (onePGD._numnt > 6) {
166  _ddd.emplace_back(onePGD._nt6);
167  if (onePGD._numnt > 7) {
168  _ddd.emplace_back(onePGD._nt7);
169  if (onePGD._numnt > 8) {
170  _ddd.emplace_back(onePGD._nt8);
171  if (onePGD._numnt > 9) {
172  _ddd.emplace_back(onePGD._nt9);
173  if (onePGD._numnt > 10) {
174  _ddd.emplace_back(onePGD._nt10);
175  }
176  }
177  }
178  }
179  }
180  }
181  }
182 }
type
Definition: HCALResponse.h:21
double _pixROCCols
Definition: GeometricDet.h:203
double _pixROCRows
Definition: GeometricDet.h:202
double _pixROCy
Definition: GeometricDet.h:205
double _siliconAPVNum
Definition: GeometricDet.h:207
GeometricEnumType _type
Definition: GeometricDet.h:196
double _pixROCx
Definition: GeometricDet.h:204
nav_type _ddd
Definition: GeometricDet.h:194
Translation _trans
Definition: GeometricDet.h:189
RotationMatrix _rot
Definition: GeometricDet.h:192
std::vector< double > _params
Definition: GeometricDet.h:197
std::string _ddname
Definition: GeometricDet.h:195
DetId _geographicalID
Definition: GeometricDet.h:199
DDSolidShape _shape
Definition: GeometricDet.h:193
double _radLength
Definition: GeometricDet.h:200
GeometricDet::~GeometricDet ( )

What to do in the destructor? destroy all the daughters!

Definition at line 66 of file GeometricDet.cc.

References deleteComponents().

66 { deleteComponents(); }
void deleteComponents()

Member Function Documentation

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

Definition at line 205 of file GeometricDet.cc.

References _container, and filterCSVwithJSON::copy.

205  {
206  _container.reserve(_container.size() + cont.size());
207  std::copy(cont.begin(), cont.end(), back_inserter(_container));
208 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:188
cont
load Luminosity info ##
Definition: generateEDF.py:629
std::unique_ptr< Bounds > GeometricDet::bounds ( ) const

bounds() returns the Bounds.

Definition at line 243 of file GeometricDet.cc.

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

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

243  {
244  const std::vector<double>& par = _params;
245  TrackerShapeToBounds shapeToBounds;
246  return std::unique_ptr<Bounds>(shapeToBounds.buildBounds(_shape, par));
247 }
Bounds * buildBounds(const DDSolidShape &, const std::vector< double > &) const
std::vector< double > _params
Definition: GeometricDet.h:197
DDSolidShape _shape
Definition: GeometricDet.h:193
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 139 of file GeometricDet.h.

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(), CmsTrackerLevelBuilderHelper::getPhiModule(), CmsTrackerDebugNavigator::iterate(), CmsTrackerDetIdBuilder::iterate(), TrackerGeometricDetExtraESModule::produce(), CmsTrackerWheelBuilder< FilteredView >::sortNS(), CmsTrackerPanelBuilder< FilteredView >::sortNS(), CmsTrackerLadderBuilder< FilteredView >::sortNS(), CmsTrackerPixelPhase2RingBuilder< FilteredView >::sortNS(), CmsTrackerLayerBuilder< FilteredView >::sortNS(), CmsTrackerRingBuilder< FilteredView >::sortNS(), CmsTrackerPhase2TPDiskBuilder< FilteredView >::sortNS(), CmsTrackerPhase1DiskBuilder< FilteredView >::sortNS(), CmsTrackerPetalBuilder< FilteredView >::sortNS(), CmsTrackerOTLayerBuilder< FilteredView >::sortNS(), CmsTrackerOTRingBuilder< FilteredView >::sortNS(), CmsTrackerPixelPhase2DiskBuilder< FilteredView >::sortNS(), CmsTrackerOTDiscBuilder< FilteredView >::sortNS(), CmsTrackerRodBuilder< FilteredView >::sortNS(), CmsTrackerStringBuilder< FilteredView >::sortNS(), CmsTrackerDiskBuilder< FilteredView >::sortNS(), CmsTrackerPixelPhase1EndcapBuilder< FilteredView >::sortNS(), CmsTrackerSubStrctBuilder< FilteredView >::sortNS(), CmsTrackerPixelPhase2EndcapBuilder< FilteredView >::sortNS(), CmsTrackerBuilder< FilteredView >::sortNS(), and TrackerGeometry::TrackerGeometry().

139 { return _container; }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:188
ConstGeometricDetContainer const& GeometricDet::components ( ) const
inline

Definition at line 140 of file GeometricDet.h.

140 { return _container; }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:188
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 184 of file GeometricDet.cc.

Referenced by GeometricDetLoader::beginRun(), PGeometricDetBuilder::beginRun(), TrackerGeomBuilderFromGeometricDet::build(), TrackerG4SimHitNumberingScheme::buildAll(), CmsTrackerLevelBuilderHelper::getPhiGluedModule(), TrackerGeometryUtils::getSiStripDetIds(), CmsTrackerLevelBuilderHelper::isLessRModule(), TrackerGeometricDetExtraESModule::produce(), and TrackerGeometry::TrackerGeometry().

184  {
185  //
186  // iterate on all the components ;)
187  //
189  deepComponents(_temp);
190  return _temp;
191 }
std::vector< GeometricDet const * > ConstGeometricDetContainer
Definition: GeometricDet.h:33
ConstGeometricDetContainer deepComponents() const
void GeometricDet::deepComponents ( ConstGeometricDetContainer cont) const

Definition at line 193 of file GeometricDet.cc.

References _container, and isLeaf().

193  {
194  if (isLeaf())
195  cont.emplace_back(this);
196  else
197  std::for_each(_container.begin(), _container.end(), [&](const GeometricDet* iDet) { iDet->deepComponents(cont); });
198 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:188
bool isLeaf() const
Definition: GeometricDet.h:112
cont
load Luminosity info ##
Definition: generateEDF.py:629
void GeometricDet::deleteComponents ( )

deleteComponents() explicitly deletes the daughters

Definition at line 218 of file GeometricDet.cc.

References _container.

Referenced by ~GeometricDet().

218  {
219  std::for_each(_container.begin(), _container.end(), Deleter());
220  _container.clear();
221 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:188
DetId GeometricDet::geographicalID ( ) const
inline

geometricalID() returns the ID associated to the GeometricDet.

Definition at line 153 of file GeometricDet.h.

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

153 { return _geographicalID; }
DetId _geographicalID
Definition: GeometricDet.h:199
DetId GeometricDet::geographicalId ( ) const
inline

Definition at line 154 of file GeometricDet.h.

Referenced by TrackerGeometry::fillTestMap(), and TrackerGeometricDetExtraESModule::putOne().

154 { return _geographicalID; }
DetId _geographicalID
Definition: GeometricDet.h:199
bool GeometricDet::isLeaf ( ) const
inline

Definition at line 112 of file GeometricDet.h.

Referenced by deepComponents().

112 { return _container.empty(); }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:188
std::string const& GeometricDet::name ( void  ) const
inline
NavRange GeometricDet::navpos ( ) const
inline

Definition at line 130 of file GeometricDet.h.

130 { return NavRange(&_ddd.front(), _ddd.size()); }
nav_type _ddd
Definition: GeometricDet.h:194
DDExpandedView::NavRange NavRange
Definition: GeometricDet.h:32
nav_type const& GeometricDet::navType ( ) const
inline

Definition at line 129 of file GeometricDet.h.

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

129 { return _ddd; }
nav_type _ddd
Definition: GeometricDet.h:194
std::vector<double> const& GeometricDet::params ( ) const
inline
double GeometricDet::phi ( void  ) const
inline
double GeometricDet::pixROCCols ( ) const
inline
double GeometricDet::pixROCRows ( ) const
inline

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

Definition at line 176 of file GeometricDet.h.

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

176 { return _pixROCRows; }
double _pixROCRows
Definition: GeometricDet.h:202
double GeometricDet::pixROCx ( ) const
inline
double GeometricDet::pixROCy ( ) const
inline
GeometricDet::Position GeometricDet::positionBounds ( ) const

positionBounds() returns the position in cm.

Definition at line 223 of file GeometricDet.cc.

References _trans.

Referenced by PlaneBuilderFromGeometricDet::plane().

223  {
224  Position _pos(float(_trans.x() / cm), float(_trans.y() / cm), float(_trans.z() / cm));
225  return _pos;
226 }
Translation _trans
Definition: GeometricDet.h:189
Surface::PositionType Position
Definition: GeometricDet.h:46
double GeometricDet::radLength ( ) const
inline
double GeometricDet::rho ( ) const
inline
RotationMatrix const& GeometricDet::rotation ( void  ) const
inline

Access methods

Definition at line 119 of file GeometricDet.h.

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

119 { return _rot; }
RotationMatrix _rot
Definition: GeometricDet.h:192
GeometricDet::Rotation GeometricDet::rotationBounds ( ) const

rotationBounds() returns the rotation matrix.

Definition at line 228 of file GeometricDet.cc.

References _rot, x, y, and z.

Referenced by PlaneBuilderFromGeometricDet::plane().

228  {
229  Translation x, y, z;
230  _rot.GetComponents(x, y, z);
231  Rotation _rotation(float(x.X()),
232  float(x.Y()),
233  float(x.Z()),
234  float(y.X()),
235  float(y.Y()),
236  float(y.Z()),
237  float(z.X()),
238  float(z.Y()),
239  float(z.Z()));
240  return _rotation;
241 }
RotationMatrix _rot
Definition: GeometricDet.h:192
Surface::RotationType Rotation
Definition: GeometricDet.h:47
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< double > > Translation
Definition: GeometricDet.h:36
void GeometricDet::setGeographicalID ( DetId  id)
inline
DDSolidShape const& GeometricDet::shape ( void  ) const
inline

Definition at line 124 of file GeometricDet.h.

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

124 { return _shape; }
DDSolidShape _shape
Definition: GeometricDet.h:193
double GeometricDet::siliconAPVNum ( ) const
inline
bool GeometricDet::stereo ( ) const
inline

The following two are only meaningful for the silicon tracker.

Definition at line 184 of file GeometricDet.h.

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

184 { return _stereo; }
Translation const& GeometricDet::translation ( void  ) const
inline
GeometricEnumType GeometricDet::type ( ) const
inline
double GeometricDet::xi ( ) const
inline

Member Data Documentation

ConstGeometricDetContainer GeometricDet::_container
private

Definition at line 188 of file GeometricDet.h.

Referenced by addComponent(), addComponents(), deepComponents(), and deleteComponents().

nav_type GeometricDet::_ddd
private

Definition at line 194 of file GeometricDet.h.

Referenced by GeometricDet().

std::string GeometricDet::_ddname
private

Definition at line 195 of file GeometricDet.h.

DetId GeometricDet::_geographicalID
private

Definition at line 199 of file GeometricDet.h.

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

Definition at line 197 of file GeometricDet.h.

Referenced by bounds(), and GeometricDet().

double GeometricDet::_phi
private

Definition at line 190 of file GeometricDet.h.

double GeometricDet::_pixROCCols
private

Definition at line 203 of file GeometricDet.h.

double GeometricDet::_pixROCRows
private

Definition at line 202 of file GeometricDet.h.

double GeometricDet::_pixROCx
private

Definition at line 204 of file GeometricDet.h.

double GeometricDet::_pixROCy
private

Definition at line 205 of file GeometricDet.h.

double GeometricDet::_radLength
private

Definition at line 200 of file GeometricDet.h.

double GeometricDet::_rho
private

Definition at line 191 of file GeometricDet.h.

RotationMatrix GeometricDet::_rot
private

Definition at line 192 of file GeometricDet.h.

Referenced by rotationBounds().

DDSolidShape GeometricDet::_shape
private

Definition at line 193 of file GeometricDet.h.

Referenced by bounds().

double GeometricDet::_siliconAPVNum
private

Definition at line 207 of file GeometricDet.h.

bool GeometricDet::_stereo
private

Definition at line 206 of file GeometricDet.h.

Translation GeometricDet::_trans
private

Definition at line 189 of file GeometricDet.h.

Referenced by positionBounds().

GeometricEnumType GeometricDet::_type
private

Definition at line 196 of file GeometricDet.h.

double GeometricDet::_xi
private

Definition at line 201 of file GeometricDet.h.