ATLAS Offline Software
Toggle main menu visibility
Loading...
Searching...
No Matches
ForwardDetectors
ALFA
ALFA_Reconstruction
ALFA_LocRec
ALFA_LocRec
ALFA_MDTracking.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_MDTRACKING_H
6
#define ALFA_MDTRACKING_H
7
8
#include <iostream>
9
#include <vector>
10
11
#include "
AthenaBaseComps/AthMessaging.h
"
12
13
#include "GaudiKernel/StatusCode.h"
14
15
#include "Rtypes.h"
16
#include "TMath.h"
17
#include "TH1.h"
18
#include "TH2.h"
19
20
#include "
ALFA_LocRec/ALFA_UserObjects.h
"
21
#include "
ALFA_Geometry/ALFA_constants.h
"
22
23
class
ALFA_MDTracking
:
public
AthMessaging
24
{
25
public
:
26
ALFA_MDTracking
();
27
~ALFA_MDTracking
();
28
29
private
:
30
Int_t
m_iMultiplicityCut
;
31
Int_t
m_iUVCut
;
32
Int_t
m_iRPot
;
33
Int_t
m_iNumU
,
m_iNumV
;
34
Float_t
m_fOverlapCut
;
35
Float_t
m_fRecXPos
;
36
Float_t
m_fRecYPos
;
37
Float_t
m_faMD
[
RPOTSCNT
][
ALFALAYERSCNT
*
ALFAPLATESCNT
][
ALFAFIBERSCNT
];
//slope, offset and Z-pos for MD fibers [2*10][64]
38
Float_t
m_fbMD
[
RPOTSCNT
][
ALFALAYERSCNT
*
ALFAPLATESCNT
][
ALFAFIBERSCNT
];
39
double
m_fOverlapU
,
m_fOverlapV
;
40
Int_t
m_iFibSel
[
ALFALAYERSCNT
*
ALFAPLATESCNT
];
41
42
private
:
43
std::map<int, FIBERS>
m_MapLayers
;
44
45
public
:
46
StatusCode
Initialize
(Float_t faMD[
RPOTSCNT
][
ALFALAYERSCNT
*
ALFAPLATESCNT
][
ALFAFIBERSCNT
], Float_t fbMD[
RPOTSCNT
][
ALFALAYERSCNT
*
ALFAPLATESCNT
][
ALFAFIBERSCNT
], Int_t iMultiplicityCut, Int_t iUVCut, Float_t fOverlapCut);
47
StatusCode
Execute
(Int_t iRPot,
const
std::list<MDHIT> &ListMDHits);
48
StatusCode
Finalize
(Float_t &fRecXPos, Float_t &fRecYPos);
49
50
void
GetData
(Int_t &NumU, Int_t &NumV, Float_t &OL_U, Float_t &OL_V, Int_t (&iFibSel)[
ALFALAYERSCNT
*
ALFAPLATESCNT
]);
51
52
private
:
53
void
HistFill
(Float_t &b_p, Float_t &b_n, Float_t &Ov_p, Float_t &Ov_n, Int_t &NumU, Int_t &NumV, Int_t iFlag);
54
void
OverLap
();
55
void
SetData
(Int_t NumU, Int_t NumV, Float_t OL_U, Float_t OL_V);
56
57
};
58
#endif
// ALFA_MDTRACKING_H
RPOTSCNT
#define RPOTSCNT
Definition
ALFA_CLinkAlg.h:26
ALFA_UserObjects.h
ALFA_constants.h
ALFALAYERSCNT
#define ALFALAYERSCNT
Definition
ALFA_constants.h:8
ALFAPLATESCNT
#define ALFAPLATESCNT
Definition
ALFA_constants.h:9
ALFAFIBERSCNT
#define ALFAFIBERSCNT
Definition
ALFA_constants.h:10
AthMessaging.h
ALFA_MDTracking::m_iNumV
Int_t m_iNumV
Definition
ALFA_MDTracking.h:33
ALFA_MDTracking::m_iNumU
Int_t m_iNumU
Definition
ALFA_MDTracking.h:33
ALFA_MDTracking::m_fOverlapV
double m_fOverlapV
Definition
ALFA_MDTracking.h:39
ALFA_MDTracking::Finalize
StatusCode Finalize(Float_t &fRecXPos, Float_t &fRecYPos)
Definition
ALFA_MDTracking.cxx:116
ALFA_MDTracking::m_fOverlapCut
Float_t m_fOverlapCut
Definition
ALFA_MDTracking.h:34
ALFA_MDTracking::m_iFibSel
Int_t m_iFibSel[ALFALAYERSCNT *ALFAPLATESCNT]
Definition
ALFA_MDTracking.h:40
ALFA_MDTracking::~ALFA_MDTracking
~ALFA_MDTracking()
Definition
ALFA_MDTracking.cxx:31
ALFA_MDTracking::Execute
StatusCode Execute(Int_t iRPot, const std::list< MDHIT > &ListMDHits)
Definition
ALFA_MDTracking.cxx:62
ALFA_MDTracking::GetData
void GetData(Int_t &NumU, Int_t &NumV, Float_t &OL_U, Float_t &OL_V, Int_t(&iFibSel)[ALFALAYERSCNT *ALFAPLATESCNT])
Definition
ALFA_MDTracking.cxx:451
ALFA_MDTracking::m_faMD
Float_t m_faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition
ALFA_MDTracking.h:37
ALFA_MDTracking::Initialize
StatusCode Initialize(Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iMultiplicityCut, Int_t iUVCut, Float_t fOverlapCut)
Definition
ALFA_MDTracking.cxx:37
ALFA_MDTracking::m_iRPot
Int_t m_iRPot
Definition
ALFA_MDTracking.h:32
ALFA_MDTracking::m_fbMD
Float_t m_fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
Definition
ALFA_MDTracking.h:38
ALFA_MDTracking::OverLap
void OverLap()
Definition
ALFA_MDTracking.cxx:325
ALFA_MDTracking::m_fRecYPos
Float_t m_fRecYPos
Definition
ALFA_MDTracking.h:36
ALFA_MDTracking::m_fRecXPos
Float_t m_fRecXPos
Definition
ALFA_MDTracking.h:35
ALFA_MDTracking::m_iMultiplicityCut
Int_t m_iMultiplicityCut
Definition
ALFA_MDTracking.h:30
ALFA_MDTracking::m_MapLayers
std::map< int, FIBERS > m_MapLayers
Definition
ALFA_MDTracking.h:43
ALFA_MDTracking::m_iUVCut
Int_t m_iUVCut
Definition
ALFA_MDTracking.h:31
ALFA_MDTracking::ALFA_MDTracking
ALFA_MDTracking()
Definition
ALFA_MDTracking.cxx:7
ALFA_MDTracking::SetData
void SetData(Int_t NumU, Int_t NumV, Float_t OL_U, Float_t OL_V)
Definition
ALFA_MDTracking.cxx:439
ALFA_MDTracking::m_fOverlapU
double m_fOverlapU
Definition
ALFA_MDTracking.h:39
ALFA_MDTracking::HistFill
void HistFill(Float_t &b_p, Float_t &b_n, Float_t &Ov_p, Float_t &Ov_n, Int_t &NumU, Int_t &NumV, Int_t iFlag)
Definition
ALFA_MDTracking.cxx:128
AthMessaging::AthMessaging
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.
Definition
AthMessaging.cxx:13
Generated on
for ATLAS Offline Software by
1.17.0