er  dev
Public Member Functions | Private Member Functions | Private Attributes | List of all members
ERNeuRad Class Reference

Class for the MC transport of the NeuRad. More...

#include <ERNeuRad.h>

Inheritance diagram for ERNeuRad:
Inheritance graph
[legend]
Collaboration diagram for ERNeuRad:
Collaboration graph
[legend]

Public Member Functions

 ERNeuRad ()
 Default constructor.
 
 ERNeuRad (const char *name, Bool_t active, Int_t verbose)
 Standard constructor. More...
 
virtual ~ERNeuRad ()
 Destructor.
 
void SetStorePrimarySteps ()
 Method for switch on storing of first geant steps in sensetive volume. It is necessary to determine the coordinate of the input to the sensitive volume.
 
void SetStoreAllSteps ()
 Method for switch on storing of all geant steps in sensetive volume. It is necessary to determine geant4 processes in sensetive volume.
 
void SetMaxStep (Double_t step)
 Set propagation step in sensetive volumes. Special process stepLimiter must be in TG4RunConfiguration.
 
virtual TClonesArray * GetCollection (Int_t iColl) const
 Get array of ERNeuRadPoint. More...
 
virtual void Initialize ()
 Initialisation class method FairDetector::Initialize() is called. NeuRadGeoPar init from RuntimeDB Virtual from FairDetector.
 
virtual void Register ()
 Register output array (NeuRadPoint) to the I/O manager Abstract from FairDetector.
 
virtual Bool_t ProcessHits (FairVolume *vol=0)
 Virtual method Defines the action to be taken when a step is inside the active volume. Creates a ERNeuRadPoint and adds it to the collection. More...
 
virtual void EndOfEvent ()
 Action at end of event Short status log and Reset(). Virtual from FairDetector.
 
virtual void Print (Option_t *option="") const
 Screen log Prints NeuRadPoint information Virtual from TObject.
 
virtual void Reset ()
 Clears the point and steps collections Virtual from FairDetector.
 
virtual void CopyClones (TClonesArray *cl1, TClonesArray *cl2, Int_t offset)
 Copies the points collection with a given track index offset. More...
 
virtual Bool_t CheckIfSensitive (std::string name)
 Check whether a volume is sensitive. More...
 
- Public Member Functions inherited from ERDetector
 ERDetector ()
 Default constructor.
 
 ERDetector (const char *Name, Bool_t Active, Int_t DetId=0)
 
virtual void ConstructGeometry ()
 
void AddSensetive (TString name)
 Add sensetive volume name. Create new points collection.
 

Private Member Functions

void StartNewPoint ()
 Start new point creation. Reinit current point data.
 
void FinishNewPoint ()
 Finish point creation. Call AddPoint()
 
ERNeuRadPointAddPoint ()
 Adds a NeuRadPoint to the Point Collection.
 
ERNeuRadStepAddFirstStep ()
 Adds a NeuRadStep to the PrimaryStep Collection.
 
ERNeuRadStepAddStep ()
 Adds a NeuRadStep to the Steps Collection.
 
Double_t CurPointLen (TLorentzVector &posIn)
 return current point length
 

Private Attributes

TClonesArray * fNeuRadPoints
 The point collection.
 
TClonesArray * fNeuRadFirstStep
 The first step collection.
 
TClonesArray * fNeuRadSteps
 The steps collection.
 
Bool_t fStorePrimarySteps
 Flag to storing firs step in sensetive volume.
 
Bool_t fStoreAllSteps
 Flag to storing all steps in sensetive volume.
 
Int_t fVerbose
 Verbosity level.
 
Float_t fFullEnergy
 Sum Edep in event in sensetive volume.
 
Float_t fFullLY
 Sum Light Yield in event in sensetive volume.
 
Float_t fStep
 Step length in sensetive volumes.
 
Int_t fEventID
 event index
 
Int_t fTrackID
 track index
 
Int_t fMot0TrackID
 0th mother track index
 
Double_t fMass
 mass
 
TLorentzVector fPosIn
 point start position
 
TLorentzVector fPosOut
 point finish position
 
TLorentzVector fCurPosIn
 current step position
 
TVector3 fPosInLocal
 point position in sensetive volume CS
 
TLorentzVector fMomIn
 point start momentum
 
TLorentzVector fMomOut
 point start momentum
 
TLorentzVector fCurMomIn
 current step momentum
 
Double32_t fTimeIn
 point start time
 
Double32_t fTimeOut
 point finish time
 
Double32_t fTrackLength
 track length from his origin
 
Double32_t fELoss
 energy loss
 
Double_t fLightYield
 light yield
 
Int_t fFiberNb
 number of fiber in pixel
 
Int_t fPixelNb
 number of pixel in module
 
Int_t fModuleNb
 number of module in NeuRad
 
Int_t fStepNb
 current step numb in this active volumes
 
ExpertTrackingStatus fTrackStatus
 curren track stutus (transport, stop, disappeared, ...)
 
TArrayI fProcessesID
 VMC prcess IDs in step.
 

Additional Inherited Members

- Protected Attributes inherited from ERDetector
std::map< TString, TClonesArray * > fSenVolumes
 
std::vector< TString > fSenNames
 Sensetive volumes sustring, that user set.
 
Int_t fVerbose
 Verbosity level.
 
Float_t fFullEnergy
 Sum Edep in event in sensetive volume.
 
Float_t fFullLY
 Sum Light Yield in event in sensetive volume.
 
Int_t fEventID
 event index
 
Int_t fTrackID
 track index
 
Int_t fMot0TrackID
 0th mother track index
 
Double_t fMass
 mass
 
TLorentzVector fPosIn
 point start position
 
TLorentzVector fPosOut
 point finish position
 
TLorentzVector fCurPosIn
 current step position
 
TVector3 fPosInLocal
 point position in sensetive volume CS
 
TLorentzVector fMomIn
 point start momentum
 
TLorentzVector fMomOut
 point start momentum
 
TLorentzVector fCurMomIn
 current step momentum
 
Double32_t fTimeIn
 point start time
 
Double32_t fTimeOut
 point finish time
 
Double32_t fTrackLength
 track length from his origin
 
Double32_t fELoss
 energy loss
 
Double_t fLightYield
 light yield
 
Int_t fVolNb
 number of fiber in pixel
 
ExpertTrackingStatus fTrackStatus
 curren track stutus (transport, stop, disappeared, ...)
 
TArrayI fProcessesID
 VMC prcess IDs in step.
 

Detailed Description

Class for the MC transport of the NeuRad.

Author
V.Schetinin sch_v.nosp@m.ital.nosp@m.iy@ma.nosp@m.il.r.nosp@m.u
Version
1.0

The ERNeuRad defines the behaviour of the NeuRad system during transport simulation. It constructs the NeuRad transport geometry and creates objects of type ERNeuRadPoins and ERNeuRadSteps if requested.

Definition at line 39 of file ERNeuRad.h.

Constructor & Destructor Documentation

ERNeuRad::ERNeuRad ( const char *  name,
Bool_t  active,
Int_t  verbose 
)

Standard constructor.

Parameters
nameERNeuRad detector name
activesensitivity flag
verboseVerbosity level. 1 - only standart logs, 2 - Print points after each event, 3 - GEANT Step information.

Definition at line 47 of file ERNeuRad.cxx.

Member Function Documentation

Bool_t ERNeuRad::CheckIfSensitive ( std::string  name)
virtual

Check whether a volume is sensitive.

Parameters
nameVolume name kTRUE if volume is sensitive, else kFALSE The decision is based on the volume name (has to contain "Sensor"). Virtual from FairModule.

Reimplemented from ERDetector.

Definition at line 207 of file ERNeuRad.cxx.

void ERNeuRad::CopyClones ( TClonesArray *  cl1,
TClonesArray *  cl2,
Int_t  offset 
)
virtual

Copies the points collection with a given track index offset.

Parameters
cl1Origin
cl2Target
offsetIndex offset Virtual from FairDetector

Reimplemented from ERDetector.

Definition at line 192 of file ERNeuRad.cxx.

TClonesArray * ERNeuRad::GetCollection ( Int_t  iColl) const
virtual

Get array of ERNeuRadPoint.

Parameters
iCollnumber of point collection
Returns
Pointer to ERNeuRadPoint array. NULL if iColl > 0.

Abstract from FairDetector.

Reimplemented from ERDetector.

Definition at line 70 of file ERNeuRad.cxx.

Bool_t ERNeuRad::ProcessHits ( FairVolume *  vol = 0)
virtual

Virtual method Defines the action to be taken when a step is inside the active volume. Creates a ERNeuRadPoint and adds it to the collection.

Parameters
volPointer to the active volume Virtual from FairDetector.

Track information to be stored until the track leaves the active volume.

Reimplemented from ERDetector.

Definition at line 96 of file ERNeuRad.cxx.


The documentation for this class was generated from the following files: