ATLAS Offline Software
ALFA_MDOverlap.h
Go to the documentation of this file.
1 /*
2  Copyright (C) 2002-2022 CERN for the benefit of the ATLAS collaboration
3 */
4 
5 #ifndef ALFA_MDOVERLAP_H
6 #define ALFA_MDOVERLAP_H
7 
8 #include <iostream>
9 #include <math.h>
10 #include <list>
11 
13 
14 #include "GaudiKernel/StatusCode.h"
15 
16 #include "TH1.h"
17 #include "TH2.h"
18 
19 
23 
24 
26 {
27  public:
30 
31  private:
32  //number of RP, from 0 to 7 (B7L1U == 0, B7L1L == 1, ...)
33  Int_t m_iRPot;
34 
35  Int_t m_iTBins; // Theta Bins
36  Int_t m_iRBins; // R Bins
37 
38  //min-value of U & V fiber offset
39  Float_t m_fbMinU;
40  Float_t m_fbMinV;
41  Float_t m_fFiberD;
42  Float_t m_fzStep;
43 
44  Float_t m_fTLow;
45  Float_t m_fTHigh;
46  Float_t m_fRLow;
47  Float_t m_fRHigh;
48 
49  Float_t m_fHitBU;
50  Float_t m_fHitBV;
51 
52  Float_t m_fRecXPos;
53  Float_t m_fRecYPos;
54 
55  private:
57 
58  //slope, offset and Z-pos for MD fibers [2*10][64]
62 
63  private:
66 
67  private:
68  std::list<MDHIT> m_ListMDHits;
69 
70  public:
71 
72 
73 
74  private:
75  void HistInitialize();
76  void HistFinalize();
77 
80 
81 
82  public:
83  StatusCode Initialize(const eRPotName &eRPName, const std::list<MDHIT> &ListMDHits, Float_t faMD[RPOTSCNT][ALFALAYERSCNT*ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT*ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fzMD[RPOTSCNT][ALFALAYERSCNT*ALFAPLATESCNT][ALFAFIBERSCNT]);
85  StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos);
86 
87  void GetData(Int_t (&iFibSel)[ALFALAYERSCNT*ALFAPLATESCNT]);
88 
89 };
90 #endif // ALFA_MDOVERLAP_H
ALFA_MDOverlap::m_ListMDHits
std::list< MDHIT > m_ListMDHits
Definition: ALFA_MDOverlap.h:68
ALFA_MDOverlap::m_fzMD
Float_t m_fzMD[ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition: ALFA_MDOverlap.h:61
ALFA_MDOverlap::~ALFA_MDOverlap
~ALFA_MDOverlap()
Definition: ALFA_MDOverlap.cxx:31
ALFA_MDOverlap::m_fRecXPos
Float_t m_fRecXPos
Definition: ALFA_MDOverlap.h:52
ALFA_MDOverlap::m_fRLow
Float_t m_fRLow
Definition: ALFA_MDOverlap.h:46
ALFA_MDOverlap::m_iTBins
Int_t m_iTBins
Definition: ALFA_MDOverlap.h:35
ALFAFIBERSCNT
#define ALFAFIBERSCNT
Definition: ALFA_constants.h:10
eRPotName
eRPotName
Definition: ALFA_GeometryReader.h:28
ALFA_MDOverlap::m_histU_PT
TH2D * m_histU_PT
Definition: ALFA_MDOverlap.h:64
ALFA_GeometryReader.h
ALFA_MDOverlap::m_iFHits
Int_t m_iFHits[ALFALAYERSCNT *ALFAPLATESCNT]
Definition: ALFA_MDOverlap.h:56
RPOTSCNT
#define RPOTSCNT
Definition: ALFA_CLinkAlg.h:26
ALFA_MDOverlap::Execute
StatusCode Execute()
Definition: ALFA_MDOverlap.cxx:90
ALFA_MDOverlap::Finalize
StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos)
Definition: ALFA_MDOverlap.cxx:113
ALFA_MDOverlap::m_faMD
Float_t m_faMD[ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition: ALFA_MDOverlap.h:59
ALFA_MDOverlap::m_fbMD
Float_t m_fbMD[ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition: ALFA_MDOverlap.h:60
ALFA_MDOverlap::m_fHitBV
Float_t m_fHitBV
Definition: ALFA_MDOverlap.h:50
ALFA_MDOverlap::m_fFiberD
Float_t m_fFiberD
Definition: ALFA_MDOverlap.h:41
ALFA_MDOverlap::Overlap
StatusCode Overlap()
Definition: ALFA_MDOverlap.cxx:272
ALFA_MDOverlap::m_fTLow
Float_t m_fTLow
Definition: ALFA_MDOverlap.h:44
ALFA_constants.h
EL::StatusCode
::StatusCode StatusCode
StatusCode definition for legacy code.
Definition: PhysicsAnalysis/D3PDTools/EventLoop/EventLoop/StatusCode.h:22
ALFA_MDOverlap::GetData
void GetData(Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
Definition: ALFA_MDOverlap.cxx:439
AthMessaging
Class to provide easy MsgStream access and capabilities.
Definition: AthMessaging.h:55
TH2D
Definition: rootspy.cxx:430
ALFA_MDOverlap::m_fbMinV
Float_t m_fbMinV
Definition: ALFA_MDOverlap.h:40
ALFALAYERSCNT
#define ALFALAYERSCNT
Definition: ALFA_constants.h:8
ALFA_MDOverlap::SelectHitInLayer
StatusCode SelectHitInLayer()
Definition: ALFA_MDOverlap.cxx:123
ALFA_MDOverlap::Initialize
StatusCode Initialize(const eRPotName &eRPName, const std::list< MDHIT > &ListMDHits, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fzMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT])
Definition: ALFA_MDOverlap.cxx:36
ALFA_MDOverlap::HistInitialize
void HistInitialize()
Definition: ALFA_MDOverlap.cxx:427
ALFA_MDOverlap::m_fRecYPos
Float_t m_fRecYPos
Definition: ALFA_MDOverlap.h:53
ALFA_MDOverlap::HistFinalize
void HistFinalize()
Definition: ALFA_MDOverlap.cxx:433
ALFA_UserObjects.h
ALFA_MDOverlap::ALFA_MDOverlap
ALFA_MDOverlap()
Definition: ALFA_MDOverlap.cxx:8
ALFA_MDOverlap::m_fTHigh
Float_t m_fTHigh
Definition: ALFA_MDOverlap.h:45
AthMessaging.h
ALFA_MDOverlap::m_fHitBU
Float_t m_fHitBU
Definition: ALFA_MDOverlap.h:49
ALFA_MDOverlap
Definition: ALFA_MDOverlap.h:26
ALFA_MDOverlap::m_fzStep
Float_t m_fzStep
Definition: ALFA_MDOverlap.h:42
ALFA_MDOverlap::m_iRPot
Int_t m_iRPot
Definition: ALFA_MDOverlap.h:33
ALFA_MDOverlap::m_fbMinU
Float_t m_fbMinU
Definition: ALFA_MDOverlap.h:39
ALFA_MDOverlap::m_iRBins
Int_t m_iRBins
Definition: ALFA_MDOverlap.h:36
ALFA_MDOverlap::m_fRHigh
Float_t m_fRHigh
Definition: ALFA_MDOverlap.h:47
ALFAPLATESCNT
#define ALFAPLATESCNT
Definition: ALFA_constants.h:9
ALFA_MDOverlap::m_histV_PT
TH2D * m_histV_PT
Definition: ALFA_MDOverlap.h:65