|
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
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)
virtual const Trk::PlaneSurface & surface() const override
access to chamber surface (phi orientation), uses the first gas gap
@ u
Enums for curvilinear frames.
std::vector< const sTgcPrepDataCollection * > stgcs
static const std::string & regionName(DetectorRegionIndex index)
convert DetectorRegionIndex into a string
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 Amg::Vector3D & globalPosition() const
Returns the global position of the CENTER of the drift tube (i.e.
static const std::string & layerName(LayerIndex index)
convert LayerIndex into a string
struct holding RIO_OnTracks for a given layer
Identifier identify() const
return the identifier
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
virtual Intersection straightLineIntersection(const Amg::Vector3D &pos, const Amg::Vector3D &dir, bool forceDir, Trk::BoundaryCheck bchk) const override final
fast straight line intersection schema - standard: provides closest intersection and (signed) path le...
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::MuonClusterReadoutElement * detectorElement() const override=0
Returns the detector element corresponding to this PRD.
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.