![Logo](../../ATLAS-Logo-Square-Blue-RGB.png) |
ATLAS Offline Software
|
#include <MuonSegmentConverterTool.h>
|
| MuonSegmentConverterTool (const std::string &, const std::string &, const IInterface *) |
| default AlgTool constructor More...
|
|
| ~MuonSegmentConverterTool () |
| destructor More...
|
|
StatusCode | initialize () |
| initialize method, method taken from bass-class AlgTool More...
|
|
xAOD::MuonSegment * | convert (const ElementLink< ::Trk::SegmentCollection > &segLink, xAOD::MuonSegmentContainer *container=0) const |
| convert a ElementLink to a Trk::Segment (should be of type MuonSegment) to a xAOD::MuonSegment, the segment is add to the container if provided so the caller should not delete it More...
|
|
xAOD::MuonSegment * | convert (const MuonSegment &seg, xAOD::MuonSegmentContainer *container=0) const |
| convert a Muon::MuonSegment to a xAOD::MuonSegment, the segment is add to the container if provided so the caller should not delete it More...
|
|
ServiceHandle< StoreGateSvc > & | evtStore () |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | evtStore () const |
| The standard StoreGateSvc (event store) Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
const ServiceHandle< StoreGateSvc > & | detStore () const |
| The standard StoreGateSvc/DetectorStore Returns (kind of) a pointer to the StoreGateSvc . More...
|
|
virtual StatusCode | sysInitialize () override |
| Perform system initialization for an algorithm. More...
|
|
virtual StatusCode | sysStart () override |
| Handle START transition. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | inputHandles () const override |
| Return this algorithm's input handles. More...
|
|
virtual std::vector< Gaudi::DataHandle * > | outputHandles () const override |
| Return this algorithm's output handles. More...
|
|
Gaudi::Details::PropertyBase & | declareProperty (Gaudi::Property< T > &t) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKey &hndl, const std::string &doc, const SG::VarHandleKeyType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleBase &hndl, const std::string &doc, const SG::VarHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, SG::VarHandleKeyArray &hndArr, const std::string &doc, const SG::VarHandleKeyArrayType &) |
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc, const SG::NotHandleType &) |
| Declare a new Gaudi property. More...
|
|
Gaudi::Details::PropertyBase * | declareProperty (const std::string &name, T &property, const std::string &doc="none") |
| Declare a new Gaudi property. More...
|
|
void | updateVHKA (Gaudi::Details::PropertyBase &) |
|
MsgStream & | msg () const |
|
MsgStream & | msg (const MSG::Level lvl) const |
|
bool | msgLvl (const MSG::Level lvl) const |
|
Definition at line 26 of file MuonSegmentConverterTool.h.
◆ StoreGateSvc_t
◆ MuonSegmentConverterTool()
Muon::MuonSegmentConverterTool::MuonSegmentConverterTool |
( |
const std::string & |
t, |
|
|
const std::string & |
n, |
|
|
const IInterface * |
p |
|
) |
| |
default AlgTool constructor
Definition at line 25 of file MuonSegmentConverterTool.cxx.
27 declareInterface<xAODMaker::IMuonSegmentConverterTool>(
this);
◆ ~MuonSegmentConverterTool()
Muon::MuonSegmentConverterTool::~MuonSegmentConverterTool |
( |
| ) |
|
|
inline |
◆ addClusterTiming()
helper function to dress output segment with cluster hit timing information
Definition at line 64 of file MuonSegmentConverterTool.cxx.
68 std::vector<const MuonClusterOnTrack*>
clusters;
73 if (!
id.is_valid() || !
m_idHelperSvc->isTrigger(
id))
continue;
76 const MuonClusterOnTrack* clus =
dynamic_cast<const MuonClusterOnTrack*
>(meas);
80 const CompetingMuonClustersOnTrack* crot =
dynamic_cast<const CompetingMuonClustersOnTrack*
>(meas);
81 if (!crot || crot->containedROTs().empty())
continue;
82 clusters.insert(
clusters.end(), crot->containedROTs().begin(), crot->containedROTs().end());
93 ATH_MSG_WARNING(
"Unphysical time returned by tool - ignoring. result.valid = "
97 acc_clusterTimeValid(xaodSeg) = 0;
99 acc_clusterTime(xaodSeg) =
result.time;
100 acc_clusterTimeError(xaodSeg) =
result.error;
101 acc_clusterTimeValid(xaodSeg) =
result.valid;
◆ convert() [1/2]
◆ convert() [2/2]
convert a Muon::MuonSegment to a xAOD::MuonSegment, the segment is add to the container if provided so the caller should not delete it
NSW
Implements xAODMaker::IMuonSegmentConverterTool.
Definition at line 107 of file MuonSegmentConverterTool.cxx.
118 xaodSeg->
setPosition(seg.globalPosition().x(), seg.globalPosition().y(), seg.globalPosition().z());
119 xaodSeg->
setDirection(seg.globalDirection().x(), seg.globalDirection().y(), seg.globalDirection().z());
134 IMuonSegmentHitSummaryTool::HitCounts hitCounts =
m_hitSummaryTool->getHitCounts(seg);
135 xaodSeg->
setNHits(hitCounts.nmdtHits()+ hitCounts.nmmHits() + hitCounts.nstgcHits.netaHits + hitCounts.ncscHits.netaHits,
136 hitCounts.nphiTrigHitLayers + hitCounts.nstgcHits.nphiHits, hitCounts.netaTrigHitLayers);
139 if (seg.hasFittedT0()) xaodSeg->
setT0Error(seg.time(), seg.errorTime());
143 acc_mmStereoHits(*xaodSeg) = hitCounts.nmmStereoHits;
144 acc_mmEtaHits(*xaodSeg) = hitCounts.nmmEtaHits;
147 acc_stgcEtaHits(*xaodSeg) = hitCounts.nstgcHits.netaHits;
148 acc_stgcPhiHits(*xaodSeg) = hitCounts.nstgcHits.nphiHits;
◆ declareGaudiProperty() [1/4]
specialization for handling Gaudi::Property<SG::VarHandleKeyArray>
Definition at line 170 of file AthCommonDataStore.h.
175 hndl.documentation());
◆ declareGaudiProperty() [2/4]
specialization for handling Gaudi::Property<SG::VarHandleKey>
Definition at line 156 of file AthCommonDataStore.h.
161 hndl.documentation());
◆ declareGaudiProperty() [3/4]
specialization for handling Gaudi::Property<SG::VarHandleBase>
Definition at line 184 of file AthCommonDataStore.h.
189 hndl.documentation());
◆ declareGaudiProperty() [4/4]
◆ declareProperty() [1/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleBase
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 245 of file AthCommonDataStore.h.
250 this->declare(hndl.
vhKey());
251 hndl.
vhKey().setOwner(
this);
◆ declareProperty() [2/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
hndl | Object holding the property value. |
doc | Documentation string for the property. |
This is the version for types that derive from SG::VarHandleKey
. The property value object is put on the input and output lists as appropriate; then we forward to the base class.
Definition at line 221 of file AthCommonDataStore.h.
◆ declareProperty() [3/6]
◆ declareProperty() [4/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This is the generic version, for types that do not derive from SG::VarHandleKey
. It just forwards to the base class version of declareProperty
.
Definition at line 333 of file AthCommonDataStore.h.
◆ declareProperty() [5/6]
Declare a new Gaudi property.
- Parameters
-
name | Name of the property. |
property | Object holding the property value. |
doc | Documentation string for the property. |
This dispatches to either the generic declareProperty
or the one for VarHandle/Key/KeyArray.
Definition at line 352 of file AthCommonDataStore.h.
◆ declareProperty() [6/6]
◆ detStore()
◆ evtStore() [1/2]
◆ evtStore() [2/2]
◆ extraDeps_update_handler()
Add StoreName to extra input/output deps as needed.
use the logic of the VarHandleKey to parse the DataObjID keys supplied via the ExtraInputs and ExtraOuputs Properties to add the StoreName if it's not explicitly given
◆ initialize()
StatusCode Muon::MuonSegmentConverterTool::initialize |
( |
| ) |
|
◆ inputHandles()
Return this algorithm's input handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ interfaceID()
static const InterfaceID& Muon::MuonSegmentConverterTool::interfaceID |
( |
| ) |
|
|
inlinestatic |
◆ msg() [1/2]
◆ msg() [2/2]
◆ msgLvl()
◆ outputHandles()
Return this algorithm's output handles.
We override this to include handle instances from key arrays if they have not yet been declared. See comments on updateVHKA.
◆ renounce()
◆ renounceArray()
◆ sysInitialize()
◆ sysStart()
Handle START transition.
We override this in order to make sure that conditions handle keys can cache a pointer to the conditions container.
◆ updateVHKA()
◆ m_detStore
◆ m_edmHelper
Initial value:{
this,
"edmHelper",
"Muon::MuonEDMHelperSvc/MuonEDMHelperSvc",
"Handle to the service providing the IMuonEDMHelperSvc interface",
}
Definition at line 71 of file MuonSegmentConverterTool.h.
◆ m_evtStore
◆ m_hitSummaryTool
Initial value:{
this,
"MuonSegmentHitSummaryTool",
"Muon::MuonSegmentHitSummaryTool/MuonSegmentHitSummaryTool",
}
Definition at line 56 of file MuonSegmentConverterTool.h.
◆ m_hitTimingTool
Initial value:{
this,
"MuonHitTimingTool",
"Muon::MuonHitTimingTool/MuonHitTimingTool",
}
Definition at line 61 of file MuonSegmentConverterTool.h.
◆ m_idHelperSvc
Initial value:{
this,
"MuonIdHelperSvc",
"Muon::MuonIdHelperSvc/MuonIdHelperSvc",
}
Definition at line 66 of file MuonSegmentConverterTool.h.
◆ m_varHandleArraysDeclared
◆ m_vhka
The documentation for this class was generated from the following files:
void setPosition(float x, float y, float z)
Sets the global position.
Scalar eta() const
pseudorapidity method
Gaudi::Details::PropertyBase & declareProperty(Gaudi::Property< T > &t)
StoreGateSvc_t m_evtStore
Pointer to StoreGate (event store by default)
std::vector< SG::VarHandleKeyArray * > m_vhka
Class describing a MuonSegment.
MuonSegment_v1 MuonSegment
Reference the current persistent version:
bool isValid() const
Test to see if the link can be dereferenced.
void setT0Error(float t0, float t0Error)
Sets the time error.
virtual void setOwner(IDataHandleHolder *o)=0
void setNHits(int nPrecisionHits, int nPhiLayers, int nTrigEtaLayers)
Set the number of hits/layers.
Class to represent and store fit qualities from track reconstruction in terms of and number of degre...
StoreGateSvc_t m_detStore
Pointer to StoreGate (detector store by default)
virtual void renounce()=0
std::conditional< std::is_base_of< SG::VarHandleKeyArray, T >::value, VarHandleKeyArrayType, type2 >::type type
void setMuonSegment(const ElementLink< ::Trk::SegmentCollection > &segment)
std::string to_string(const DetectorType &type)
value_type push_back(value_type pElem)
Add an element to the end of the collection.
void makePrivateStore()
Create a new (empty) private store for this object.
#define ATH_MSG_WARNING(x)
void setIdentifier(int sector, ::Muon::MuonStationIndex::ChIndex chamberIndex, int etaIndex, ::Muon::MuonStationIndex::TechnologyIndex technology)
Set the identifier.
void setDirection(float px, float py, float pz)
Sets the direction.
SG::VarHandleKey & vhKey()
Return a non-const reference to the HandleKey.
ChIndex
enum to classify the different chamber layers in the muon spectrometer
double chiSquared() const
returns the of the overall track fit
int numberDoF() const
returns the number of degrees of freedom of the overall track or vertex fit as integer
TechnologyIndex
enum to classify the different layers in the muon spectrometer
void setFitQuality(float chiSquared, float numberDoF)
Set the 'Fit Quality' information.
Gaudi::Details::PropertyBase & declareGaudiProperty(Gaudi::Property< T > &hndl, const SG::VarHandleKeyType &)
specialization for handling Gaudi::Property<SG::VarHandleKey>