ATLAS Offline Software
CandidateSummary.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2017 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #pragma once
6 
7 #include <algorithm>
8 
11 
12 class TrigMuonEFTrack;
13 class MuonFeature;
14 
15 namespace Muon {
16  class MuonSegment;
17 }
18 namespace Trk {
19  class TrackSurfaceIntersection;
20  class Track;
21 } // namespace Trk
22 
23 namespace MuGirlNS {
24  class Intersection;
25 
27 
28  inline std::string hitTechnologyName(StauHitTechnology eTech) {
29  switch (eTech) {
30  case RPC_STAU_HIT: return "RPC";
31  case RPCETA_STAU_HIT: return "RPCETA";
32  case MDTT_STAU_HIT: return "MDTT";
33  case CALO_STAU_HIT: return "CALO";
34  case CSC_STAU_HIT: return "CSC";
35  default: return std::string();
36  }
37  }
38 
39  struct StauHit {
41  double mToF{-1.};
42  double x{0.};
43  double y{0.};
44  double z{0.};
45  Identifier id{};
46  double e{-1.};
47  double error{-1.};
48  double shift{0.};
49  bool measuresEta{false};
50  double propagationTime{0.};
51 
52  StauHit() = default;
53  StauHit(StauHitTechnology tech, double tof, double ix, double iy, double iz, Identifier iid, double ie, double er = -1,
54  double sh = 0, bool isEta = false, double propTime = 0) :
55  eTech(tech),
56  mToF(tof),
57  x(ix),
58  y(iy),
59  z(iz),
60  id(iid),
61  e(ie),
62  error(er),
63  shift(sh),
64  measuresEta(isEta),
65  propagationTime(propTime) {}
66  };
67  using StauHits = std::vector<StauHit>;
68 
69  struct StauExtras {
70  double ann{0.};
71  double betaAll{0.};
72  double betaAllt{0.};
73  unsigned int numRpcHitsInSeg{0};
74  unsigned int numCaloCells{0};
75 
76  double rpcBetaAvg{0.};
77  double rpcBetaRms{0.};
78  double rpcBetaChi2{0.};
79  unsigned int rpcBetaDof{0};
80  double mdtBetaAvg{0.};
81  double mdtBetaRms{0.};
82  double mdtBetaChi2{0.};
83  unsigned int mdtBetaDof{0};
84  double caloBetaAvg{0.};
85  double caloBetaRms{0.};
86  double caloBetaChi2{0.};
87  int caloBetaDof{0};
89 
90  void addHits(StauHits stauHits) { std::copy(stauHits.begin(), stauHits.end(), std::back_inserter(hits)); }
91  };
92 
93 } // namespace MuGirlNS
MuGirlNS::StauExtras::rpcBetaAvg
double rpcBetaAvg
Definition: CandidateSummary.h:76
MuGirlNS::StauExtras::addHits
void addHits(StauHits stauHits)
Definition: CandidateSummary.h:90
MuGirlNS::StauExtras::caloBetaDof
int caloBetaDof
Definition: CandidateSummary.h:87
MuGirlNS::StauHit::propagationTime
double propagationTime
Definition: CandidateSummary.h:50
MuGirlNS::StauExtras::mdtBetaAvg
double mdtBetaAvg
Definition: CandidateSummary.h:80
MuGirlNS::StauExtras::betaAll
double betaAll
Definition: CandidateSummary.h:71
MuGirlNS::StauHitTechnology
StauHitTechnology
Definition: CandidateSummary.h:26
MuGirlNS::StauExtras::numCaloCells
unsigned int numCaloCells
Definition: CandidateSummary.h:74
MuGirlNS::StauExtras::mdtBetaDof
unsigned int mdtBetaDof
Definition: CandidateSummary.h:83
TrigMuonEFTrack
Definition: TrigMuonEFTrack.h:27
MuGirlNS::StauHit::y
double y
Definition: CandidateSummary.h:43
MuGirlNS::StauExtras::mdtBetaRms
double mdtBetaRms
Definition: CandidateSummary.h:81
MuGirlNS::StauHit::x
double x
Definition: CandidateSummary.h:42
Muon
This class provides conversion from CSC RDO data to CSC Digits.
Definition: TrackSystemController.h:49
xAOD::MuonSegment
MuonSegment_v1 MuonSegment
Reference the current persistent version:
Definition: Event/xAOD/xAODMuon/xAODMuon/MuonSegment.h:13
MuGirlNS::StauExtras::rpcBetaChi2
double rpcBetaChi2
Definition: CandidateSummary.h:78
MuGirlNS::MDTT_STAU_HIT
@ MDTT_STAU_HIT
Definition: CandidateSummary.h:26
PlotCalibFromCool.ie
ie
Definition: PlotCalibFromCool.py:420
MuGirlNS::StauHit::e
double e
Definition: CandidateSummary.h:46
MuGirlNS::StauExtras::caloBetaAvg
double caloBetaAvg
Definition: CandidateSummary.h:84
MuGirlNS::StauExtras::ann
double ann
Definition: CandidateSummary.h:70
GeoPrimitives.h
MuGirlNS::StauHit::shift
double shift
Definition: CandidateSummary.h:48
MuGirlNS::RPCETA_STAU_HIT
@ RPCETA_STAU_HIT
Definition: CandidateSummary.h:26
MuGirlNS::RPC_STAU_HIT
@ RPC_STAU_HIT
Definition: CandidateSummary.h:26
MuGirlNS::StauExtras::hits
StauHits hits
Definition: CandidateSummary.h:88
MuGirlNS::StauHit::eTech
StauHitTechnology eTech
Definition: CandidateSummary.h:40
MuGirlNS::StauExtras::rpcBetaDof
unsigned int rpcBetaDof
Definition: CandidateSummary.h:79
MuGirlNS::StauExtras::mdtBetaChi2
double mdtBetaChi2
Definition: CandidateSummary.h:82
Identifier
Definition: DetectorDescription/Identifier/Identifier/Identifier.h:32
RCU::Shell
Definition: ShellExec.cxx:28
MuGirlNS::StauExtras::numRpcHitsInSeg
unsigned int numRpcHitsInSeg
Definition: CandidateSummary.h:73
MuGirlNS
Definition: CandidateSummary.h:23
MuGirlNS::StauHit
Definition: CandidateSummary.h:39
MuGirlNS::StauHit::id
Identifier id
Definition: CandidateSummary.h:45
MuGirlNS::StauHit::mToF
double mToF
Definition: CandidateSummary.h:41
MuGirlNS::StauExtras::betaAllt
double betaAllt
Definition: CandidateSummary.h:72
MuGirlNS::StauExtras::caloBetaRms
double caloBetaRms
Definition: CandidateSummary.h:85
MuonFeature
Definition: MuonFeature.h:21
Trk
Ensure that the ATLAS eigen extensions are properly loaded.
Definition: FakeTrackBuilder.h:9
MuGirlNS::StauHit::z
double z
Definition: CandidateSummary.h:44
MuGirlNS::StauHit::StauHit
StauHit(StauHitTechnology tech, double tof, double ix, double iy, double iz, Identifier iid, double ie, double er=-1, double sh=0, bool isEta=false, double propTime=0)
Definition: CandidateSummary.h:53
TrackParticle.h
MuGirlNS::CSC_STAU_HIT
@ CSC_STAU_HIT
Definition: CandidateSummary.h:26
MuGirlNS::StauHit::measuresEta
bool measuresEta
Definition: CandidateSummary.h:49
MuGirlNS::hitTechnologyName
std::string hitTechnologyName(StauHitTechnology eTech)
Definition: CandidateSummary.h:28
Track
Definition: TriggerChamberClusterOnTrackCreator.h:21
MuGirlNS::StauExtras::rpcBetaRms
double rpcBetaRms
Definition: CandidateSummary.h:77
calibdata.copy
bool copy
Definition: calibdata.py:27
MuGirlNS::StauExtras
Definition: CandidateSummary.h:69
MuGirlNS::StauHit::StauHit
StauHit()=default
error
Definition: IImpactPoint3dEstimator.h:70
MuGirlNS::StauHits
std::vector< StauHit > StauHits
Definition: CandidateSummary.h:67
MuGirlNS::CALO_STAU_HIT
@ CALO_STAU_HIT
Definition: CandidateSummary.h:26
MuGirlNS::StauExtras::caloBetaChi2
double caloBetaChi2
Definition: CandidateSummary.h:86