18#include "SensitiveDetector.h"
24#include <TLorentzVector.h>
25#include <TMCRootManager.h>
27#include <TVirtualMC.h>
89 if (TMCRootManager::Instance())
Register();
100 Int_t
id = gMC->CurrentVolID(copyNo);
104 Double_t edep = gMC->Edep();
106 if (gMC->TrackCharge() != 0.) step = gMC->TrackStep();
109 fHit->AddEdepAbs(edep);
110 fHit->AddTrackLengthAbs(step);
114 fHit->AddEdepGas(edep);
130 Double_t gain = garfieldPhysics->
GetGain();
133 fHit->AddEdepGas(edep);
134 fHit->AddAvalancheSize(avalancheSize);
152 garfieldPhysics->
Clear();
160 TMCRootManager::Instance()->Register(
"hit",
"VMC::ExGarfield::Hit", &
fHit);
Definition of the GarfieldPhysics class.
static GarfieldPhysics * GetInstance()
double GetEnergyDeposit_MeV()
double GetAvalancheSize()
The calorimeter sensitive detector.
SensitiveDetector(const char *name)
Int_t fGasVolId
The gas volume Id.
Bool_t UpdateFromGarfield()
Int_t fVerboseLevel
Verbosity level.
Int_t fAbsorberVolId
The absorber volume Id.
virtual ~SensitiveDetector()
Hit * fHit
The detector hit.
virtual void Print(Option_t *option="") const