ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
PRDHandle_CSC_Strip Class Reference

#include <PRDHandle_CSC_Strip.h>

Inheritance diagram for PRDHandle_CSC_Strip:
Collaboration diagram for PRDHandle_CSC_Strip:

Public Member Functions

 PRDHandle_CSC_Strip (PRDCollHandle_CSC_Strip *, const Muon::CscStripPrepData *)
 
virtual ~PRDHandle_CSC_Strip ()
 
void buildShapes (SoNode *&shape_simple, SoNode *&shape_detailed)
 
int regionIndex ()
 
const Muon::CscStripPrepDatacsc () const
 
const Trk::PrepRawDatagetPRD () const
 
bool inMuonChamber () const
 
GeoPVConstLink parentMuonChamberPV () const
 
virtual QStringList clicked () const
 
void setVisible (bool)
 
bool visible () const
 
virtual bool highLight () const
 
virtual bool transformUsesSurfacePositionOnly () const
 
SoSeparator * sepSimple () const
 
SoSeparator * sepDetailed () const
 
PRDSysCommonDatacommon () const
 
virtual Amg::Vector3D center () const
 
Amg::Vector3D positionPRD () const
 
Amg::Vector3D positionSecondPRD () const
 
Amg::Transform3D getTransform_CLHEP () const
 
virtual SoTransform * createTransform () const
 
void update3DObjects ()
 
void updateMaterial ()
 
PRDCollHandleBasecollHandle () const
 
virtual const Trk::PrepRawDatagetSecondPRD () const
 
virtual bool isSane () const
 Returns false if the PRD is not safe to draw. More...
 

Private Attributes

const Muon::CscStripPrepDatam_csc
 
Impm_d
 
PRDSysCommonDatam_common
 
bool m_visible
 

Detailed Description

Definition at line 13 of file PRDHandle_CSC_Strip.h.

Constructor & Destructor Documentation

◆ PRDHandle_CSC_Strip()

PRDHandle_CSC_Strip::PRDHandle_CSC_Strip ( PRDCollHandle_CSC_Strip collhandle,
const Muon::CscStripPrepData csc 
)

Definition at line 25 of file PRDHandle_CSC_Strip.cxx.

26  : PRDHandleBase(static_cast<PRDCollHandleBase*>(collhandle)), m_csc(csc)
27 {
29 }

◆ ~PRDHandle_CSC_Strip()

virtual PRDHandle_CSC_Strip::~PRDHandle_CSC_Strip ( )
inlinevirtual

Definition at line 17 of file PRDHandle_CSC_Strip.h.

17 {};

Member Function Documentation

◆ buildShapes()

void PRDHandle_CSC_Strip::buildShapes ( SoNode *&  shape_simple,
SoNode *&  shape_detailed 
)
virtual

Implements PRDHandleBase.

Definition at line 32 of file PRDHandle_CSC_Strip.cxx.

33 {
34  const CscIdHelper * idhelper = VP1DetInfo::cscIDHelper();
35  if (!idhelper)
36  return;
37 
38  Identifier id = m_csc->identify();
39 
40  SoSeparator * errDetailed = new SoSeparator;
41  SoSeparator * errSimple = new SoSeparator;
42  shape_simple = errSimple;
43 
44  double striplength = m_csc->detectorElement()->stripLength( id );
45  if (static_cast<PRDCollHandle_CSC_Strip*>(collHandle())->project())
46  striplength += 300.0;//Fixme: Rough extension for now
47  SoNode* line = common()->nodeManager()->getShapeNode_Strip(striplength);
48  errSimple->addChild(line);
49  errSimple->addChild(common()->nodeManager()->getShapeNode_Cross(10));
50  const double maxCharge = 1e5;
51  //Thickness of highlighed strip
52  //FIXME: the maxCharge/3 is just a quick fix to get a nice presentation
53  // maybe this should go like sqrt(charge/maxCharge) so that it
54  // is clear for small charges.
55  //const double stripHeight = (1 + 4*sqrt(m_csc->charge()/maxCharge))*CLHEP::mm; // [1,5]
56  //
57  // The minimum is chosen equal to the neighbouring strips, such
58  // that a zero charge will give the same stirp height
59  const double stripHeight = 1*CLHEP::mm; // [1,5]
60 
61  const std::vector< float > charges = m_csc->sampleCharges();
62  if (charges.size() == 0 )
63  {
64  // Add arbitrary strip height & draw entire length of strip.
65  errDetailed->addChild(common()->nodeManager()->getShapeNode_Strip(striplength,
67  idhelper->measuresPhi( id )), stripHeight));
68  } else {
69  SoSeparator * rdos = new SoSeparator;
70 
71  Amg::Vector2D localposCharge;
72 
73  // SoTransparency * transparent = new SoTransparency;
74  // transparent->transparency.setValue(0.5);
75  // rdos->addChild( transparent );
76  double chargeLength=striplength/static_cast<double>(charges.size()); // size of one charge cell
77  // std::cout<<"Number of charges="<<charges.size()<<", chargeLength="<<chargeLength<<" striplength="<<striplength<<std::endl;
78  unsigned int i=0;
79  double ypos=(chargeLength-striplength)/2.0;
80  std::vector<float>::const_iterator st = charges.begin();
81  std::vector<float>::const_iterator en = charges.end();
82  double stripPitch=m_csc->detectorElement()->cathodeReadoutPitch(idhelper->chamberLayer( id ),idhelper->measuresPhi( id ));
83  SoTranslation * localtrans = new SoTranslation;
84  localtrans->translation.setValue(0.0,ypos,0.0);
85  rdos->addChild(localtrans);
86 
87  for( std::vector<float>::const_iterator it = st; it!=en; ++it, ++i){
88  // std::cout<<"Charge: "<<i<<" \ty="<<ypos<<" has charge=:"<<*it<<std::endl;
89  float charge = std::max(1.0f,(*it)); // keep charges positive until I understand if it is okay to be -ve
90  const double stripHeightCharge = (1.0 + 4*sqrt(charge/maxCharge))*CLHEP::mm;
91  // std::cout<<"stripHeightCharge: "<<stripHeightCharge<<std::endl;
92  rdos->addChild(common()->nodeManager()->getShapeNode_Strip(chargeLength, stripPitch, stripHeightCharge));
93  // ypos+=chargeLength;
94  SoTranslation * localtrans2 = new SoTranslation;
95  localtrans2->translation.setValue(0.0,chargeLength,0.0);
96  rdos->addChild(localtrans2);
97 
98  }
99  errDetailed->addChild(rdos);
100  }
101  SoMaterial * mat = new SoMaterial;
102  mat->diffuseColor.setValue(1.0,0,0);
103  errDetailed->addChild(mat);
104  errDetailed->addChild(common()->nodeManager()->getShapeNode_Cross(10));
105 
106  shape_detailed = errDetailed;
107 }

◆ center()

Amg::Vector3D PRDHandleBase::center ( ) const
virtualinherited

Reimplemented in PRDHandle_SpacePoint.

Definition at line 316 of file PRDHandleBase.cxx.

317 {
318  return positionPRD();
319 }

◆ clicked()

QStringList PRDHandle_CSC_Strip::clicked ( ) const
virtual

Reimplemented from PRDHandleBase.

Definition at line 118 of file PRDHandle_CSC_Strip.cxx.

119 {
120 
121  if (!m_csc)
122  return QStringList("Null PRD");
123  const CscIdHelper * idhelper = VP1DetInfo::cscIDHelper();
124  if (!idhelper)
125  return QStringList("Null PRD");
126 
127  Identifier id = m_csc->identify();
128  std::ostringstream os;
129  os << "CscStripPrepData with Identifier ["<<id<<"] = ["<<idhelper->print_to_string(id)
130  <<"] at global position = "<<m_csc->globalPosition()<<", local position = "<<m_csc->localPosition();
131  os << ". Samples = [";
132  for( unsigned int i=0;i<m_csc->sampleCharges().size();++i) os << m_csc->sampleCharges()[i] << " , ";
133 
134  os << "]. Time of first sample= "<<m_csc->timeOfFirstSample() << ", sampling time (CLHEP::ns) "
135  << m_csc->samplingTime() << ", sampling phase " << m_csc->samplingPhase();
136  os << ". RDO list= [";
137  for( unsigned int i=0;i<m_csc->rdoList().size();++i) os << m_csc->rdoList()[i] << " , ";
138  os << "].";
139  // os <<"\n Dump follows:";
140  // os <<"\n--------------";
141  //os << *(m_csc);
142  return QString(os.str().c_str()).split("\n");
143 }

◆ collHandle()

PRDCollHandleBase * PRDHandleBase::collHandle ( ) const
inherited

Definition at line 228 of file PRDHandleBase.cxx.

229 {
230  return m_d->colhandle;
231 }

◆ common()

PRDSysCommonData* PRDHandleBase::common ( ) const
inlineinherited

Definition at line 53 of file PRDHandleBase.h.

53 { return m_common; }

◆ createTransform()

SoTransform * PRDHandleBase::createTransform ( ) const
virtualinherited

Reimplemented in PRDHandle_sTGC, and PRDHandle_TGC.

Definition at line 371 of file PRDHandleBase.cxx.

372 {
373  //NB: Some code duplicated here and in the getTransform_CLHEP() method.
374  const Trk::PrepRawData * prd = getPRD();
375  if (!prd) {
376  std::cerr<<"PRDHandleBase::createTransform() No prd!"<<std::endl;
377  return new SoTransform;
378  }
379  const Trk::Surface& theSurface = prd->detectorElement()->surface(prd->identify());
380  SoTransform * theHitTransform = VP1LinAlgUtils::toSoTransform(theSurface.transform());
381 
382  Amg::Vector3D theHitGPos;
384  // for tubes, should use position of center of tube (if drawing full tube)
385  theHitGPos= Amg::Vector3D (theSurface.center());
386  } else {
387  // for strips, clusters or short tubes, use position of hit.
388  theHitGPos = theSurface.localToGlobal(prd->localPosition());
389  }
390  if ((theHitGPos)[0]!=(theHitGPos)[0] || (theHitGPos)[1]!=(theHitGPos)[1] || (theHitGPos)[2]!=(theHitGPos)[2]){
391  std::cerr<<"PRDHandleBase::createTransform() NaN in globalposition"<<std::endl;
392  }
393  theHitTransform->translation.setValue((theHitGPos)[0], (theHitGPos)[1], (theHitGPos)[2]);
394  return theHitTransform;
395 }

◆ csc()

const Muon::CscStripPrepData* PRDHandle_CSC_Strip::csc ( ) const
inline

Definition at line 22 of file PRDHandle_CSC_Strip.h.

22 { return m_csc; }

◆ getPRD()

const Trk::PrepRawData* PRDHandle_CSC_Strip::getPRD ( ) const
inlinevirtual

Implements PRDHandleBase.

Definition at line 23 of file PRDHandle_CSC_Strip.h.

23 { return m_csc; }

◆ getSecondPRD()

virtual const Trk::PrepRawData* PRDHandleBase::getSecondPRD ( ) const
inlinevirtualinherited

Reimplemented in PRDHandle_SpacePoint.

Definition at line 73 of file PRDHandleBase.h.

73 { return 0; }//For SCT spacepoints

◆ getTransform_CLHEP()

Amg::Transform3D PRDHandleBase::getTransform_CLHEP ( ) const
inherited

Definition at line 322 of file PRDHandleBase.cxx.

323 {
324  if (m_d->sepDetailed&&m_d->sepDetailed->getNumChildren()>0) {
325  //For efficiency/consistency we simply copy the transform from the
326  //inventor transformation (only loose slight precision in the
327  //double->float->double conversions):
328  SoTransform * transform = static_cast<SoTransform*>(m_d->sepDetailed->getChild(0));
329  float tx, ty, tz;
330  transform->translation.getValue().getValue(tx,ty,tz);
331  SbVec3f so_rotaxis;
332  float so_rotangle;
333  transform->rotation.getValue().getValue(so_rotaxis, so_rotangle);
334  float rx, ry, rz;
335  so_rotaxis.getValue(rx,ry,rz);
336  Amg::Vector3D axis(rx,ry,rz);
337 // Amg::AngleAxis3D angleAxis = Amg::getRotation3DfromAngleAxis( so_rotangle, axis );
338 // Amg::Rotation3D rot;
339 // rot = angleAxis;
341  return Amg::Translation3D(tx,ty,tz) * rot;
342  }
343  std::cout<<"VP1 PRDHandleBase Warning: getTransform_CLHEP called at inopportune moment!!"<<std::endl;
344 
345  //NB: Some code duplicated here and in the createTransform() method.
346 
347  const Trk::PrepRawData * prd = getPRD();
348  if (!prd) {
349  return Amg::Transform3D::Identity();
350  }
351  const Trk::Surface& theSurface = prd->detectorElement()->surface(prd->identify());
352  Amg::Vector3D theHitGPos;
354  // for tubes, should use position of center of tube (if drawing full tube)
355  theHitGPos= Amg::Vector3D(theSurface.center());
356  } else {
357  // for clusters or short tubes, use position of hit.
358  theHitGPos = theSurface.localToGlobal(prd->localPosition()); //theSurface 'new s' a Vector3D and returns pointer
359  }
360 
361 // CLHEP::Hep3Vector t(theSurface.transform().getTranslation());
362 // return HepGeom::Transform3D( HepGeom::Translate3D(theHitGPos->x()-t.x(),theHitGPos->y()-t.y(),theHitGPos->z()-t.z()) * (theSurface.transform()) );
365  Amg::Translation3D transl = Amg::Translation3D(theHitGPos.x()-t.x(), theHitGPos.y()-t.y(), theHitGPos.z()-t.z());
366  Amg::Transform3D transf = transl * (theSurface.transform());
367  return transf;
368 }

◆ highLight()

virtual bool PRDHandleBase::highLight ( ) const
inlinevirtualinherited

Reimplemented in PRDHandle_MDT, and PRDHandle_TRT.

Definition at line 45 of file PRDHandleBase.h.

45 { return false; }//Return true to get hit highlighted (for e.g. a TRT hits with HT).

◆ inMuonChamber()

bool PRDHandle_CSC_Strip::inMuonChamber ( ) const
inlinevirtual

Reimplemented from PRDHandleBase.

Definition at line 26 of file PRDHandle_CSC_Strip.h.

26 { return true; }

◆ isSane()

virtual bool PRDHandleBase::isSane ( ) const
inlinevirtualinherited

Returns false if the PRD is not safe to draw.

Reimplemented in PRDHandle_Pixel.

Definition at line 75 of file PRDHandleBase.h.

◆ parentMuonChamberPV()

GeoPVConstLink PRDHandle_CSC_Strip::parentMuonChamberPV ( ) const
inlinevirtual

Reimplemented from PRDHandleBase.

Definition at line 27 of file PRDHandle_CSC_Strip.h.

27 { return m_csc->detectorElement()->parentStationPV(); }

◆ positionPRD()

Amg::Vector3D PRDHandleBase::positionPRD ( ) const
inherited

Definition at line 303 of file PRDHandleBase.cxx.

304 {
305  return Imp::positionPRD(getPRD());
306 }

◆ positionSecondPRD()

Amg::Vector3D PRDHandleBase::positionSecondPRD ( ) const
inherited

Definition at line 309 of file PRDHandleBase.cxx.

310 {
311  return Imp::positionPRD(getSecondPRD());
312 }

◆ regionIndex()

int PRDHandle_CSC_Strip::regionIndex ( )
virtual

Reimplemented from PRDHandleBase.

Definition at line 110 of file PRDHandle_CSC_Strip.cxx.

111 {
112  //Unique for each station.
114  return station->getPhiIndex()-99999*station->getEtaIndex();//hopefully unique.
115 }

◆ sepDetailed()

SoSeparator * PRDHandleBase::sepDetailed ( ) const
inherited

Definition at line 60 of file PRDHandleBase.cxx.

61 {
62  return m_d->sepDetailed;
63 }

◆ sepSimple()

SoSeparator * PRDHandleBase::sepSimple ( ) const
inherited

Definition at line 54 of file PRDHandleBase.cxx.

55 {
56  return m_d->sepSimple;
57 }

◆ setVisible()

void PRDHandleBase::setVisible ( bool  vis)
inherited

Definition at line 234 of file PRDHandleBase.cxx.

235 {
236  if (vis==m_visible)
237  return;
238  //std::cout<<"Changing visible status from "<<m_visible<<" to "<<vis<<" for: "<<*getPRD()<<std::endl;
239  m_visible=vis;
240  if (vis) {
242  if (inMuonChamber())
244  if (!m_d->sepSimple||!m_d->sepDetailed)
245  m_d->rebuild3DObjects(this);//The call to rebuild also fixes attached state.
246  else
247  m_d->attach3DObjects(this);
248  } else {
250  if (inMuonChamber())
252  m_d->detach3DObjects();
253  }
254 }

◆ transformUsesSurfacePositionOnly()

virtual bool PRDHandleBase::transformUsesSurfacePositionOnly ( ) const
inlinevirtualinherited

Reimplemented in PRDHandle_MDT, and PRDHandle_TRT.

Definition at line 47 of file PRDHandleBase.h.

47 { return false; }//Override and return true if should use just the surface position.

◆ update3DObjects()

void PRDHandleBase::update3DObjects ( )
inherited

Definition at line 257 of file PRDHandleBase.cxx.

257  {
258  //Fixme: If selected we really need to redo selection updates!!!
259  if (m_visible) {
260  m_d->rebuild3DObjects(this);
261  } else {
262  //Simply clear the present 3D objects. They will only be recreated if/when the prd becomes visible again.
263  if (m_d->sepDetailed) {
264  m_d->sepDetailed->unref();
265  m_d->sepDetailed = 0;
266  }
267  if (m_d->sepSimple) {
268  m_d->sepSimple->unref();
269  m_d->sepSimple = 0;
270  }
271  }
272 
273 }

◆ updateMaterial()

void PRDHandleBase::updateMaterial ( )
inherited

Definition at line 160 of file PRDHandleBase.cxx.

161 {
162  //We need to change the current material. This means we need to
163  //clear the cache. Only if we are visible do we need to do a
164  //detach->clear material->attach cycle to trigger attachment under new material.
165 
166  if (!m_d->currentmaterial)
167  return;//We have no material cached and is thus not attached either.
168  if (m_visible) {
169  //See if the material changed. If it did, detach, update the material, attach again.
170  SoMaterial * newmat = m_d->determineMaterial(this);
171  newmat->ref();
172  if (newmat!=m_d->currentmaterial) {
173  m_d->detach3DObjects();
174  m_d->currentmaterial->unref();
175  m_d->currentmaterial = newmat;
176  m_d->attach3DObjects(this);
177  } else {
178  newmat->unref();
179  }
180  } else {
181  //Just clear material.
182  m_d->currentmaterial->unref();
183  m_d->currentmaterial = 0;
184  }
185 }

◆ visible()

bool PRDHandleBase::visible ( ) const
inlineinherited

Definition at line 42 of file PRDHandleBase.h.

42 { return m_visible; }

Member Data Documentation

◆ m_common

PRDSysCommonData* PRDHandleBase::m_common
privateinherited

Definition at line 84 of file PRDHandleBase.h.

◆ m_csc

const Muon::CscStripPrepData* PRDHandle_CSC_Strip::m_csc
private

Definition at line 33 of file PRDHandle_CSC_Strip.h.

◆ m_d

Imp* PRDHandleBase::m_d
privateinherited

Definition at line 83 of file PRDHandleBase.h.

◆ m_visible

bool PRDHandleBase::m_visible
privateinherited

Definition at line 86 of file PRDHandleBase.h.


The documentation for this class was generated from the following files:
Muon::CscStripPrepData::samplingTime
unsigned short samplingTime() const
return the sampling time in ns: the time between samplings
Definition: CscStripPrepData.h:173
PRDHandleBase::Imp::rebuild3DObjects
void rebuild3DObjects(PRDHandleBase *)
Definition: PRDHandleBase.cxx:92
checkFileSG.line
line
Definition: checkFileSG.py:75
Amg::Rotation3D
Eigen::Quaternion< double > Rotation3D
Definition: GeoPrimitives.h:43
PRDHandleBase::Imp::sepSimple
SoSeparator * sepSimple
Definition: PRDHandleBase.cxx:45
PRDHandleBase::Imp::positionPRD
static Amg::Vector3D positionPRD(const Trk::PrepRawData *prd)
Definition: PRDHandleBase.cxx:288
PRDHandle_CSC_Strip::m_csc
const Muon::CscStripPrepData * m_csc
Definition: PRDHandle_CSC_Strip.h:33
TouchedMuonChamberHelper::incrementNumberOfObjectsForPV
void incrementNumberOfObjectsForPV(const GeoPVConstLink &chamberPV)
Definition: TouchedMuonChamberHelper.cxx:59
PRDHandle_CSC_Strip::csc
const Muon::CscStripPrepData * csc() const
Definition: PRDHandle_CSC_Strip.h:22
PRDSysCommonData::touchedMuonChamberHelper
TouchedMuonChamberHelper * touchedMuonChamberHelper() const
Definition: PRDSysCommonData.h:86
PRDHandleBase::Imp::sepDetailed
SoSeparator * sepDetailed
Definition: PRDHandleBase.cxx:44
Amg::Vector2D
Eigen::Matrix< double, 2, 1 > Vector2D
Definition: GeoPrimitives.h:48
max
constexpr double max()
Definition: ap_fixedTest.cxx:33
mat
GeoMaterial * mat
Definition: LArDetectorConstructionTBEC.cxx:55
PRDHandleBase::collHandle
PRDCollHandleBase * collHandle() const
Definition: PRDHandleBase.cxx:228
yodamerge_tmp.axis
list axis
Definition: yodamerge_tmp.py:241
PRDHandleBase::positionPRD
Amg::Vector3D positionPRD() const
Definition: PRDHandleBase.cxx:303
skel.it
it
Definition: skel.GENtoEVGEN.py:396
Trk::PrepRawData::rdoList
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
Trk::Surface::center
const Amg::Vector3D & center() const
Returns the center position of the Surface.
PRDHandleBase::Imp::attach3DObjects
void attach3DObjects(PRDHandleBase *)
Definition: PRDHandleBase.cxx:188
Muon::CscStripPrepData::detectorElement
virtual const MuonGM::CscReadoutElement * detectorElement() const override final
return the detector element corresponding to this PRD The pointer will be zero if the det el is not d...
Definition: CscStripPrepData.h:153
PRDHandleBase::common
PRDSysCommonData * common() const
Definition: PRDHandleBase.h:53
PRDHandleBase::m_d
Imp * m_d
Definition: PRDHandleBase.h:82
PRDHandleBase::m_visible
bool m_visible
Definition: PRDHandleBase.h:86
MuonGM::CscReadoutElement::stripLength
double stripLength(int chamberLayer, int measuresPhi, int stripNumber, double &epsilon) const
Definition: CscReadoutElement.cxx:292
PRDHandleBase::Imp::currentmaterial
SoMaterial * currentmaterial
Definition: PRDHandleBase.cxx:46
PRDCollHandleBase::decrementNShownHandles
void decrementNShownHandles()
Definition: PRDCollHandleBase.h:125
PRDSysCommonData::nodeManager
HitsSoNodeManager * nodeManager() const
Definition: PRDSysCommonData.h:79
python.setupRTTAlg.size
int size
Definition: setupRTTAlg.py:39
PRDCollHandleBase
Definition: PRDCollHandleBase.h:25
MuonGM::MuonStation::getPhiIndex
int getPhiIndex() const
a la AMDB
Definition: MuonStation.h:162
Amg::getTranslationVectorFromTransform
Amg::Vector3D getTranslationVectorFromTransform(const Amg::Transform3D &tr)
Get the Translation vector out of a Transformation.
Definition: GeoPrimitivesHelpers.h:225
SoTransparency::initClass
static void initClass()
Definition: SoTransparency.cxx:29
lumiFormat.i
int i
Definition: lumiFormat.py:85
Amg::getRotation3DfromAngleAxis
Amg::Rotation3D getRotation3DfromAngleAxis(double angle, Amg::Vector3D &axis)
get a AngleAxis from an angle and an axis.
Definition: GeoPrimitivesHelpers.h:237
Muon::CscStripPrepData::samplingPhase
bool samplingPhase() const
return the sampling phase
Definition: CscStripPrepData.h:178
PRDHandleBase::getSecondPRD
virtual const Trk::PrepRawData * getSecondPRD() const
Definition: PRDHandleBase.h:73
PRDHandleBase::Imp::colhandle
PRDCollHandleBase * colhandle
Definition: PRDHandleBase.cxx:36
PRDHandleBase::parentMuonChamberPV
virtual GeoPVConstLink parentMuonChamberPV() const
Definition: PRDHandleBase.h:68
MuonGM::MuonReadoutElement::parentMuonStation
const MuonStation * parentMuonStation() const
Definition: MuonDetDescr/MuonReadoutGeometry/src/MuonReadoutElement.cxx:135
Amg::Transform3D
Eigen::Affine3d Transform3D
Definition: GeoPrimitives.h:46
MuonGM::MuonStation
Definition: MuonStation.h:51
Amg::transform
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
Definition: GeoPrimitivesHelpers.h:156
HitsSoNodeManager::getShapeNode_Strip
SoNode * getShapeNode_Strip(double length, double width=0, double depth=0)
Definition: HitsSoNodeManager.cxx:269
Trk::TrkDetElementBase::surface
virtual const Surface & surface() const =0
Return surface associated with this detector element.
hist_file_dump.f
f
Definition: hist_file_dump.py:135
ReadFromCoolCompare.os
os
Definition: ReadFromCoolCompare.py:231
PRDHandleBase::transformUsesSurfacePositionOnly
virtual bool transformUsesSurfacePositionOnly() const
Definition: PRDHandleBase.h:47
Trk::PrepRawData
Definition: PrepRawData.h:62
Trk::PrepRawData::identify
Identifier identify() const
return the identifier
AtlasDetectorID::print_to_string
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
Definition: AtlasDetectorID.cxx:655
PRDHandleBase::getPRD
virtual const Trk::PrepRawData * getPRD() const =0
PlotCalibFromCool.en
en
Definition: PlotCalibFromCool.py:399
PRDHandleBase::Imp::detach3DObjects
void detach3DObjects()
Definition: PRDHandleBase.cxx:209
Trk::PrepRawData::localPosition
const Amg::Vector2D & localPosition() const
return the local position reference
charge
double charge(const T &p)
Definition: AtlasPID.h:756
Amg::Vector3D
Eigen::Matrix< double, 3, 1 > Vector3D
Definition: GeoPrimitives.h:47
python.SystemOfUnits.mm
int mm
Definition: SystemOfUnits.py:83
project
T_ResultType project(ParameterMapping::type< N > parameter_map, const T_Matrix &matrix)
Definition: MeasurementSelector.h:142
Muon::CscStripPrepData::globalPosition
const Amg::Vector3D & globalPosition() const
return global position reference
Definition: CscStripPrepData.h:141
TouchedMuonChamberHelper::decrementNumberOfObjectsForPV
void decrementNumberOfObjectsForPV(const GeoPVConstLink &chamberPV)
Definition: TouchedMuonChamberHelper.cxx:73
PRDCollHandle_CSC_Strip
Definition: PRDCollHandle_CSC_Strip.h:10
CscIdHelper
Definition: CscIdHelper.h:52
MuonGM::MuonStation::getEtaIndex
int getEtaIndex() const
a la AMDB
Definition: MuonStation.h:163
Amg::Translation3D
Eigen::Translation< double, 3 > Translation3D
Definition: GeoPrimitives.h:44
HitsSoNodeManager::getShapeNode_Cross
SoNode * getShapeNode_Cross(double extent)
Definition: HitsSoNodeManager.cxx:427
PRDHandleBase::Imp::determineMaterial
SoMaterial * determineMaterial(PRDHandleBase *)
Definition: PRDHandleBase.cxx:398
PRDCollHandleBase::incrementNShownHandles
void incrementNShownHandles()
Definition: PRDCollHandleBase.h:124
VP1DetInfo::cscIDHelper
static const CscIdHelper * cscIDHelper()
Definition: VP1DetInfo.cxx:158
CscIdHelper::measuresPhi
bool measuresPhi(const Identifier &id) const override
Definition: CscIdHelper.cxx:774
Trk::Surface
Definition: Tracking/TrkDetDescr/TrkSurfaces/TrkSurfaces/Surface.h:75
PRDHandleBase::inMuonChamber
virtual bool inMuonChamber() const
Definition: PRDHandleBase.h:67
Trk::Surface::transform
const Amg::Transform3D & transform() const
Returns HepGeom::Transform3D by reference.
VP1LinAlgUtils::toSoTransform
static SoTransform * toSoTransform(const HepGeom::Transform3D &, SoTransform *t=0)
Definition: VP1LinAlgUtils.cxx:40
TileDCSDataPlotter.tx
tx
Definition: TileDCSDataPlotter.py:878
PRDHandleBase::m_common
PRDSysCommonData * m_common
Definition: PRDHandleBase.h:84
MuonGM::MuonReadoutElement::parentStationPV
PVConstLink parentStationPV() const
Definition: MuonDetDescr/MuonReadoutGeometry/src/MuonReadoutElement.cxx:100
PRDHandleBase::PRDHandleBase
PRDHandleBase(PRDCollHandleBase *)
Definition: PRDHandleBase.cxx:66
Trk::Surface::localToGlobal
virtual void localToGlobal(const Amg::Vector2D &locp, const Amg::Vector3D &mom, Amg::Vector3D &glob) const =0
Specified by each surface type: LocalToGlobal method without dynamic memory allocation.
CscIdHelper::chamberLayer
int chamberLayer(const Identifier &id) const
Definition: CscIdHelper.cxx:770
Muon::CscStripPrepData::timeOfFirstSample
double timeOfFirstSample() const
return the time of the first sample
Definition: CscStripPrepData.h:168
Muon::CscStripPrepData::sampleCharges
const std::vector< float > & sampleCharges() const
Return the time samples.
Definition: CscStripPrepData.h:163
Trk::PrepRawData::detectorElement
virtual const TrkDetElementBase * detectorElement() const =0
return the detector element corresponding to this PRD The pointer will be zero if the det el is not d...
Identifier
Definition: IdentifierFieldParser.cxx:14
MuonGM::CscReadoutElement::cathodeReadoutPitch
double cathodeReadoutPitch(int chLayer, int measuresPhi) const
Definition: CscReadoutElement.cxx:147