CMS 3D CMS Logo

 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Properties Friends Macros Pages
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, PixelEndCapPhase1 =20
}
 
typedef std::vector
< DDExpandedNode
GeoHistory
 
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 
PixelEndCapPhase1 

Definition at line 52 of file GeometricDet.h.

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.

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:321
dictionary parameters
Definition: Parameters.py:2
const DDLogicalPart & logicalPart() const
The logical-part of the current node in the filtered-view.
DDName _ddname
Definition: GeometricDet.h:305
double _pixROCRows
Definition: GeometricDet.h:320
double _pixROCy
Definition: GeometricDet.h:323
const DDRotationMatrix & rotation() const
The absolute rotation of the current node.
DDSolidShape const & shape() const
Definition: GeometricDet.h:131
double _siliconAPVNum
Definition: GeometricDet.h:325
DDTranslation _trans
Definition: GeometricDet.h:299
nav_type navPos() const
return the stack of sibling numbers
GeometricEnumType _type
Definition: GeometricDet.h:306
const DDGeoHistory & geoHistory() const
The list of ancestors up to the root-node of the current node.
double _pixROCx
Definition: GeometricDet.h:322
nav_type _ddd
Definition: GeometricDet.h:304
int copyno() const
Copy number associated with the current node.
DDName const & name() const
Definition: GeometricDet.h:139
const std::string fullname() const
Definition: DDName.h:56
std::vector< double > _params
Definition: GeometricDet.h:307
int nt
Definition: AMPTWrapper.h:32
DDSolidShape _shape
Definition: GeometricDet.h:303
double _radLength
Definition: GeometricDet.h:318
DDExpandedView::nav_type nav_type
DDRotationMatrix _rot
Definition: GeometricDet.h:302
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, 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:321
DDName _ddname
Definition: GeometricDet.h:305
double _pixROCRows
Definition: GeometricDet.h:320
double _pixROCy
Definition: GeometricDet.h:323
double _siliconAPVNum
Definition: GeometricDet.h:325
DDTranslation _trans
Definition: GeometricDet.h:299
GeometricEnumType _type
Definition: GeometricDet.h:306
double _pixROCx
Definition: GeometricDet.h:322
nav_type _ddd
Definition: GeometricDet.h:304
std::vector< double > _params
Definition: GeometricDet.h:307
static DDSolidShape index(const int &ind)
Definition: DDSolidShapes.h:39
DetId _geographicalID
Definition: GeometricDet.h:309
DDSolidShape _shape
Definition: GeometricDet.h:303
double _radLength
Definition: GeometricDet.h:318
DDRotationMatrix _rot
Definition: GeometricDet.h:302
GeometricDet::~GeometricDet ( )

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

Definition at line 76 of file GeometricDet.cc.

References deleteComponents().

76  {
77  //std::cout << "~GeometricDet5" << std::endl;
79 }
void deleteComponents()

Member Function Documentation

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

Definition at line 290 of file GeometricDet.cc.

References _container, and filterCSVwithJSON::copy.

Referenced by CmsTrackerLayerBuilder::sortNS(), CmsTrackerRingBuilder::sortNS(), CmsTrackerWheelBuilder::sortNS(), and CmsTrackerDiskBuilder::sortNS().

290  {
291  //std::cout << "addComponents" << std::endl;
292  _container.reserve(_container.size()+cont.size());
293  std::copy(cont.begin(), cont.end(), back_inserter(_container));
294 }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:298
int cont
void GeometricDet::addComponents ( ConstGeometricDetContainer const &  cont)

Definition at line 296 of file GeometricDet.cc.

References _container, and filterCSVwithJSON::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:298
int cont
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 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:307
DDSolidShape _shape
Definition: GeometricDet.h:303
void GeometricDet::clearComponents ( )
inline

clearComponents() only empties the container, the components are not deleted!

Definition at line 91 of file GeometricDet.h.

References _container.

Referenced by CmsTrackerLayerBuilder::sortNS(), CmsTrackerRingBuilder::sortNS(), CmsTrackerWheelBuilder::sortNS(), and CmsTrackerDiskBuilder::sortNS().

91  {
92  _container.clear();
93  //std::cout<<"clearComponents"<<std::endl;
94  }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:298
GeometricDet* GeometricDet::component ( size_t  index)
inline
ConstGeometricDetContainer& GeometricDet::components ( )
inline
ConstGeometricDetContainer const& GeometricDet::components ( ) const
inline

Definition at line 173 of file GeometricDet.h.

References _container.

173  {
174  //std::cout<<"const components2 "<<std::endl;
175  return _container;
176  }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:298
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::beginJob(), PGeometricDetBuilder::beginRun(), TrackerGeomBuilderFromGeometricDet::build(), TouchableToHistory::buildAll(), TrackerMapDDDtoID::buildAllStep2(), CmsTrackerLevelBuilder::ExtractPhiGluedModule::operator()(), CmsTrackerLevelBuilder::LessR_module::operator()(), and TrackerGeometricDetExtraESModule::produce().

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:298
bool isLeaf() const
Definition: GeometricDet.h:102
int cont
void GeometricDet::deleteComponents ( )

deleteComponents() explicitly deletes the daughters

Definition at line 313 of file GeometricDet.cc.

References _container.

Referenced by ~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:298
DetId GeometricDet::geographicalID ( ) const
inline

geometricalID() returns the ID associated to the GeometricDet.

Definition at line 201 of file GeometricDet.h.

References _geographicalID.

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

201  {
202  //std::cout<<"geographicalID"<<std::endl;
203  return _geographicalID;
204  }
DetId _geographicalID
Definition: GeometricDet.h:309
DetId GeometricDet::geographicalId ( ) const
inline

Definition at line 205 of file GeometricDet.h.

References _geographicalID.

Referenced by TrackerGeometricDetExtraESModule::putOne().

205  {
206  //std::cout<<"geographicalId"<<std::endl;
207  return _geographicalID;
208  }
DetId _geographicalID
Definition: GeometricDet.h:309
bool GeometricDet::isLeaf ( ) const
inline

Definition at line 102 of file GeometricDet.h.

References _container.

Referenced by deepComponents().

102  {
103  //std::cout <<"isLeaf() ==" <<_container.empty()<<std::endl;
104  return _container.empty();
105  }
ConstGeometricDetContainer _container
Definition: GeometricDet.h:298
DDName const& GeometricDet::name ( void  ) const
inline
NavRange GeometricDet::navpos ( ) const
inline

Definition at line 154 of file GeometricDet.h.

References _ddd.

154  {
155  //std::cout<<"navpos"<<std::endl;
156  return NavRange(&_ddd.front(),_ddd.size());
157  }
nav_type _ddd
Definition: GeometricDet.h:304
DDExpandedView::NavRange NavRange
Definition: GeometricDet.h:34
NavRange GeometricDet::navRange ( ) const
inline

Definition at line 149 of file GeometricDet.h.

References _ddd.

149  {
150  //std::cout<<"navRange"<<std::endl;
151  return NavRange(&_ddd.front(),_ddd.size());
152  }
nav_type _ddd
Definition: GeometricDet.h:304
DDExpandedView::NavRange NavRange
Definition: GeometricDet.h:34
nav_type const& GeometricDet::navType ( ) const
inline

Definition at line 144 of file GeometricDet.h.

References _ddd.

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

144  {
145  //std::cout<<"navType"<<std::endl;
146  return _ddd;
147  }
nav_type _ddd
Definition: GeometricDet.h:304
std::vector<double> const& GeometricDet::params ( ) const
inline

Definition at line 158 of file GeometricDet.h.

References _params.

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

158  {
159  //std::cout<<"params"<<std::endl;
160  return _params;
161  }
std::vector< double > _params
Definition: GeometricDet.h:307
double GeometricDet::phi ( void  ) const
inline

Definition at line 122 of file GeometricDet.h.

References _phi.

Referenced by CmsTrackerLevelBuilder::ExtractPhi::operator()(), CmsTrackerLevelBuilder::ExtractPhiMirror::operator()(), PhiSort(), PGeometricDetBuilder::putOne(), and GeometricDetLoader::putOne().

122  {
123  //std::cout<<"phi"<<std::endl;
124  return _phi;
125  }
double GeometricDet::pixROCCols ( ) const
inline

Definition at line 261 of file GeometricDet.h.

References _pixROCCols.

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

261  {
262  //std::cout<<"pixROCCols"<<std::endl;
263  return _pixROCCols;
264  }
double _pixROCCols
Definition: GeometricDet.h:321
double GeometricDet::pixROCRows ( ) const
inline

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

Definition at line 257 of file GeometricDet.h.

References _pixROCRows.

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

257  {
258  //std::cout<<"pixROCRows"<<std::endl;
259  return _pixROCRows;
260  }
double _pixROCRows
Definition: GeometricDet.h:320
double GeometricDet::pixROCx ( ) const
inline

Definition at line 265 of file GeometricDet.h.

References _pixROCx.

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

265  {
266  //std::cout<<"pixROCx"<<std::endl;
267  return _pixROCx;
268  }
double _pixROCx
Definition: GeometricDet.h:322
double GeometricDet::pixROCy ( ) const
inline

Definition at line 269 of file GeometricDet.h.

References _pixROCy.

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

269  {
270  //std::cout<<"pixROCy"<<std::endl;
271  return _pixROCy;
272  }
double _pixROCy
Definition: GeometricDet.h:323
GeometricDet::Position GeometricDet::positionBounds ( ) const

positionBounds() returns the position in cm.

Definition at line 320 of file GeometricDet.cc.

References _trans.

Referenced by 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:299
Surface::PositionType Position
Definition: GeometricDet.h:46
double GeometricDet::radLength ( ) const
inline

Definition at line 246 of file GeometricDet.h.

References _radLength.

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

246  {
247  //std::cout<<"radLength"<<std::endl;
248  return _radLength;
249  }
double _radLength
Definition: GeometricDet.h:318
double GeometricDet::rho ( ) const
inline

Definition at line 126 of file GeometricDet.h.

References _rho.

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

126  {
127  //std::cout << "rho" <<std::endl;
128  return _rho;
129  }
DDRotationMatrix const& GeometricDet::rotation ( void  ) const
inline

Access methods

Definition at line 114 of file GeometricDet.h.

References _rot.

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

114  {
115  //std::cout<<"rotation" <<std::endl;
116  return _rot;
117  }
DDRotationMatrix _rot
Definition: GeometricDet.h:302
GeometricDet::Rotation GeometricDet::rotationBounds ( ) const

rotationBounds() returns the rotation matrix.

Definition at line 328 of file GeometricDet.cc.

References _rot, x, detailsBasic3DVector::y, and detailsBasic3DVector::z.

Referenced by 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
float float float z
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:302
Definition: DDAxes.h:10
void GeometricDet::setGeographicalID ( DetId  id)
inline
DDSolidShape const& GeometricDet::shape ( void  ) const
inline

Definition at line 131 of file GeometricDet.h.

References _shape.

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

131  {
132  //std::cout<<"shape"<<std::endl;
133  return _shape;
134  }
DDSolidShape _shape
Definition: GeometricDet.h:303
double GeometricDet::siliconAPVNum ( ) const
inline

Definition at line 281 of file GeometricDet.h.

References _siliconAPVNum.

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

281  {
282  //std::cout<<"siliconAPVNum"<<std::endl;
283  return _siliconAPVNum;
284  }
double _siliconAPVNum
Definition: GeometricDet.h:325
bool GeometricDet::stereo ( ) const
inline

The following two are only meaningful for the silicon tracker.

Definition at line 277 of file GeometricDet.h.

References _stereo.

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

277  {
278  //std::cout<<"stereo"<<std::endl;
279  return _stereo;
280  }
DDTranslation const& GeometricDet::translation ( void  ) const
inline
GeometricEnumType GeometricDet::type ( ) const
inline

Definition at line 135 of file GeometricDet.h.

References _type.

Referenced by cuy.ValElement::__init__(), PixelForwardLayerBuilder::build(), CmsTrackerLevelBuilder::subDetByType::operator()(), PGeometricDetBuilder::putOne(), and GeometricDetLoader::putOne().

135  {
136  //std::cout<<"type"<<std::endl;
137  return _type;
138  }
GeometricEnumType _type
Definition: GeometricDet.h:306
double GeometricDet::xi ( ) const
inline

Definition at line 250 of file GeometricDet.h.

References _xi.

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

250  {
251  //std::cout<<"xi - chi"<<std::endl;
252  return _xi;
253  }

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 298 of file GeometricDet.h.

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

nav_type GeometricDet::_ddd
private

Definition at line 304 of file GeometricDet.h.

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

DDName GeometricDet::_ddname
private

Definition at line 305 of file GeometricDet.h.

Referenced by name().

DetId GeometricDet::_geographicalID
private

Definition at line 309 of file GeometricDet.h.

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

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

Definition at line 307 of file GeometricDet.h.

Referenced by bounds(), and params().

double GeometricDet::_phi
private

Definition at line 300 of file GeometricDet.h.

Referenced by phi().

double GeometricDet::_pixROCCols
private

Definition at line 321 of file GeometricDet.h.

Referenced by pixROCCols().

double GeometricDet::_pixROCRows
private

Definition at line 320 of file GeometricDet.h.

Referenced by pixROCRows().

double GeometricDet::_pixROCx
private

Definition at line 322 of file GeometricDet.h.

Referenced by pixROCx().

double GeometricDet::_pixROCy
private

Definition at line 323 of file GeometricDet.h.

Referenced by pixROCy().

double GeometricDet::_radLength
private

Definition at line 318 of file GeometricDet.h.

Referenced by radLength().

double GeometricDet::_rho
private

Definition at line 301 of file GeometricDet.h.

Referenced by rho().

DDRotationMatrix GeometricDet::_rot
private

Definition at line 302 of file GeometricDet.h.

Referenced by rotation(), and rotationBounds().

DDSolidShape GeometricDet::_shape
private

Definition at line 303 of file GeometricDet.h.

Referenced by bounds(), and shape().

double GeometricDet::_siliconAPVNum
private

Definition at line 325 of file GeometricDet.h.

Referenced by siliconAPVNum().

bool GeometricDet::_stereo
private

Definition at line 324 of file GeometricDet.h.

Referenced by stereo().

DDTranslation GeometricDet::_trans
private

Definition at line 299 of file GeometricDet.h.

Referenced by positionBounds(), and translation().

GeometricEnumType GeometricDet::_type
private

Definition at line 306 of file GeometricDet.h.

Referenced by type().

double GeometricDet::_xi
private

Definition at line 319 of file GeometricDet.h.

Referenced by xi().