ATLAS Offline Software
Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2024 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef DELTARSQRINCL2_H
6 #define DELTARSQRINCL2_H
7 
8 // based on DeltaRSqrIncl2 of L1TopoSimulation
9 
10 // Decision algorithm to accept pairs of TOBs with DeltaR requirements
11 
12 #include <string>
13 #include <vector>
14 
15 class StatusCode;
16 
17 namespace GlobalSim {
18  class GenericTOBArray;
19  class Decision;
20 
22  public:
23 
24  DeltaRSqrIncl2(const std::string & name,
25  unsigned int MaxTOB1,
26  unsigned int MaxTOB2,
27  const std::vector<unsigned int>& MinET1,
28  const std::vector<unsigned int>& MinET2,
29  const std::vector<unsigned int>& DeltaRMin,
30  const std::vector<unsigned int>& DeltaRMax,
31  unsigned int NumResultBits);
32 
33  virtual ~DeltaRSqrIncl2() = default;
34 
36  run(const GenericTOBArray& in0,
37  const GenericTOBArray& in1,
38  std::vector<GenericTOBArray>& output,
39  Decision&);
40 
41 
42  // expose variables to be monitored
43 
44  unsigned int numResultBits() const;
45  const std::vector<double>& deltaRSqPassByBit(std::size_t bit) const;
46  const std::vector<double>& deltaRSqFailByBit(std::size_t bit) const;
47 
48  std::string toString() const;
49 
50  private:
51 
52  std::string m_name{"DeltaRSqrIncl2_object"};
53  unsigned int m_MaxTOB1{0u};
54  unsigned int m_MaxTOB2{0u};
55 
56  std::vector<unsigned int> m_MinET1{};
57  std::vector<unsigned int> m_MinET2{};
58 
59  std::vector<unsigned int> m_DeltaRMin{};
60  std::vector<unsigned int> m_DeltaRMax{};
61 
62  unsigned int m_NumResultBits{0};
63 
64  // variables to be monitored
65  // maintain a vector of values for each output bit
66  std::vector<std::vector<double>> m_DeltaRSqPass{
68  std::vector<double>{}
69  };
70 
71  std::vector<std::vector<double>> m_DeltaRSqFail{
73  std::vector<double>{}
74  };
75 
76  };
77 
78 }
79 
80 #endif
GlobalSim::DeltaRSqrIncl2::m_DeltaRSqPass
std::vector< std::vector< double > > m_DeltaRSqPass
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:66
GlobalSim::DeltaRSqrIncl2::deltaRSqPassByBit
const std::vector< double > & deltaRSqPassByBit(std::size_t bit) const
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.cxx:121
GlobalSim::Decision
Definition: Global/GlobalSimulation/src/IO/Decision.h:24
GlobalSim::DeltaRSqrIncl2
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:21
GlobalSim::DeltaRSqrIncl2::numResultBits
unsigned int numResultBits() const
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.cxx:116
GlobalSim::DeltaRSqrIncl2::m_DeltaRMin
std::vector< unsigned int > m_DeltaRMin
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:59
GlobalSim::DeltaRSqrIncl2::~DeltaRSqrIncl2
virtual ~DeltaRSqrIncl2()=default
GlobalSim::DeltaRSqrIncl2::toString
std::string toString() const
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.cxx:133
GlobalSim::DeltaRSqrIncl2::run
StatusCode run(const GenericTOBArray &in0, const GenericTOBArray &in1, std::vector< GenericTOBArray > &output, Decision &)
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.cxx:56
Trk::u
@ u
Enums for curvilinear frames.
Definition: ParamDefs.h:83
GlobalSim::DeltaRSqrIncl2::m_MinET2
std::vector< unsigned int > m_MinET2
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:57
GlobalSim::DeltaRSqrIncl2::m_name
std::string m_name
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:52
GlobalSim::DeltaRSqrIncl2::m_MaxTOB1
unsigned int m_MaxTOB1
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:53
GlobalSim::DeltaRSqrIncl2::m_DeltaRSqFail
std::vector< std::vector< double > > m_DeltaRSqFail
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:71
GlobalSim
AlgTool to obtain a GlobalSim::cTAUTOBArray This class uses ReadHandls to jFex and eFex Tau Rois If t...
Definition: dump.h:8
GlobalSim::DeltaRSqrIncl2::m_DeltaRMax
std::vector< unsigned int > m_DeltaRMax
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:60
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
GlobalSim::GenericTOBArray
Definition: GenericTOBArray.h:32
GlobalSim::DeltaRSqrIncl2::deltaRSqFailByBit
const std::vector< double > & deltaRSqFailByBit(std::size_t bit) const
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.cxx:126
merge.output
output
Definition: merge.py:17
name
std::string name
Definition: Control/AthContainers/Root/debug.cxx:195
TrigCompositeUtils::Decision
xAOD::TrigComposite Decision
Definition: Event/xAOD/xAODTrigger/xAODTrigger/TrigComposite.h:20
GlobalSim::DeltaRSqrIncl2::m_MaxTOB2
unsigned int m_MaxTOB2
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:54
GlobalSim::DeltaRSqrIncl2::m_NumResultBits
unsigned int m_NumResultBits
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:62
GlobalSim::DeltaRSqrIncl2::DeltaRSqrIncl2
DeltaRSqrIncl2(const std::string &name, unsigned int MaxTOB1, unsigned int MaxTOB2, const std::vector< unsigned int > &MinET1, const std::vector< unsigned int > &MinET2, const std::vector< unsigned int > &DeltaRMin, const std::vector< unsigned int > &DeltaRMax, unsigned int NumResultBits)
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.cxx:36
GlobalSim::DeltaRSqrIncl2::m_MinET1
std::vector< unsigned int > m_MinET1
Definition: Global/GlobalSimulation/src/L1TopoAlgs/DeltaRSqrIncl2.h:56