  | 
  
    ATLAS Offline Software
    
   | 
 
 
 
 
Go to the documentation of this file.
   30         declareInterface<IMuonClusterOnTrackCreator>(
this);
 
   31         declareInterface<IRIO_OnTrackCreator>(
this);
 
   40             ATH_MSG_ERROR(
"The given detector layout does not contain any CSC chamber, "<<
 
   41                           "there must be something wrong in the configuration," 
   42                           <<
" since the CscClusterOnTrackCreator cannot be needed.");
 
   43             return StatusCode::FAILURE;
 
   52         return StatusCode::SUCCESS;
 
   62             ATH_MSG_WARNING(
"RIO does not have associated detectorElement!, cannot produce ROT");
 
   79         double positionAlongStrip = 0;
 
   81         if (!
EL->surface(RIO.
identify()).globalToLocal(GP, GP, lp)) {
 
   83             ATH_MSG_WARNING(
"Extrapolated GlobalPosition not on detector surface! Distance " << lpos.z());
 
   95             loce = Trk::ErrorScalingCast<MuonEtaPhiRIO_OnTrackErrorScaling>(
 
  123             ATH_MSG_WARNING(
"CscClusterOnTrackCreator::createRIO_OnTrack is called by the other muon tech");
 
  131             ATH_MSG_WARNING(
"RIO does not have associated detectorElement!, cannot produce ROT");
 
  155         double positionAlongStrip = 0;
 
  157         if (!
EL->surface(RIO.
identify()).globalToLocal(GP, GP, lp)) {
 
  159             ATH_MSG_WARNING(
"Extrapolated GlobalPosition not on detector surface! Distance " << lpos.z());
 
  171             loce = Trk::ErrorScalingCast<MuonEtaPhiRIO_OnTrackErrorScaling>(
 
  186             double tantheta = 
d.x() / 
d.z();
 
  188             std::vector<ICscClusterFitter::Result> 
results, results0;
 
  192             if (
results.empty() || results0.empty()) {
 
  203                                 << 
"cluStatus: " << 
res.clusterStatus << 
"fitStatus: " << 
res.fitStatus);
 
  211                             << 
" :: tanangle :  " << tantheta);
 
  218             double nominal_error = 
res.dposition;
 
  219             double errorCorrected =
 
  224             newloce.setIdentity();
 
  225             newloce *= errorCorrected * errorCorrected;
 
  229                     Trk::ErrorScalingCast<MuonEtaPhiRIO_OnTrackErrorScaling>(
 
  231                         ->getScaledCovariance(std::move(newloce), 
Trk::distPhi);
 
  
virtual const Amg::Transform3D & transform() const override
Return local to global transform.
 
Eigen::Matrix< double, Eigen::Dynamic, Eigen::Dynamic > MatrixX
Dynamic Matrix - dynamic allocation.
 
virtual const Amg::Vector3D & globalPosition() const override
Returns global position.
 
ServiceHandle< Muon::IMuonIdHelperSvc > m_idHelperSvc
 
MuonPrepDataCollection< CscStripPrepData > CscStripPrepDataCollection
 
ToolHandle< ICscClusterFitter > m_clusterFitter
 
const Amg::Vector3D & position() const
Access method for the position.
 
Eigen::Matrix< double, 2, 1 > Vector2D
 
const Amg::MatrixX & localCovariance() const
return const ref to the error matrix
 
CscClusterOnTrackCreator(const std::string &, const std::string &, const IInterface *)
 
virtual ~CscClusterOnTrackCreator()
 
#define ATH_MSG_VERBOSE(x)
 
const std::string & key() const
Return the StoreGate ID for the referenced object.
 
NRpcCablingAlg reads raw condition data and writes derived condition data to the condition store.
 
virtual MuonClusterOnTrack * correct(const Trk::PrepRawData &RIO, const Trk::TrackParameters &TP, const EventContext &) const override
Create new Muon::MuonClusterOnTrack from a Trk::PrepRawData and the predicted Trk::TrackParameter at ...
 
virtual const ToolHandle< ICscClusterUtilTool > & GetICscClusterUtilTool() const override
 
std::pair< double, ParamDefs > DefinedParameter
 
ToolHandle< ICscClusterUtilTool > m_clusterUtilTool
 
CscTimeStatus timeStatus() const
Returns the Csc time status flag.
 
Class representing the raw data of one CSC strip (for clusters look at Muon::CscPrepData).
 
Gaudi::Property< double > m_minimumError
 
Class representing clusters from the CSC.
 
::StatusCode StatusCode
StatusCode definition for legacy code.
 
Eigen::Affine3d Transform3D
 
CscClusterStatus status() const
Returns the Csc status (position measurement) flag.
 
std::pair< std::vector< unsigned int >, bool > res
 
virtual const Surface & surface() const =0
Return surface associated with this detector element.
 
double time() const
Returns the time.
 
This module defines the arguments passed from the BATCH driver to the BATCH worker.
 
virtual const ToolHandle< ICscStripFitter > & GetICscStripFitter() const override
These functions are provided from the interface.
 
SG::ReadCondHandleKey< RIO_OnTrackErrorScaling > m_cscErrorScalingKey
 
MuonPrepDataContainerT< CscStripPrepData > CscStripPrepDataContainer
 
virtual const ToolHandle< ICscClusterFitter > & GetICscClusterFitter() const override
 
virtual const MuonGM::CscReadoutElement * detectorElement() const override final
Return the detector element corresponding to this PRD.
 
Identifier identify() const
return the identifier
 
@ CscStatusUnspoiled
Clean cluster with precision fit.
 
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 ...
 
Gaudi::Property< double > m_errorScalerBeta
 
const Amg::Vector2D & localPosition() const
return the local position reference
 
StatusCode initialize(bool used=true)
 
Eigen::Matrix< double, 3, 1 > Vector3D
 
const Amg::Vector3D & momentum() const
Access method for the momentum.
 
Class to represent the calibrated clusters created from CSC strips.
 
@ CscStatusSplitUnspoiled
Clean cluster with precision fit after split cluster.
 
#define ATH_MSG_WARNING(x)
 
Gaudi::Property< double > m_errorScaler
 
ToolHandle< ICscStripFitter > m_stripFitter
 
virtual StatusCode initialize() override
 
virtual MuonClusterOnTrack * createRIO_OnTrack(const Trk::PrepRawData &RIO, const Amg::Vector3D &GP) const override
Create new Muon::MuonClusterOnTrack from a Trk::PrepRawData and a predicted Trk::TrackParameter.
 
const Amg::Transform3D & transform() const
Returns HepGeom::Transform3D by reference.
 
Polygon globalToLocal(const Polygon &pol, float z, const Trk::PlaneSurface &surf)
 
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...