BOSS 8.0.0
BESIII Offline Software System
Loading...
Searching...
No Matches
Simulation/BOOST/MucSim/include/MucSim/BesMucEfficiency.hh
Go to the documentation of this file.
1//
2//
3//
4//
5
6#ifndef BesMucEfficiency_h
7#define BesMucEfficiency_h 1
8
9#include "GaudiKernel/IMessageSvc.h"
10#include "GaudiKernel/MsgStream.h"
11
12#include "BesMucDigit.hh"
13#include "BesMucHit.hh"
14#include "G4LogicalVolume.hh"
15#include "G4VPhysicalVolume.hh"
16
17#include "MucCalibConstSvc/IMucCalibConstSvc.h"
18// #include "MucCalibConstSvc/MucCalibConstSvc.h"
19
20#define part_Max ( 3 )
21// #define segOnPart[3] ({4,8,4})
22// #define gapOnPart[3] ({8,9,8})
23#define seg_Max ( 8 )
24#define gap_Max ( 9 )
25#define strip_Max ( 96 )
26#define pad_Max ( 100 )
27
28using namespace std;
29
30class BesMucEfficiency {
31public:
34
35 void Initialize( G4String filename );
36
38 void SetHit( BesMucHit* hit );
39 void GetPosLengthWidth( G4VPhysicalVolume* pvStrip );
40
41 G4int GetPad();
42 G4double GetEfficiency();
43 static BesMucEfficiency* Instance( void );
44
45public:
46 IMessageSvc* msgSvc;
47
48private:
49 BesMucHit* m_pHit;
50 G4double m_Pos_Hit;
51 G4double m_Pos_Strip;
52 G4double m_Length;
53 G4double m_Width;
54 G4int m_Strip;
55 G4double m_effi[part_Max][seg_Max][gap_Max][strip_Max][pad_Max];
56 static BesMucEfficiency* fPointer;
57 G4double IsAddEffi;
58
59 IMucCalibConstSvc* m_ptrCalibSvc; // pointer of calibration constants service
60};
61
62#endif
static BesMucEfficiency * Instance(void)
void SetHit(BesMucHit *hit)
void Initialize(G4String filename)
G4double GetEfficiency()
void GetPosLengthWidth(G4VPhysicalVolume *pvStrip)