 |
ATLAS Offline Software
|
Go to the documentation of this file.
13 m_distanceToTubeCut(1000.),
14 m_secondCoordinateCut(1500.)
16 declareInterface<IMuonPRDSelectionTool>(
this);
24 return StatusCode::SUCCESS;
34 <<
" phi " <<
intersection.trackParameters->position().phi()
45 if( !layerPrepRawData.
mms.empty() )
msg(
MSG::DEBUG) <<
" MMs " << layerPrepRawData.
mms.size();
50 for(
const auto *col : layerPrepRawData.
mdts ){
55 for(
const auto *col : layerPrepRawData.
rpcs ){
60 for(
const auto *col : layerPrepRawData.
tgcs ){
65 for(
const auto *col : layerPrepRawData.
stgcs ){
70 for(
const auto *col : layerPrepRawData.
mms ){
97 double distanceAlongTube = localPosition[
Trk::locZ];
115 if( distanceAlongTube > tubeHalfLen ){
116 localPosition[
Trk::locZ] = distanceAlongTube < 0 ? -tubeHalfLen : tubeHalfLen;
186 double denom = direction.dot(planenormal);
187 double u = (planenormal.dot(planeposition - position))/
denom;
virtual Amg::Transform3D AmdbLRSToGlobalTransform() const
Intersection straightLineIntersection(const T &pars, bool forceDir=false, const Trk::BoundaryCheck &bchk=false) const
fst straight line intersection schema - templated for charged and neutral parameters
Eigen::Matrix< double, 2, 1 > Vector2D
bool msgLvl(const MSG::Level lvl) const
@ loc2
generic first and second local coordinate
std::vector< const TgcPrepDataCollection * > tgcs
Struct to hold all PrepRawData collections in a given layer.
#define ATH_MSG_VERBOSE(x)
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
std::vector< std::string > intersection(std::vector< std::string > &v1, std::vector< std::string > &v2)
@ u
Enums for curvilinear frames.
std::vector< const sTgcPrepDataCollection * > stgcs
std::vector< const MdtPrepDataCollection * > mdts
::StatusCode StatusCode
StatusCode definition for legacy code.
double getActiveTubeLength(const int tubeLayer, const int tube) const
Eigen::Affine3d Transform3D
virtual const Surface & surface() const =0
Return surface associated with this detector element.
virtual const Amg::Vector3D & globalPosition() const
Returns the global position of the CENTER of the drift tube (i.e.
struct holding RIO_OnTracks for a given layer
Identifier identify() const
return the identifier
const std::string & layerName(LayerIndex index)
convert LayerIndex into a string
double error(const Amg::MatrixX &mat, int index)
return diagonal error of the matrix caller should ensure the matrix is symmetric and the index is in ...
This class represents the corrected MDT measurements, where the corrections include the effects of wi...
Class to represent measurements from the Monitored Drift Tubes.
virtual bool insideBounds(const Amg::Vector2D &locpos, double tol1=0., double tol2=0.) const =0
virtual methods to be overwritten by the inherited surfaces
Eigen::Matrix< double, 3, 1 > Vector3D
const std::string & regionName(DetectorRegionIndex index)
convert DetectorRegionIndex into a string
std::vector< const CscPrepDataCollection * > cscs
virtual bool globalToLocal(const Amg::Vector3D &glob, const Amg::Vector3D &mom, Amg::Vector2D &loc) const =0
Specified by each surface type: GlobalToLocal method without dynamic memory allocation - boolean chec...
std::optional< double > intersect(const AmgVector(N)&posA, const AmgVector(N)&dirA, const AmgVector(N)&posB, const AmgVector(N)&dirB)
Calculates the point B' along the line B that's closest to a second line A.
std::vector< const RpcPrepDataCollection * > rpcs
virtual const Trk::Surface & surface() const override final
Return surface associated with this detector element.
std::vector< const MMPrepDataCollection * > mms
Class representing clusters in the muon system.
virtual const MuonGM::MdtReadoutElement * detectorElement() const override
Returns the detector element corresponding to this PRD.
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.
Base class for Muon cluster RIO_OnTracks.
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...