5#ifndef ALFA_MDMULTIPLE_H
6#define ALFA_MDMULTIPLE_H
15#include "GaudiKernel/StatusCode.h"
60 StatusCode
Execute(
const std::list<MDHIT> &ListMDHits);
66 void Proj_Store(Int_t iFiberSide, std::span<Int_t> iOver, Float_t fbRef, Int_t iSideFlag);
67 void Proj_Store(
const std::vector<Int_t> (&FiberHit)[
ALFAPLATESCNT], std::span<Int_t> iOver, Float_t fbRef, Int_t iSideFlag);
68 void Find_Proj(
const std::span<const Int_t>& iOver, Float_t fbRef, Float_t &fb, Float_t &fOv, Int_t &fNum);
70 void Reco_Track(std::vector<double> &b_p, std::vector<double> &b_n,
71 std::vector<double> &Ov_p, std::vector<double> &Ov_n,
72 std::vector<int> &Num_p, std::vector<int> &Num_n,
74 std::vector<int> (&Track_match)[2]);
std::vector< Int_t > m_iFibSel[ALFALAYERSCNT *ALFAPLATESCNT]
StatusCode Initialize(Int_t iRPot, Float_t faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Float_t fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT], Int_t iMultiplicityCut, Int_t iNumLayerCut, Int_t iUVCut, Float_t fOverlapCut)
Float_t m_fbMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
StatusCode Execute(const std::list< MDHIT > &ListMDHits)
void Proj_Store(Int_t iFiberSide, std::span< Int_t > iOver, Float_t fbRef, Int_t iSideFlag)
ALFA_MDMultiple(const ALFA_MDMultiple &obj)=delete
void Reco_Track(std::vector< double > &b_p, std::vector< double > &b_n, std::vector< double > &Ov_p, std::vector< double > &Ov_n, std::vector< int > &Num_p, std::vector< int > &Num_n, std::vector< int >(&FSel_n)[ALFAPLATESCNT], std::vector< int >(&FSel_p)[ALFAPLATESCNT], std::vector< int >(&Track_match)[2])
std::vector< Float_t > m_fRecXPos
void Finding_Fib(Int_t iFiberSide, Float_t fbRef, Float_t fbRec, Int_t(&iFSel)[ALFAPLATESCNT], Int_t iSideFlag)
std::map< int, FIBERS > m_MapLayers
std::vector< Int_t > m_iNV
Float_t m_faMD[RPOTSCNT][ALFALAYERSCNT *ALFAPLATESCNT][ALFAFIBERSCNT]
std::vector< Float_t > m_fRecYPos
StatusCode Finalize(Float_t(&fRecXPos)[MAXTRACKNUM], Float_t(&fRecYPos)[MAXTRACKNUM])
ALFA_MDMultiple & operator=(const ALFA_MDMultiple &obj)=delete
std::vector< Int_t > m_iTrackMatch[2]
void GetData(Int_t(&iNumU)[MAXTRACKNUM], Int_t(&iNumV)[MAXTRACKNUM], Float_t(&fOvU)[MAXTRACKNUM], Float_t(&fOvV)[MAXTRACKNUM], Int_t(&iFibSel)[MAXTRACKNUM][ALFALAYERSCNT *ALFAPLATESCNT])
std::vector< Int_t > m_iNU
std::vector< Float_t > m_fOvU
void Find_Proj(const std::span< const Int_t > &iOver, Float_t fbRef, Float_t &fb, Float_t &fOv, Int_t &fNum)
~ALFA_MDMultiple()=default
Int_t m_iNumHitsLayer[ALFALAYERSCNT *ALFAPLATESCNT]
std::vector< Float_t > m_fOvV
AthMessaging(IMessageSvc *msgSvc, const std::string &name)
Constructor.