21#include "DedxCurSvc/IDedxCurSvc.h"
22#include "DedxSimSvc/IDedxSimSvc.h"
23#include "G4Svc/IG4Svc.h"
24#include "MdcGeomSvc/IMdcGeomSvc.h"
25#include "TruSim/BesSensitiveDetector.hh"
27#include "GaudiKernel/IDataProviderSvc.h"
28#include "GaudiKernel/NTuple.h"
49 G4double
Distance( G4int, G4int, G4ThreeVector, G4ThreeVector, G4ThreeVector&, G4double& );
54 G4int hitPointer[43][288], truthPointer[43][288];
64 IDataProviderSvc* m_calibDataSvc;
67 std::vector<TH1F>* m_dedx_hists;
72 std::vector<double>* m_bgRange;
73 G4int GetBetagammaIndex( G4double bg );
74 G4int GetAngleIndex( G4double );
75 G4int GetChargeIndex( G4int );
76 G4double GetValDedxCurve( G4double bg, G4double charge );
77 G4double dedxSample( G4double betagamma, G4double length, G4double theta );
80 NTuple::Tuple* m_tupleMdc;
81 NTuple::Item<double> m_betaGamma;
82 NTuple::Item<double> m_fitval;
83 NTuple::Item<double> m_random;
84 NTuple::Item<double> m_dedx;
85 NTuple::Item<double> m_de;
87 NTuple::Item<double> m_charge;
88 NTuple::Item<double> m_costheta;
G4THitsCollection< BesMdcHit > BesMdcHitsCollection
void BeginOfTruthEvent(const G4Event *)
void EndOfTruthEvent(const G4Event *)
G4double Distance(G4int, G4int, G4ThreeVector, G4ThreeVector, G4ThreeVector &, G4double &)
G4bool ProcessHits(G4Step *, G4TouchableHistory *)
void EndOfEvent(G4HCofThisEvent *)
void Initialize(G4HCofThisEvent *)