GEMC  2.2
Geant4 Monte-Carlo Framework
Public Member Functions | Protected Member Functions | Protected Attributes
HitProcess Class Referenceabstract

#include <HitProcess.h>

+ Inheritance diagram for HitProcess:
+ Collaboration diagram for HitProcess:

Public Member Functions

virtual ~HitProcess ()
 
void init (string name, goptions go, map< string, double > gp)
 
virtual void init_subclass ()
 
map< string, double > integrateRaw (MHit *, int, bool)
 
map< string, vector< double > > allRaws (MHit *, int)
 
virtual map< string, double > integrateDgt (MHit *, int)=0
 
virtual map< double, double > signalVT (MHit *, int)
 
virtual map< string, vector< int > > multiDgt (MHit *, int)=0
 
virtual vector< identifierprocessID (vector< identifier >, G4Step *, detector)=0
 

Protected Member Functions

double DGauss (double x, double *par, double Edep, double stepTime)
 

Protected Attributes

string HCname
 
goptions gemcOpt
 
map< string, double > gpars
 
double verbosity
 
string log_msg
 
double par [4]
 

Detailed Description

HitProcess

This HitProcess is istantiated by the factory method HitProcess_Factory.
HitProcess is registered in a map<string, HitProcess>, with key referred by the detector hitType.
There are two methods that returns geant4 raw information / step, and integrated over all steps:

The pure virtual method processID returns a (new) identifier containing hit sharing information

Definition at line 64 of file HitProcess.h.

Constructor & Destructor Documentation

virtual HitProcess::~HitProcess ( )
inlinevirtual

Definition at line 67 of file HitProcess.h.

Member Function Documentation

map< string, vector< double > > HitProcess::allRaws ( MHit aHit,
int  hitn 
)

Definition at line 74 of file HitProcess.cc.

double HitProcess::DGauss ( double  x,
double *  par,
double  Edep,
double  stepTime 
)
inlineprotected

Definition at line 119 of file HitProcess.h.

void HitProcess::init ( string  name,
goptions  go,
map< string, double >  gp 
)
inline

Definition at line 68 of file HitProcess.h.

virtual void HitProcess::init_subclass ( )
inlinevirtual

Reimplemented in ecs_HitProcess, and ec_HitProcess.

Definition at line 84 of file HitProcess.h.

virtual map<string, double> HitProcess::integrateDgt ( MHit ,
int   
)
pure virtual
map< string, double > HitProcess::integrateRaw ( MHit aHit,
int  hitn,
bool  WRITEBANK 
)

Definition at line 35 of file HitProcess.cc.

virtual map< string, vector <int> > HitProcess::multiDgt ( MHit ,
int   
)
pure virtual
virtual vector<identifier> HitProcess::processID ( vector< identifier ,
G4Step *  ,
detector   
)
pure virtual
map< double, double > HitProcess::signalVT ( MHit aHit,
int  hitn 
)
virtual

Definition at line 171 of file HitProcess.cc.

Field Documentation

goptions HitProcess::gemcOpt
protected

Definition at line 111 of file HitProcess.h.

map<string, double> HitProcess::gpars
protected

Definition at line 112 of file HitProcess.h.

string HitProcess::HCname
protected

Definition at line 110 of file HitProcess.h.

string HitProcess::log_msg
protected

Definition at line 114 of file HitProcess.h.

double HitProcess::par[4]
protected

Definition at line 117 of file HitProcess.h.

double HitProcess::verbosity
protected

Definition at line 113 of file HitProcess.h.