|
ATLAS Offline Software
|
#include <PRDHandle_CSC_Strip.h>
Definition at line 13 of file PRDHandle_CSC_Strip.h.
◆ PRDHandle_CSC_Strip()
◆ ~PRDHandle_CSC_Strip()
virtual PRDHandle_CSC_Strip::~PRDHandle_CSC_Strip |
( |
| ) |
|
|
inlinevirtual |
◆ 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.
40 SoSeparator * errDetailed =
new SoSeparator;
41 SoSeparator * errSimple =
new SoSeparator;
42 shape_simple = errSimple;
48 errSimple->addChild(
line);
49 errSimple->addChild(
common()->nodeManager()->getShapeNode_Cross(10));
50 const double maxCharge = 1e5;
62 if (charges.size() == 0 )
65 errDetailed->addChild(
common()->nodeManager()->getShapeNode_Strip(striplength,
69 SoSeparator * rdos =
new SoSeparator;
76 double chargeLength=striplength/
static_cast<double>(charges.size());
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();
83 SoTranslation * localtrans =
new SoTranslation;
84 localtrans->translation.setValue(0.0,ypos,0.0);
85 rdos->addChild(localtrans);
87 for( std::vector<float>::const_iterator
it = st;
it!=
en; ++
it, ++
i){
90 const double stripHeightCharge = (1.0 + 4*sqrt(
charge/maxCharge))*
CLHEP::mm;
94 SoTranslation * localtrans2 =
new SoTranslation;
95 localtrans2->translation.setValue(0.0,chargeLength,0.0);
96 rdos->addChild(localtrans2);
99 errDetailed->addChild(rdos);
101 SoMaterial *
mat =
new SoMaterial;
102 mat->diffuseColor.setValue(1.0,0,0);
103 errDetailed->addChild(
mat);
106 shape_detailed = errDetailed;
◆ center()
◆ clicked()
QStringList PRDHandle_CSC_Strip::clicked |
( |
| ) |
const |
|
virtual |
Reimplemented from PRDHandleBase.
Definition at line 118 of file PRDHandle_CSC_Strip.cxx.
122 return QStringList(
"Null PRD");
125 return QStringList(
"Null PRD");
128 std::ostringstream
os;
129 os <<
"CscStripPrepData with Identifier ["<<
id<<
"] = ["<<idhelper->
print_to_string(
id)
131 os <<
". Samples = [";
136 os <<
". RDO list= [";
142 return QString(
os.str().c_str()).split(
"\n");
◆ collHandle()
◆ common()
◆ createTransform()
SoTransform * PRDHandleBase::createTransform |
( |
| ) |
const |
|
virtualinherited |
Reimplemented in PRDHandle_sTGC, and PRDHandle_TGC.
Definition at line 371 of file PRDHandleBase.cxx.
376 std::cerr<<
"PRDHandleBase::createTransform() No prd!"<<std::endl;
377 return new SoTransform;
390 if ((theHitGPos)[0]!=(theHitGPos)[0] || (theHitGPos)[1]!=(theHitGPos)[1] || (theHitGPos)[2]!=(theHitGPos)[2]){
391 std::cerr<<
"PRDHandleBase::createTransform() NaN in globalposition"<<std::endl;
393 theHitTransform->translation.setValue((theHitGPos)[0], (theHitGPos)[1], (theHitGPos)[2]);
394 return theHitTransform;
◆ csc()
◆ getPRD()
◆ getSecondPRD()
◆ getTransform_CLHEP()
Definition at line 322 of file PRDHandleBase.cxx.
330 transform->translation.getValue().getValue(
tx,ty,tz);
333 transform->rotation.getValue().getValue(so_rotaxis, so_rotangle);
335 so_rotaxis.getValue(rx,ry,rz);
343 std::cout<<
"VP1 PRDHandleBase Warning: getTransform_CLHEP called at inopportune moment!!"<<std::endl;
349 return Amg::Transform3D::Identity();
◆ highLight()
virtual bool PRDHandleBase::highLight |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ inMuonChamber()
bool PRDHandle_CSC_Strip::inMuonChamber |
( |
| ) |
const |
|
inlinevirtual |
◆ isSane()
virtual bool PRDHandleBase::isSane |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ parentMuonChamberPV()
GeoPVConstLink PRDHandle_CSC_Strip::parentMuonChamberPV |
( |
| ) |
const |
|
inlinevirtual |
◆ positionPRD()
◆ positionSecondPRD()
◆ regionIndex()
int PRDHandle_CSC_Strip::regionIndex |
( |
| ) |
|
|
virtual |
◆ sepDetailed()
SoSeparator * PRDHandleBase::sepDetailed |
( |
| ) |
const |
|
inherited |
◆ sepSimple()
SoSeparator * PRDHandleBase::sepSimple |
( |
| ) |
const |
|
inherited |
◆ setVisible()
void PRDHandleBase::setVisible |
( |
bool |
vis | ) |
|
|
inherited |
◆ transformUsesSurfacePositionOnly()
virtual bool PRDHandleBase::transformUsesSurfacePositionOnly |
( |
| ) |
const |
|
inlinevirtualinherited |
◆ update3DObjects()
void PRDHandleBase::update3DObjects |
( |
| ) |
|
|
inherited |
◆ updateMaterial()
void PRDHandleBase::updateMaterial |
( |
| ) |
|
|
inherited |
◆ visible()
bool PRDHandleBase::visible |
( |
| ) |
const |
|
inlineinherited |
◆ m_common
◆ m_csc
◆ m_d
◆ m_visible
bool PRDHandleBase::m_visible |
|
privateinherited |
The documentation for this class was generated from the following files:
unsigned short samplingTime() const
return the sampling time in ns: the time between samplings
void rebuild3DObjects(PRDHandleBase *)
Eigen::Quaternion< double > Rotation3D
static Amg::Vector3D positionPRD(const Trk::PrepRawData *prd)
const Muon::CscStripPrepData * m_csc
void incrementNumberOfObjectsForPV(const GeoPVConstLink &chamberPV)
const Muon::CscStripPrepData * csc() const
TouchedMuonChamberHelper * touchedMuonChamberHelper() const
SoSeparator * sepDetailed
Eigen::Matrix< double, 2, 1 > Vector2D
PRDCollHandleBase * collHandle() const
Amg::Vector3D positionPRD() const
const std::vector< Identifier > & rdoList() const
return the List of rdo identifiers (pointers)
const Amg::Vector3D & center() const
Returns the center position of the Surface.
void attach3DObjects(PRDHandleBase *)
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...
PRDSysCommonData * common() const
double stripLength(int chamberLayer, int measuresPhi, int stripNumber, double &epsilon) const
SoMaterial * currentmaterial
void decrementNShownHandles()
HitsSoNodeManager * nodeManager() const
int getPhiIndex() const
a la AMDB
Amg::Vector3D getTranslationVectorFromTransform(const Amg::Transform3D &tr)
Get the Translation vector out of a Transformation.
Amg::Rotation3D getRotation3DfromAngleAxis(double angle, Amg::Vector3D &axis)
get a AngleAxis from an angle and an axis.
bool samplingPhase() const
return the sampling phase
virtual const Trk::PrepRawData * getSecondPRD() const
PRDCollHandleBase * colhandle
virtual GeoPVConstLink parentMuonChamberPV() const
const MuonStation * parentMuonStation() const
Eigen::Affine3d Transform3D
Amg::Vector3D transform(Amg::Vector3D &v, Amg::Transform3D &tr)
Transform a point from a Trasformation3D.
SoNode * getShapeNode_Strip(double length, double width=0, double depth=0)
virtual const Surface & surface() const =0
Return surface associated with this detector element.
virtual bool transformUsesSurfacePositionOnly() const
Identifier identify() const
return the identifier
std::string print_to_string(Identifier id, const IdContext *context=0) const
or provide the printout in string form
virtual const Trk::PrepRawData * getPRD() const =0
const Amg::Vector2D & localPosition() const
return the local position reference
double charge(const T &p)
Eigen::Matrix< double, 3, 1 > Vector3D
T_ResultType project(ParameterMapping::type< N > parameter_map, const T_Matrix &matrix)
const Amg::Vector3D & globalPosition() const
return global position reference
void decrementNumberOfObjectsForPV(const GeoPVConstLink &chamberPV)
int getEtaIndex() const
a la AMDB
Eigen::Translation< double, 3 > Translation3D
SoNode * getShapeNode_Cross(double extent)
SoMaterial * determineMaterial(PRDHandleBase *)
void incrementNShownHandles()
static const CscIdHelper * cscIDHelper()
bool measuresPhi(const Identifier &id) const override
virtual bool inMuonChamber() const
const Amg::Transform3D & transform() const
Returns HepGeom::Transform3D by reference.
static SoTransform * toSoTransform(const HepGeom::Transform3D &, SoTransform *t=0)
PRDSysCommonData * m_common
PVConstLink parentStationPV() const
PRDHandleBase(PRDCollHandleBase *)
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.
int chamberLayer(const Identifier &id) const
double timeOfFirstSample() const
return the time of the first sample
const std::vector< float > & sampleCharges() const
Return the time samples.
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...
double cathodeReadoutPitch(int chLayer, int measuresPhi) const