 |
ATLAS Offline Software
|
Go to the documentation of this file.
17 using namespace SegmentFit;
41 return TechIdx_t::TechnologyUnknown;
54 return StatusCode::SUCCESS;
59 ATH_CHECK(outContainer.record(std::make_unique<xAOD::MuonSegmentContainer>(),
60 std::make_unique<xAOD::MuonSegmentAuxContainer>()));
71 for (
const Segment* inSegment : *segmentContainer) {
74 xAOD::MuonSegment* convertedSeg = outContainer->push_back(std::make_unique<xAOD::MuonSegment>());
75 dec_parentLink(*convertedSeg) =
SegLink_t{segmentContainer, outContainer->size() -1};
86 convertedSeg->
setFitQuality(inSegment->chi2(), inSegment->nDoF());
87 convertedSeg->
setNHits(inSegment->summary().nPrecHits, inSegment->summary().nPhiHits,
88 inSegment->summary().nEtaTrigHits);
90 convertedSeg->
setT0Error(inSegment->segementT0(),
94 SegPars_t& localPars{dec_locPars(*convertedSeg)};
114 for (
const auto& meas : inSegment->measurements()) {
115 if (!meas->spacePoint()) {
118 appendLink(meas->spacePoint()->primaryMeasurement());
119 if (meas->spacePoint()->primaryMeasurement() !=
120 meas->spacePoint()->secondaryMeasurement()){
121 appendLink(meas->spacePoint()->secondaryMeasurement());
125 return StatusCode::SUCCESS;
int sector() const
Returns the sector of the MS-sector.
int8_t side() const
Returns the side of the MS-sector 1 -> A side ; -1 -> C side.
A spectrometer sector forms the envelope of all chambers that are placed in the same MS sector & laye...
void setPosition(float x, float y, float z)
Sets the global position.
Placeholder for what will later be the muon segment EDM representation.
TechnologyIndex
enum to classify the different layers in the muon spectrometer
Class describing a MuonSegment.
xAOD::MeasVector< toInt(ParamDefs::nPars)> SegPars_t
virtual StatusCode execute(const EventContext &ctx) const override final
void setT0Error(float t0, float t0Error)
Sets the time error.
void setNHits(int nPrecisionHits, int nPhiLayers, int nTrigEtaLayers)
Set the number of hits/layers.
Muon::MuonStationIndex::ChIndex chamberIndex() const
Returns the chamber index scheme.
Handle class for recording to StoreGate.
constexpr TechIdx_t toTechIdx(const xAOD::UncalibMeasType aodType)
const T * get(const ReadCondHandleKey< T > &key, const EventContext &ctx)
Convenience function to retrieve an object given a ReadCondHandleKey.
::StatusCode StatusCode
StatusCode definition for legacy code.
Handle class for adding a decoration to an object.
Amg::Transform3D globalToLocalTrans(const ActsGeometryContext &gctx) const
Returns the global -> local transformation from the ATLAS global.
Eigen::Affine3d Transform3D
std::vector< PrdLink_t > PrdLinkVec_t
Handle class for adding a decoration to an object.
Include the GeoPrimitives which need to be put first.
Eigen::Matrix< float, N, 1 > MeasVector
Abrivation of the Matrix & Covariance definitions.
ElementLink implementation for ROOT usage.
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 ...
constexpr int toInt(const ParamDefs p)
UncalibratedMeasurementContainer_v1 UncalibratedMeasurementContainer
Define the version of the uncalibrated measurement container.
Eigen::Matrix< double, 3, 1 > Vector3D
virtual StatusCode initialize() override final
This header ties the generic definitions in this package.
void setIdentifier(int sector, ::Muon::MuonStationIndex::ChIndex chamberIndex, int etaIndex, ::Muon::MuonStationIndex::TechnologyIndex technology)
Set the identifier.
UncalibMeasType
Define the type of the uncalibrated measurement.
void setDirection(float px, float py, float pz)
Sets the direction.
void setFitQuality(float chiSquared, float numberDoF)
Set the 'Fit Quality' information.