ATLAS Offline Software
MuonFeatureCnvTool.cxx
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2023 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 // $Id:$
6 // EDM include(s):
10 
15 
16 // Local include(s):
17 #include "MuonFeatureCnvTool.h"
18 #include <vector>
19 
21  const std::string& name,
22  const IInterface* parent )
23  : AthAlgTool( type, name, parent ) {
24 
25  // Declare the interface(s) provided by the tool:
26  declareInterface< IMuonFeatureCnvTool >( this );
27 }
28 
29 
31  xAOD::L2StandAloneMuon* xaod ) {
32 
33  if (aodMf) {
34  xaod->setPt (aodMf->pt());
35  xaod->setEta (aodMf->eta());
36  xaod->setPhi (aodMf->phi());
37  xaod->setRoIWord (aodMf->roiId());
38  xaod->setSAddress (aodMf->saddress());
39  xaod->setEtaMS (aodMf->eta());
40  xaod->setPhiMS (aodMf->phi());
41  xaod->setDirPhiMS (aodMf->dir_phi());
42  xaod->setRMS (aodMf->radius());
43  xaod->setZMS (aodMf->zeta());
44  xaod->setDirZMS (aodMf->dir_zeta());
45  xaod->setBeta (aodMf->beta());
46  xaod->setBarrelRadius (aodMf->br_radius());
47  xaod->setBarrelSagitta (aodMf->br_sagitta());
48  xaod->setEndcapAlpha (aodMf->ec_alpha());
49  xaod->setEndcapBeta (aodMf->ec_beta());
50 
51  if ( aodMf->saddress() == -1 ) {
53  aodMf->sp1_r(), aodMf->sp1_z(), aodMf->sp1_slope());
55  aodMf->sp2_r(), aodMf->sp2_z(), aodMf->sp2_slope());
57  aodMf->sp3_r(), aodMf->sp3_z(), aodMf->sp3_slope());
58  } else {
60  aodMf->sp1_r(), aodMf->sp1_z(), aodMf->sp1_slope());
62  aodMf->sp2_r(), aodMf->sp2_z(), aodMf->sp2_slope());
64  aodMf->sp3_r(), aodMf->sp3_z(), aodMf->sp3_slope());
65  }
66 
67  if (aodMf->dq_var1()==1) xaod->setIsTgcFailure(1);
68  else xaod->setIsTgcFailure(0);
69 
70  if (aodMf->dq_var2()==1) xaod->setIsRpcFailure(1);
71  else xaod->setIsRpcFailure(0);
72 
73  ATH_MSG_VERBOSE("Orig vs xAOD: Pt: " << aodMf->pt() << " " << xaod->pt());
74  ATH_MSG_VERBOSE("Orig vs xAOD: Eta: " << aodMf->eta() << " " << xaod->eta());
75  ATH_MSG_VERBOSE("Orig vs xAOD: phi: " << aodMf->phi() << " " << xaod->phi());
76  }
77 
78  // Return gracefully:
79  return StatusCode::SUCCESS;
80 }
81 
83  xAOD::L2StandAloneMuon* xaod ) {
84 
85  if (aodMfd) {
86  xaod->setCapacities (aodMfd->max_rpc_hits_capacity(), aodMfd->max_tgc_hits_capacity(), aodMfd->max_mdt_hits_capacity(), 100);
87 
88  xaod->setAlgoId ((int)aodMfd->id());
89  xaod->setTeId (aodMfd->te_id());
90  xaod->setLvl1Id (aodMfd->lvl1_id());
91  xaod->setLumiBlock (aodMfd->lumi_block());
92  xaod->setMuonDetMask (aodMfd->muondetmask());
93  xaod->setRoiId (aodMfd->roi_id());
94  xaod->setRoiSystem (aodMfd->roi_system());
95  xaod->setRoiSubsystem (aodMfd->roi_subsystem());
96  xaod->setRoiSector (aodMfd->roi_sector());
97  xaod->setRoiNumber (aodMfd->roi_number());
98  xaod->setRoiThreshold (aodMfd->roi_threshold());
99 
100  xaod->setRpcFitInn (aodMfd->rpc1_x(), aodMfd->rpc1_y(), aodMfd->rpc1_z());
101  xaod->setRpcFitMid (aodMfd->rpc2_x(), aodMfd->rpc2_y(), aodMfd->rpc2_z());
102  xaod->setRpcFitOut (aodMfd->rpc3_x(), aodMfd->rpc3_y(), aodMfd->rpc3_z());
103 
104  xaod->setTgcInn (aodMfd->tgc_Inn_eta(), aodMfd->tgc_Inn_phi(),
105  aodMfd->tgc_Inn_r(), aodMfd->tgc_Inn_z());
106  xaod->setTgcInnF (aodMfd->tgc_Inn_rho_std(), aodMfd->tgc_Inn_rho_N(),
107  aodMfd->tgc_Inn_phi_std(), aodMfd->tgc_Inn_phi_N());
108  xaod->setTgcMid1 (aodMfd->tgc_Mid1_eta(), aodMfd->tgc_Mid1_phi(),
109  aodMfd->tgc_Mid1_r(), aodMfd->tgc_Mid1_z());
110  xaod->setTgcMid2 (aodMfd->tgc_Mid2_eta(), aodMfd->tgc_Mid2_phi(),
111  aodMfd->tgc_Mid2_r(), aodMfd->tgc_Mid2_z());
112  xaod->setTgcMidF (aodMfd->tgc_Mid_rho_chi2(), aodMfd->tgc_Mid_rho_N(),
113  aodMfd->tgc_Mid_phi_chi2(), aodMfd->tgc_Mid_phi_N());
114  xaod->setTgcPt (aodMfd->tgc_PT());
115 
116  const std::vector< std::vector<int> >& chamber_type_1 = aodMfd->chamber_type_1();
117  const std::vector< std::vector<float> >& aw = aodMfd->aw();
118  const std::vector< std::vector<float> >& bw = aodMfd->bw();
119  const std::vector< std::vector<float> >& zetaMin = aodMfd->zetaMin();
120  const std::vector< std::vector<float> >& zetaMax = aodMfd->zetaMax();
121  const std::vector< std::vector<float> >& radMin = aodMfd->radMin();
122  const std::vector< std::vector<float> >& radMax = aodMfd->radMax();
123  const std::vector< std::vector<float> >& etaMin = aodMfd->etaMin();
124  const std::vector< std::vector<float> >& etaMax = aodMfd->etaMax();
125  for (int sector=0; sector<2; sector++) {
126  for (int station=0; station<4; station++) {
127  xaod->setChamberType1(station, sector, chamber_type_1[sector][station]);
128  xaod->setChamberType2(station, sector, chamber_type_1[sector][station]);
129  xaod->setRoad(station, sector, aw[sector][station], bw[sector][station]);
130  xaod->setRegionZ(station, sector, zetaMin[sector][station], zetaMax[sector][station]);
131  xaod->setRegionR(station, sector, radMin[sector][station], radMax[sector][station]);
132  xaod->setRegionEta(station, sector, etaMin[sector][station], etaMax[sector][station]);
133  }
134  }
135 
136  const std::vector<uint32_t>& pad_hit_onlineId = aodMfd->pad_hit_onlineId();
137  const std::vector<uint32_t>& pad_hit_code = aodMfd->pad_hit_code();
138  const std::vector<float>& pad_hit_x = aodMfd->pad_hit_x();
139  const std::vector<float>& pad_hit_y = aodMfd->pad_hit_y();
140  const std::vector<float>& pad_hit_z = aodMfd->pad_hit_z();
141  const std::vector<float>& pad_hit_r = aodMfd->pad_hit_r();
142  const std::vector<float>& pad_hit_p = aodMfd->pad_hit_p();
143  for (unsigned int i=0; i< pad_hit_onlineId.size(); i++) {
144  if ( i >= pad_hit_code.size() || i >= pad_hit_x.size() || i >= pad_hit_y.size() ||
145  i >= pad_hit_z.size() || i >= pad_hit_r.size() || i >= pad_hit_p.size() ) continue;
146  xaod->setRpcHit( (uint32_t)pad_hit_onlineId[i], pad_hit_code[i],
147  pad_hit_x[i], pad_hit_y[i], pad_hit_z[i],
148  0.,pad_hit_r[i], pad_hit_p[i],"");
149  }
150 
151 
152  const std::vector<float>& tgc_Inn_rho_hit_phi = aodMfd->tgc_Inn_rho_hit_phi();
153  const std::vector<float>& tgc_Inn_rho_hit_r = aodMfd->tgc_Inn_rho_hit_r();
154  const std::vector<float>& tgc_Inn_rho_hit_z = aodMfd->tgc_Inn_rho_hit_z();
155  const std::vector<float>& tgc_Inn_rho_hit_width = aodMfd->tgc_Inn_rho_hit_width();
156  const std::vector<uint32_t>& tgc_Inn_rho_hit_in_seg = aodMfd->tgc_Inn_rho_hit_in_seg();
157  const std::vector<float>& tgc_Inn_phi_hit_phi = aodMfd->tgc_Inn_phi_hit_phi();
158  const std::vector<float>& tgc_Inn_phi_hit_r = aodMfd->tgc_Inn_phi_hit_r();
159  const std::vector<float>& tgc_Inn_phi_hit_z = aodMfd->tgc_Inn_phi_hit_z();
160  const std::vector<float>& tgc_Inn_phi_hit_width = aodMfd->tgc_Inn_phi_hit_width();
161  const std::vector<uint32_t>& tgc_Inn_phi_hit_in_seg = aodMfd->tgc_Inn_phi_hit_in_seg();
162  const std::vector<float>& tgc_Mid_rho_hit_phi = aodMfd->tgc_Mid_rho_hit_phi();
163  const std::vector<float>& tgc_Mid_rho_hit_r = aodMfd->tgc_Mid_rho_hit_r();
164  const std::vector<float>& tgc_Mid_rho_hit_z = aodMfd->tgc_Mid_rho_hit_z();
165  const std::vector<float>& tgc_Mid_rho_hit_width = aodMfd->tgc_Mid_rho_hit_width();
166  const std::vector<uint32_t>& tgc_Mid_rho_hit_in_seg = aodMfd->tgc_Mid_rho_hit_in_seg();
167  const std::vector<float>& tgc_Mid_phi_hit_phi = aodMfd->tgc_Mid_phi_hit_phi();
168  const std::vector<float>& tgc_Mid_phi_hit_r = aodMfd->tgc_Mid_phi_hit_r();
169  const std::vector<float>& tgc_Mid_phi_hit_z = aodMfd->tgc_Mid_phi_hit_z();
170  const std::vector<float>& tgc_Mid_phi_hit_width = aodMfd->tgc_Mid_phi_hit_width();
171  const std::vector<uint32_t>& tgc_Mid_phi_hit_in_seg = aodMfd->tgc_Mid_phi_hit_in_seg();
172  for (unsigned int i=0; i< tgc_Inn_rho_hit_phi.size(); i++) {
173  if (i >= tgc_Inn_rho_hit_r.size() || i >= tgc_Inn_rho_hit_z.size() ||
174  i >= tgc_Inn_rho_hit_width.size() || i >= tgc_Inn_rho_hit_in_seg.size() ||
175  i >= tgc_Inn_phi_hit_phi.size() || i >= tgc_Inn_phi_hit_r.size() ||
176  i >= tgc_Inn_phi_hit_z.size() || i >= tgc_Inn_phi_hit_width.size() ||
177  i >= tgc_Inn_phi_hit_in_seg.size() || i >= tgc_Mid_rho_hit_phi.size() ||
178  i >= tgc_Mid_rho_hit_r.size() || i >= tgc_Mid_rho_hit_z.size() ||
179  i >= tgc_Mid_rho_hit_width.size() || i >= tgc_Mid_rho_hit_in_seg.size() ||
180  i >= tgc_Mid_phi_hit_phi.size() || i >= tgc_Mid_phi_hit_r.size() ||
181  i >= tgc_Mid_phi_hit_z.size() || i >= tgc_Mid_phi_hit_width.size() ||
182  i >= tgc_Mid_phi_hit_in_seg.size() ) continue;
183  xaod->setTgcHit(0.,tgc_Inn_rho_hit_phi[i], tgc_Inn_rho_hit_r[i], tgc_Inn_rho_hit_z[i],
184  tgc_Inn_rho_hit_width[i], (int)tgc_Inn_rho_hit_in_seg[i], 0, 0, 0);
185  }
186 
187  const std::vector<uint32_t>& mdt_onlineId = aodMfd->mdt_onlineId();
188  const std::vector<uint32_t>& mdt_offlineId = aodMfd->mdt_offlineId();
189  const std::vector<float>& mdt_tube_r = aodMfd->mdt_tube_r();
190  const std::vector<float>& mdt_tube_z = aodMfd->mdt_tube_z();
191  const std::vector<float>& mdt_tube_residual = aodMfd->mdt_tube_residual();
192  const std::vector<float>& mdt_tube_time = aodMfd->mdt_tube_time();
193  const std::vector<float>& mdt_tube_space = aodMfd->mdt_tube_space();
194  const std::vector<float>& mdt_tube_sigma = aodMfd->mdt_tube_sigma();
195  int chamber = 999;
196  for (unsigned int i=0; i< mdt_onlineId.size(); i++) {
197  if ( i >= mdt_offlineId.size() || i >= mdt_tube_r.size() ||
198  i >= mdt_tube_z.size() || i >= mdt_tube_residual.size() ||
199  i >= mdt_tube_time.size() || i >= mdt_tube_space.size() ||
200  i >= mdt_tube_sigma.size() ) continue;
201  xaod->setMdtHit(mdt_onlineId[i], (int)mdt_offlineId[i], (int)chamber,
202  mdt_tube_r[i], mdt_tube_z[i], 0., mdt_tube_residual[i],
203  mdt_tube_time[i], mdt_tube_space[i], mdt_tube_sigma[i]);
204  }
205 
206  ATH_MSG_VERBOSE("Orig vs xAOD: TGC PT: " << aodMfd->tgc_PT() << " " << xaod->tgcPt());
207  }
208 
209  // Return gracefully:
210  return StatusCode::SUCCESS;
211 }
212 
215  const MuonFeatureDetailsContainer* aodMfd,
217  if (!aodMf) {
218  ATH_MSG_ERROR( "Null pointer for input MuonFeatureContainter" );
219  return StatusCode::FAILURE;
220  }
221 
222  if (!aodMfd) {
223  ATH_MSG_ERROR( "Null pointer for input MuonFeatureDetailsContainter" );
224  return StatusCode::FAILURE;
225  }
226 
227  ATH_MSG_VERBOSE( "Found " << aodMf->size() << " input elements" );
228 
229  // Fill the xAOD container:
231  MuonFeatureContainer::const_iterator citMfBegin = aodMf->begin();
232  MuonFeatureContainer::const_iterator citMfEnd = aodMf->end();
233 
234  std::vector<std::pair <bool, const MuonFeatureDetails*>> vMfd;
236  MuonFeatureDetailsContainer::const_iterator citMfdBegin = aodMfd->begin();
237  MuonFeatureDetailsContainer::const_iterator citMfdEnd = aodMfd->end();
238  for (citMfd = citMfdBegin; citMfd != citMfdEnd; ++citMfd) {
239  vMfd.emplace_back(false, *citMfd);
240  }
241 
242  citMfd = citMfdBegin;
243 
244  for (citMf = citMfBegin; citMf != citMfEnd; ++citMf) {
245 
246  const MuonFeature* mfObj = *citMf;
248  xaod->push_back( xaodObj );
249 
250  StatusCode sc = convertMuonFeature( mfObj, xaodObj );
251  if(sc.isFailure()) return sc;
252 
253  for (unsigned int i=0; i<vMfd.size(); i++) {
254 
255  if (vMfd[i].first) continue;
256 
257  if ( (int)(*citMf)->roiId() == (int)vMfd[i].second->roi_id() &&
258  (int)(*citMf)->algoId() == (int)vMfd[i].second->id() ) {
259 
260  vMfd[i].first = true;
261 
262  const MuonFeatureDetails* mfdObj = vMfd[i].second;
263 
264  StatusCode sc = convertMuonFeature( mfdObj, xaodObj );
265  if(sc.isFailure()) return sc;
266 
267  break;
268  }
269 
270  } // loop for MuonFeatureDetailsContainer
271  } // loop for MuonFeatureContainer
272 
273  ATH_MSG_VERBOSE( "Output Container has now " << xaod->size() << " elements" );
274 
275  return StatusCode::SUCCESS;
276 }// end convertTrigMuonEFInfoContainer
277 
MuonFeature::dq_var2
double dq_var2(void) const
Definition: MuonFeature.h:70
MuonFeatureDetails::pad_hit_z
const std::vector< float > & pad_hit_z(void) const
Definition: MuonFeatureDetails.h:227
MuonFeatureDetails::bw
const std::vector< std::vector< float > > & bw(void) const
Definition: MuonFeatureDetails.h:147
MuonFeatureDetails::max_mdt_hits_capacity
int max_mdt_hits_capacity(void) const
Definition: MuonFeatureDetails.h:73
MuonFeatureDetails::tgc_Mid_rho_chi2
float tgc_Mid_rho_chi2(void) const
Definition: MuonFeatureDetails.h:117
MuonFeatureDetails::tgc_Mid_phi_chi2
float tgc_Mid_phi_chi2(void) const
Definition: MuonFeatureDetails.h:119
xAOD::L2StandAloneMuon_v2::tgcPt
float tgcPt() const
Set and get pT from different algorithms.
MuonFeature::dq_var1
double dq_var1(void) const
Definition: MuonFeature.h:69
DataModel_detail::const_iterator
Const iterator class for DataVector/DataList.
Definition: DVLIterator.h:82
xAOD::L2StandAloneMuon_v2::setTgcMidF
void setTgcMidF(float rhoChi2, long rhoN, float phiChi2, long phiN)
Definition: L2StandAloneMuon_v2.cxx:1018
MuonFeatureDetails::id
AlgoId id(void) const
Definition: MuonFeatureDetails.h:75
L2StandAloneMuon.h
MuonFeature::sp3_slope
float sp3_slope(void) const
Definition: MuonFeature.h:64
MuonFeatureDetails::tgc_Mid_phi_N
long tgc_Mid_phi_N(void) const
Definition: MuonFeatureDetails.h:120
MuonFeatureDetails::lumi_block
uint32_t lumi_block(void) const
Definition: MuonFeatureDetails.h:81
MuonFeatureCnvTool.h
MuonFeatureDetails.h
MuonFeatureDetails::mdt_onlineId
const std::vector< uint32_t > & mdt_onlineId(void) const
Definition: MuonFeatureDetails.h:252
xAOD::L2StandAloneMuon_v2::setEndcapAlpha
void setEndcapAlpha(float value)
Set the fitted value in the endcap.
MuonFeatureDetails::tgc_Inn_phi_hit_phi
const std::vector< float > & tgc_Inn_phi_hit_phi(void) const
Definition: MuonFeatureDetails.h:236
MuonFeatureDetails::tgc_Inn_phi_hit_z
const std::vector< float > & tgc_Inn_phi_hit_z(void) const
Definition: MuonFeatureDetails.h:238
xAOD::L2StandAloneMuon_v2::setRegionEta
void setRegionEta(int station, int sector, float min, float max)
Eta range.
Definition: L2StandAloneMuon_v2.cxx:883
MuonFeature::radius
float radius(void) const
Definition: MuonFeature.h:49
MuonFeatureDetails::mdt_tube_z
const std::vector< float > & mdt_tube_z(void) const
Definition: MuonFeatureDetails.h:255
xAOD::uint32_t
setEventNumber uint32_t
Definition: EventInfo_v1.cxx:127
MuonFeatureDetails::mdt_tube_residual
const std::vector< float > & mdt_tube_residual(void) const
Definition: MuonFeatureDetails.h:256
xAOD::L2StandAloneMuon_v2
Class describing standalone muons reconstructed in the LVL2 trigger.
Definition: L2StandAloneMuon_v2.h:36
calibdata.chamber
chamber
Definition: calibdata.py:32
MuonFeatureDetails::rpc3_y
float rpc3_y(void) const
Definition: MuonFeatureDetails.h:104
MuonFeatureDetails::tgc_Mid2_z
float tgc_Mid2_z(void) const
Definition: MuonFeatureDetails.h:115
xAOD::L2StandAloneMuon_v2::setAlgoId
void setAlgoId(int value)
MuonFeatureDetails::tgc_Mid_phi_hit_width
const std::vector< float > & tgc_Mid_phi_hit_width(void) const
Definition: MuonFeatureDetails.h:249
MuonFeatureDetails::etaMax
const std::vector< std::vector< float > > & etaMax(void) const
Definition: MuonFeatureDetails.h:153
xAOD::L2StandAloneMuon_v2::setIsRpcFailure
void setIsRpcFailure(int value)
Set flag to record if RPC is properly read.
MuonFeatureDetails::roi_number
uint32_t roi_number(void) const
Definition: MuonFeatureDetails.h:87
MuonFeature::dir_phi
float dir_phi(void) const
Definition: MuonFeature.h:52
MuonFeatureDetails::pad_hit_onlineId
const std::vector< uint32_t > & pad_hit_onlineId(void) const
Definition: MuonFeatureDetails.h:223
MuonFeatureCnvTool::MuonFeatureCnvTool
MuonFeatureCnvTool(const std::string &type, const std::string &name, const IInterface *parent)
Regular AlgTool constructor.
Definition: MuonFeatureCnvTool.cxx:20
xAOD::L2StandAloneMuon_v2::setRoiSubsystem
void setRoiSubsystem(uint32_t value)
MuonFeatureDetails::tgc_Inn_rho_std
float tgc_Inn_rho_std(void) const
Definition: MuonFeatureDetails.h:126
MuonFeature::sp1_r
float sp1_r(void) const
Definition: MuonFeature.h:56
MuonFeatureDetails::tgc_Inn_rho_hit_z
const std::vector< float > & tgc_Inn_rho_hit_z(void) const
Definition: MuonFeatureDetails.h:233
xAOD::L2StandAloneMuon_v2::setTgcInn
void setTgcInn(float eta, float phi, float r, float z)
Set the results of TGC fit.
Definition: L2StandAloneMuon_v2.cxx:958
xAOD::L2StandAloneMuon_v2::setMdtHit
void setMdtHit(uint32_t onlineId, int isOutier, int chamber, float r, float z, float phi, float residual, float time, float space, float sigma)
Set the properties of each MDT tube.
Definition: L2StandAloneMuon_v2.cxx:1492
MuonFeatureDetails::rpc2_x
float rpc2_x(void) const
Definition: MuonFeatureDetails.h:99
xAOD::L2StandAloneMuon_v2::setPt
void setPt(float pt)
Set the transverse momentum ( ) of the muon.
MuonFeature::eta
float eta(void) const
Definition: MuonFeature.h:50
MuonFeatureDetails::pad_hit_x
const std::vector< float > & pad_hit_x(void) const
Definition: MuonFeatureDetails.h:225
xAOD::L2MuonParameters::BarrelInner
@ BarrelInner
Inner station in the barrel spectrometer.
Definition: TrigMuonDefs.h:16
MuonFeatureCnvTool::convertMuonFeatureContainer
virtual StatusCode convertMuonFeatureContainer(const MuonFeatureContainer *aod_mf_container, const MuonFeatureDetailsContainer *aod_mfd_container, xAOD::L2StandAloneMuonContainer *xaod_container) override
Conver MuonDeatureContainer and MuonFeatureDetailsContainer into xAOD::L2StandAloneMuonContainer.
Definition: MuonFeatureCnvTool.cxx:214
MuonFeatureDetails::tgc_Mid_rho_N
long tgc_Mid_rho_N(void) const
Definition: MuonFeatureDetails.h:118
MuonFeatureDetails::tgc_Inn_z
float tgc_Inn_z(void) const
Definition: MuonFeatureDetails.h:125
xAOD::etaMax
etaMax
Definition: HIEventShape_v2.cxx:46
xAOD::L2StandAloneMuon_v2::setRoiSector
void setRoiSector(uint32_t value)
MuonFeature::ec_alpha
float ec_alpha(void) const
Definition: MuonFeature.h:67
xAOD::L2StandAloneMuon_v2::setSuperPoint
void setSuperPoint(int chamber, float r, float z, float slope, float intercept=0., float chi2=0.)
Set the properties of one particular super point measurement.
Definition: L2StandAloneMuon_v2.cxx:220
MuonFeatureDetails::tgc_Mid2_phi
float tgc_Mid2_phi(void) const
Definition: MuonFeatureDetails.h:113
L2StandAloneMuonContainer.h
MuonFeatureDetails::etaMin
const std::vector< std::vector< float > > & etaMin(void) const
Definition: MuonFeatureDetails.h:152
xAOD::L2StandAloneMuon_v2::setPhiMS
void setPhiMS(float value)
Set the phi at muon spectrometer.
MuonFeatureDetails::radMin
const std::vector< std::vector< float > > & radMin(void) const
Definition: MuonFeatureDetails.h:150
xAOD::L2StandAloneMuon_v2::setEtaMS
void setEtaMS(float value)
Set the eta at muon spectrometer.
xAOD::L2StandAloneMuon_v2::setRpcFitInn
void setRpcFitInn(float phi, float slope, float offset)
Set the results of RPC fit.
Definition: L2StandAloneMuon_v2.cxx:1050
MuonFeatureDetails
Definition: MuonFeatureDetails.h:21
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
MuonFeatureDetailsContainer.h
MuonFeatureDetails::rpc1_z
float rpc1_z(void) const
Definition: MuonFeatureDetails.h:97
MuonFeatureDetails::tgc_Mid_phi_hit_r
const std::vector< float > & tgc_Mid_phi_hit_r(void) const
Definition: MuonFeatureDetails.h:247
MuonFeature::phi
float phi(void) const
Definition: MuonFeature.h:51
xAOD::L2StandAloneMuon_v2::setRMS
void setRMS(float value)
Set the R at muon spectrometer.
MuonFeatureDetails::mdt_offlineId
const std::vector< uint32_t > & mdt_offlineId(void) const
Definition: MuonFeatureDetails.h:253
MuonFeatureDetails::tgc_Mid_rho_hit_width
const std::vector< float > & tgc_Mid_rho_hit_width(void) const
Definition: MuonFeatureDetails.h:244
MuonFeatureDetails::tgc_Mid1_r
float tgc_Mid1_r(void) const
Definition: MuonFeatureDetails.h:109
MuonFeatureDetails::zetaMin
const std::vector< std::vector< float > > & zetaMin(void) const
Definition: MuonFeatureDetails.h:148
MuonFeature.h
xAOD::L2StandAloneMuon_v2::eta
virtual double eta() const
The pseudorapidity ( ) of the particle.
AthenaPoolTestRead.sc
sc
Definition: AthenaPoolTestRead.py:27
MuonFeatureDetails::roi_system
uint32_t roi_system(void) const
Definition: MuonFeatureDetails.h:84
xAOD::L2StandAloneMuon_v2::setTgcInnF
void setTgcInnF(float rhoStd, long rhoN, float phiStd, long phiN)
Definition: L2StandAloneMuon_v2.cxx:973
MuonFeatureDetails::tgc_Mid_phi_hit_in_seg
const std::vector< uint32_t > & tgc_Mid_phi_hit_in_seg(void) const
Definition: MuonFeatureDetails.h:250
xAOD::L2StandAloneMuon_v2::setTeId
void setTeId(uint32_t value)
MuonFeatureDetails::tgc_Mid2_r
float tgc_Mid2_r(void) const
Definition: MuonFeatureDetails.h:114
MuonFeatureDetails::mdt_tube_time
const std::vector< float > & mdt_tube_time(void) const
Definition: MuonFeatureDetails.h:257
MuonFeatureDetails::mdt_tube_space
const std::vector< float > & mdt_tube_space(void) const
Definition: MuonFeatureDetails.h:258
xAOD::L2StandAloneMuon_v2::setBeta
void setBeta(float value)
Set beta.
MuonFeatureDetails::tgc_Mid2_eta
float tgc_Mid2_eta(void) const
Definition: MuonFeatureDetails.h:112
MuonFeatureDetails::mdt_tube_sigma
const std::vector< float > & mdt_tube_sigma(void) const
Definition: MuonFeatureDetails.h:259
xAOD::L2StandAloneMuon_v2::setEta
void setEta(float eta)
Set the pseudorapidity ( ) of the muon.
Definition: L2StandAloneMuon_v2.cxx:82
MuonFeature::br_radius
float br_radius(void) const
Definition: MuonFeature.h:65
MuonFeature::dir_zeta
float dir_zeta(void) const
Definition: MuonFeature.h:54
ATH_MSG_ERROR
#define ATH_MSG_ERROR(x)
Definition: AthMsgStreamMacros.h:33
xAOD::L2StandAloneMuon_v2::setRoad
void setRoad(int station, int sector, float aw, float bw)
Road.
Definition: L2StandAloneMuon_v2.cxx:751
MuonFeatureDetails::tgc_Inn_phi_hit_width
const std::vector< float > & tgc_Inn_phi_hit_width(void) const
Definition: MuonFeatureDetails.h:239
MuonFeatureDetails::lvl1_id
uint32_t lvl1_id(void) const
Definition: MuonFeatureDetails.h:80
MuonFeature::saddress
int saddress(void) const
Definition: MuonFeature.h:47
MuonFeatureDetails::tgc_Inn_rho_hit_r
const std::vector< float > & tgc_Inn_rho_hit_r(void) const
Definition: MuonFeatureDetails.h:232
xAOD::L2StandAloneMuon_v2::setPhi
void setPhi(float phi)
Set the azimuthal angle ( ) of the muon.
Definition: L2StandAloneMuon_v2.cxx:89
xAOD::L2StandAloneMuon_v2::setBarrelSagitta
void setBarrelSagitta(float value)
Set the fitted sagitta of the muon in the barrel.
MuonFeatureDetails::tgc_Mid_rho_hit_r
const std::vector< float > & tgc_Mid_rho_hit_r(void) const
Definition: MuonFeatureDetails.h:242
MuonFeature::roiId
int roiId(void) const
Definition: MuonFeature.h:46
lumiFormat.i
int i
Definition: lumiFormat.py:92
xAOD::L2StandAloneMuon_v2::setSAddress
void setSAddress(int value)
Set the station address of the muon.
MuonFeatureDetails::tgc_Mid_phi_hit_z
const std::vector< float > & tgc_Mid_phi_hit_z(void) const
Definition: MuonFeatureDetails.h:248
MuonFeatureDetails::roi_threshold
uint32_t roi_threshold(void) const
Definition: MuonFeatureDetails.h:88
xAOD::L2StandAloneMuon_v2::setRoiSystem
void setRoiSystem(uint32_t value)
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
xAOD::L2StandAloneMuon_v2::setRoiId
void setRoiId(uint32_t value)
xAOD::L2StandAloneMuon_v2::setChamberType2
void setChamberType2(int station, int sector, int chamberType)
Definition: L2StandAloneMuon_v2.cxx:723
MuonFeatureDetails::rpc3_x
float rpc3_x(void) const
Definition: MuonFeatureDetails.h:103
MuonFeatureDetails::max_rpc_hits_capacity
int max_rpc_hits_capacity(void) const
Definition: MuonFeatureDetails.h:71
MuonFeature::br_sagitta
float br_sagitta(void) const
Definition: MuonFeature.h:66
MuonFeatureContainer
Definition: MuonFeatureContainer.h:16
MuonFeatureDetails::aw
const std::vector< std::vector< float > > & aw(void) const
Definition: MuonFeatureDetails.h:146
MuonFeatureDetails::tgc_Inn_phi_std
float tgc_Inn_phi_std(void) const
Definition: MuonFeatureDetails.h:128
test_pyathena.parent
parent
Definition: test_pyathena.py:15
MuonFeatureDetails::tgc_PT
float tgc_PT(void) const
Definition: MuonFeatureDetails.h:131
MuonFeatureDetails::tgc_Inn_eta
float tgc_Inn_eta(void) const
Definition: MuonFeatureDetails.h:122
MuonFeature::sp3_z
float sp3_z(void) const
Definition: MuonFeature.h:63
MuonFeatureDetails::chamber_type_1
const std::vector< std::vector< int > > & chamber_type_1(void) const
Definition: MuonFeatureDetails.h:143
MuonFeatureDetails::tgc_Mid1_phi
float tgc_Mid1_phi(void) const
Definition: MuonFeatureDetails.h:108
MuonFeatureDetails::tgc_Inn_phi_hit_in_seg
const std::vector< uint32_t > & tgc_Inn_phi_hit_in_seg(void) const
Definition: MuonFeatureDetails.h:240
MuonFeatureDetails::tgc_Inn_phi
float tgc_Inn_phi(void) const
Definition: MuonFeatureDetails.h:123
MuonFeatureDetails::tgc_Inn_rho_hit_phi
const std::vector< float > & tgc_Inn_rho_hit_phi(void) const
Definition: MuonFeatureDetails.h:231
DataVector
Derived DataVector<T>.
Definition: DataVector.h:581
MuonFeatureDetails::tgc_Inn_phi_N
long tgc_Inn_phi_N(void) const
Definition: MuonFeatureDetails.h:129
xAOD::L2StandAloneMuon_v2::setRegionZ
void setRegionZ(int station, int sector, float min, float max)
Z range.
Definition: L2StandAloneMuon_v2.cxx:795
MuonFeatureDetails::rpc1_x
float rpc1_x(void) const
Definition: MuonFeatureDetails.h:95
xAOD::L2StandAloneMuon_v2::setRpcFitOut
void setRpcFitOut(float phi, float slope, float offset)
Definition: L2StandAloneMuon_v2.cxx:1076
xAOD::L2StandAloneMuon_v2::setMuonDetMask
void setMuonDetMask(uint32_t value)
MuonFeature::sp3_r
float sp3_r(void) const
Definition: MuonFeature.h:62
xAOD::L2StandAloneMuon_v2::setChamberType1
void setChamberType1(int station, int sector, int chamberType)
Set the muon road information.
Definition: L2StandAloneMuon_v2.cxx:696
MuonFeatureDetails::tgc_Mid_phi_hit_phi
const std::vector< float > & tgc_Mid_phi_hit_phi(void) const
Definition: MuonFeatureDetails.h:246
MuonFeatureDetails::rpc2_z
float rpc2_z(void) const
Definition: MuonFeatureDetails.h:101
MuonFeature
Definition: MuonFeature.h:21
xAOD::L2StandAloneMuon_v2::setIsTgcFailure
void setIsTgcFailure(int value)
Set flag to record if TGC is properly read.
xAOD::L2MuonParameters::EndcapMiddle
@ EndcapMiddle
Middle station in the endcap spectrometer.
Definition: TrigMuonDefs.h:20
MuonFeatureContainer.h
MuonFeature::sp1_z
float sp1_z(void) const
Definition: MuonFeature.h:57
xAOD::L2StandAloneMuon_v2::setEndcapBeta
void setEndcapBeta(float value)
Set the fitted value in the endcap.
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:192
xAOD::L2StandAloneMuon_v2::setCapacities
void setCapacities(int rpc, int tgc, int mdt, int csc)
Definition: L2StandAloneMuon_v2.cxx:1314
MuonFeature::sp2_z
float sp2_z(void) const
Definition: MuonFeature.h:60
xAOD::L2StandAloneMuon_v2::setDirPhiMS
void setDirPhiMS(float value)
Set tan phi at muon spectrometer.
MuonFeatureDetails::pad_hit_y
const std::vector< float > & pad_hit_y(void) const
Definition: MuonFeatureDetails.h:226
xAOD::L2StandAloneMuon_v2::setBarrelRadius
void setBarrelRadius(float value)
Set the fitted radius of the muon in the barrel.
DataVector::push_back
value_type push_back(value_type pElem)
Add an element to the end of the collection.
xAOD::L2StandAloneMuon_v2::setRpcHit
void setRpcHit(uint32_t layer, uint32_t measuresPhi, float x, float y, float z, float time, float distEta, float distPhi, const std::string &stationName)
Set RPC hits.
Definition: L2StandAloneMuon_v2.cxx:1340
MuonFeature::sp1_slope
float sp1_slope(void) const
Definition: MuonFeature.h:58
MuonFeatureDetails::rpc1_y
float rpc1_y(void) const
Definition: MuonFeatureDetails.h:96
MuonFeatureDetails::rpc3_z
float rpc3_z(void) const
Definition: MuonFeatureDetails.h:105
xAOD::L2StandAloneMuon_v2::phi
virtual double phi() const
The azimuthal angle ( ) of the particle.
MuonFeatureDetails::max_tgc_hits_capacity
int max_tgc_hits_capacity(void) const
Definition: MuonFeatureDetails.h:72
MuonFeature::sp2_slope
float sp2_slope(void) const
Definition: MuonFeature.h:61
MuonFeatureDetails::tgc_Mid1_eta
float tgc_Mid1_eta(void) const
Definition: MuonFeatureDetails.h:107
TrigMuonDefs.h
xAOD::L2StandAloneMuon_v2::setZMS
void setZMS(float value)
Set the Z at muon spectrometer.
MuonFeatureDetails::radMax
const std::vector< std::vector< float > > & radMax(void) const
Definition: MuonFeatureDetails.h:151
xAOD::L2StandAloneMuon_v2::setRoiThreshold
void setRoiThreshold(uint32_t value)
DataVector::end
const_iterator end() const noexcept
Return a const_iterator pointing past the end of the collection.
xAOD::L2StandAloneMuon_v2::setRpcFitMid
void setRpcFitMid(float phi, float slope, float offset)
Definition: L2StandAloneMuon_v2.cxx:1063
xAOD::L2StandAloneMuon_v2::setTgcPt
void setTgcPt(float value)
LArCellBinning.etaMin
etaMin
Definition: LArCellBinning.py:84
MuonFeatureDetails::te_id
uint32_t te_id(void) const
Definition: MuonFeatureDetails.h:76
MuonFeatureDetails::tgc_Inn_rho_N
long tgc_Inn_rho_N(void) const
Definition: MuonFeatureDetails.h:127
MuonFeatureDetails::pad_hit_p
const std::vector< float > & pad_hit_p(void) const
Definition: MuonFeatureDetails.h:229
xAOD::L2MuonParameters::EndcapInner
@ EndcapInner
Inner station in the endcap spectrometer.
Definition: TrigMuonDefs.h:19
python.CaloScaleNoiseConfig.type
type
Definition: CaloScaleNoiseConfig.py:78
xAOD::L2MuonParameters::BarrelOuter
@ BarrelOuter
Outer station in the barrel spectrometer.
Definition: TrigMuonDefs.h:18
xAOD::L2StandAloneMuon_v2::setRegionR
void setRegionR(int station, int sector, float min, float max)
R range.
Definition: L2StandAloneMuon_v2.cxx:839
DeMoScan.first
bool first
Definition: DeMoScan.py:534
MuonFeatureDetails::roi_id
uint32_t roi_id(void) const
Definition: MuonFeatureDetails.h:83
MuonFeatureDetails::tgc_Mid_rho_hit_z
const std::vector< float > & tgc_Mid_rho_hit_z(void) const
Definition: MuonFeatureDetails.h:243
xAOD::L2StandAloneMuon_v2::setRoiNumber
void setRoiNumber(uint32_t value)
MuonFeatureDetails::rpc2_y
float rpc2_y(void) const
Definition: MuonFeatureDetails.h:100
xAOD::L2StandAloneMuon_v2::setLvl1Id
void setLvl1Id(uint32_t value)
xAOD::L2StandAloneMuon_v2::pt
virtual double pt() const
The transverse momentum ( ) of the particle.
MuonFeatureCnvTool::convertMuonFeature
virtual StatusCode convertMuonFeature(const MuonFeature *aod_mf, xAOD::L2StandAloneMuon *xaod) override
Convert MuonFeature object into xAOD::L2StandAloneMuon object.
Definition: MuonFeatureCnvTool.cxx:30
MuonFeatureDetails::tgc_Inn_rho_hit_width
const std::vector< float > & tgc_Inn_rho_hit_width(void) const
Definition: MuonFeatureDetails.h:234
MuonFeature::ec_beta
float ec_beta(void) const
Definition: MuonFeature.h:68
MuonFeature::pt
float pt(void) const
Definition: MuonFeature.h:48
xAOD::L2StandAloneMuon_v2::setRoIWord
void setRoIWord(uint32_t value)
Set the RoI ID of the seeding LVL1 muon.
MuonFeatureDetails::tgc_Inn_r
float tgc_Inn_r(void) const
Definition: MuonFeatureDetails.h:124
MuonFeature::beta
float beta(void) const
Definition: MuonFeature.h:55
AthAlgTool
Definition: AthAlgTool.h:26
xAOD::L2StandAloneMuon_v2::setTgcHit
void setTgcHit(float eta, float phi, float r, float z, float width, int stationNum, bool isStrip, int bcTag, bool inRoad)
Set TGC hits.
Definition: L2StandAloneMuon_v2.cxx:1375
MuonFeatureDetails::tgc_Mid_rho_hit_phi
const std::vector< float > & tgc_Mid_rho_hit_phi(void) const
Definition: MuonFeatureDetails.h:241
xAOD::L2StandAloneMuon
L2StandAloneMuon_v2 L2StandAloneMuon
Define the latest version of the muon SA class.
Definition: L2StandAloneMuon.h:17
xAOD::L2StandAloneMuon_v2::setDirZMS
void setDirZMS(float value)
Set dRdZ at muon spectrometer.
MuonFeatureDetails::zetaMax
const std::vector< std::vector< float > > & zetaMax(void) const
Definition: MuonFeatureDetails.h:149
MuonFeatureDetails::pad_hit_code
const std::vector< uint32_t > & pad_hit_code(void) const
Definition: MuonFeatureDetails.h:224
MuonFeatureDetails::pad_hit_r
const std::vector< float > & pad_hit_r(void) const
Definition: MuonFeatureDetails.h:228
MuonFeatureDetails::tgc_Mid1_z
float tgc_Mid1_z(void) const
Definition: MuonFeatureDetails.h:110
MuonFeatureDetails::tgc_Mid_rho_hit_in_seg
const std::vector< uint32_t > & tgc_Mid_rho_hit_in_seg(void) const
Definition: MuonFeatureDetails.h:245
DataVector::size
size_type size() const noexcept
Returns the number of elements in the collection.
xAOD::L2MuonParameters::BarrelMiddle
@ BarrelMiddle
Middle station in the barrel spectrometer.
Definition: TrigMuonDefs.h:17
xAOD::L2StandAloneMuon_v2::setLumiBlock
void setLumiBlock(uint32_t value)
xAOD::L2MuonParameters::EndcapOuter
@ EndcapOuter
Outer station in the endcap spectrometer.
Definition: TrigMuonDefs.h:21
MuonFeatureDetails::muondetmask
uint32_t muondetmask(void) const
Definition: MuonFeatureDetails.h:82
MuonFeatureDetails::roi_sector
uint32_t roi_sector(void) const
Definition: MuonFeatureDetails.h:86
MuonFeatureDetails::tgc_Inn_phi_hit_r
const std::vector< float > & tgc_Inn_phi_hit_r(void) const
Definition: MuonFeatureDetails.h:237
MuonFeatureDetails::mdt_tube_r
const std::vector< float > & mdt_tube_r(void) const
Definition: MuonFeatureDetails.h:254
MuonFeature::sp2_r
float sp2_r(void) const
Definition: MuonFeature.h:59
xAOD::L2StandAloneMuon_v2::setTgcMid2
void setTgcMid2(float eta, float phi, float r, float z)
Definition: L2StandAloneMuon_v2.cxx:1003
DataVector::begin
const_iterator begin() const noexcept
Return a const_iterator pointing at the beginning of the collection.
xAOD::L2StandAloneMuon_v2::setTgcMid1
void setTgcMid1(float eta, float phi, float r, float z)
Definition: L2StandAloneMuon_v2.cxx:988
MuonFeatureDetailsContainer
Definition: MuonFeatureDetailsContainer.h:12
MuonFeatureDetails::roi_subsystem
uint32_t roi_subsystem(void) const
Definition: MuonFeatureDetails.h:85
MuonFeatureDetails::tgc_Inn_rho_hit_in_seg
const std::vector< uint32_t > & tgc_Inn_rho_hit_in_seg(void) const
Definition: MuonFeatureDetails.h:235
MuonFeature::zeta
float zeta(void) const
Definition: MuonFeature.h:53