PandaRoot
BSEmcBarrelZDependentMCDepositProductionProcess Class Reference

Deposit Producer taking the z dependency of the lightyield of a crystal into account. More...

#include <BSEmcBarrelZDependentMCDepositProductionProcess.h>

Inheritance diagram for BSEmcBarrelZDependentMCDepositProductionProcess:
BSEmcMCDepositProductionProcess BSEmcSortMCTruthAlgo PndProcess

Public Member Functions

 BSEmcBarrelZDependentMCDepositProductionProcess ()
 
virtual ~BSEmcBarrelZDependentMCDepositProductionProcess ()
 
virtual void SetupParameters (const PndParameterRegister *t_paramRegister)
 Fetch all parameters from the PndParameterRegister. More...
 
void IsDayOneSetup (Bool_t t_isDayOneSetup)
 
- Public Member Functions inherited from BSEmcMCDepositProductionProcess
 BSEmcMCDepositProductionProcess ()
 
virtual ~BSEmcMCDepositProductionProcess ()
 
virtual void RequestDataContainer (PndContainerRegister *t_register)
 Pass the container register to the process, and get the processes container requirements. More...
 
virtual void GetDataContainer (PndContainerRegister *t_register)
 Pass the container register to the process, and set the processes container requirements. More...
 
virtual void SetDetectorName (const std::string &t_detectorname)
 Set the Detector name. Important, as most EmcParameter need to know for which detector they need to be fetched (each Emc Subdetector has its own set of parameters) More...
 
virtual void Process ()
 The actual data transformation (digitizing, clustering, etc.) should be defined here. More...
 
void SetMCParName (const std::string &t_parName)
 
void SetPositionParName (const std::string &t_parName)
 
void SetVolume (BSEmcVolume *t_volume)
 
void SetTrackBranchName (const TString &t_branchname)
 
void SetMCPointBranchName (const TString &t_branchname)
 
void SetMCDepositBranchName (const TString &t_branchname)
 
- Public Member Functions inherited from PndProcess
 PndProcess ()
 
 PndProcess (const std::string &t_processname)
 
virtual ~PndProcess ()
 
const std::vector< std::string > & GetListOfRequiredParameters () const
 Get the List Of Required Parameters. More...
 
virtual void PreProcess ()
 PreProcess() is called before the actual Process() call in each event. More...
 
virtual void PostProcess ()
 Immediately after calling Process() PostProcess() is called for cleanup of internal process data, or if not needed, to end the time and memory increase measurement started by PreProcess() More...
 
virtual void TearDown ()
 Last actions at the end of the run. More...
 

Protected Member Functions

virtual Double_t GetEnergy (const BSEmcMCPoint *t_point) const
 
virtual Bool_t SkipPoint (const BSEmcMCPoint *t_point) const
 
- Protected Member Functions inherited from BSEmcMCDepositProductionProcess
virtual Double_t GetTime (const BSEmcMCPoint *t_point) const
 
virtual Bool_t GetEntering (const BSEmcMCPoint *t_point) const
 
virtual Bool_t GetExiting (const BSEmcMCPoint *t_point) const
 
virtual FairMultiLinkedData GetTracks (const BSEmcMCPoint *t_point) const
 
virtual Int_t GetMCTrackID (const BSEmcMCPoint *t_point) const
 
virtual void CreateDeposits (std::vector< BSEmcMCPoint *> t_points)
 
void Reset ()
 
Int_t FindMCIndex (const BSEmcMCPoint *t_point)
 
Int_t FindMCIndexIterative (const BSEmcMCPoint *t_point, Int_t t_mcIndex)
 
void SetClusterIdForPoint (BSEmcMCPoint *t_point)
 
void StoreDeposits ()
 
virtual void StoreDeposit (Int_t t_detId, Double_t t_time, std::vector< Int_t > &t_mctrackIds, const FairMultiLinkedData &t_entering, const FairMultiLinkedData &t_exiting)
 
 ClassDef (BSEmcMCDepositProductionProcess, 1)
 

Protected Attributes

BSEmcBarrelDigiNonuniformityParfNonUniformityPar {nullptr}
 
- Protected Attributes inherited from BSEmcMCDepositProductionProcess
std::string fMCParName {""}
 
std::string fPositionParName {""}
 
TString fTrackBranchname {""}
 
TString fMCPointBranchname {""}
 
TString fMCDepositBranchname {""}
 
PndContainerI< PndMCTrack > * fMCTrackArray {nullptr}
 
PndMutableContainerI< BSEmcMCPoint > * fPointArray {nullptr}
 
PndMutableContainerI< BSEmcMCDeposit > * fMCDepositArray {nullptr}
 
Double_t fEnergyThreshold {-1}
 
Double_t fCutMotherParticle {-1}
 
Double_t fCutSameTrack {-1}
 
BSEmcCrystalPositionParfPositionPar {nullptr}
 
BSEmcVolumefBoundaryVolume {nullptr}
 
std::map< Int_t, Float_t > fTrackEnergy {}
 
std::map< Int_t, Float_t > fTrackTime {}
 
std::map< Int_t, std::vector< Int_t > > fTrackMcTruth {}
 
std::map< Int_t, std::vector< Int_t > > fPointMatch {}
 
std::map< Int_t, FairMultiLinkedData > fTrackEntering {}
 
std::map< Int_t, FairMultiLinkedData > fTrackExiting {}
 
std::map< Int_t, const BSEmcMCPoint * > fLastPointForTrack {}
 
std::map< Int_t, std::map< Int_t, Double_t > > fShower {}
 
- Protected Attributes inherited from PndProcess
std::vector< std::string > fParameterList {}
 Parameter names required by this PndProcess. Needs to be populated in derived class. More...
 
std::string fDetectorName {""}
 Set Detector name this PndProcess transforms data for. Required for example by EMC Processes to fetch right parameters. More...
 
std::string fProcessName {"PndProcess"}
 Name of current PndProcess (for debugging) More...
 
TStopwatch fTimer {}
 Timer to monitor Process() time. More...
 
Double_t fTotalTime {0}
 Time taken by this Process' Process() More...
 
ProcInfo_t fProcInfo
 Helper to access cpu process Memory Info. More...
 
Long_t fLastMemSize
 

Detailed Description

Deposit Producer taking the z dependency of the lightyield of a crystal into account.

this version is there for the "emc_module12_2018v1_EmcDetector.root" geometry

Author
S.Spataro
Ben Salisbury salis.nosp@m.bury.nosp@m.@hisk.nosp@m.p.un.nosp@m.i-bon.nosp@m.n.de, HISKP Bonn
Date
2021-01

Definition at line 32 of file BSEmcBarrelZDependentMCDepositProductionProcess.h.

Constructor & Destructor Documentation

◆ BSEmcBarrelZDependentMCDepositProductionProcess()

BSEmcBarrelZDependentMCDepositProductionProcess::BSEmcBarrelZDependentMCDepositProductionProcess ( )

◆ ~BSEmcBarrelZDependentMCDepositProductionProcess()

virtual BSEmcBarrelZDependentMCDepositProductionProcess::~BSEmcBarrelZDependentMCDepositProductionProcess ( )
inlinevirtual

Definition at line 35 of file BSEmcBarrelZDependentMCDepositProductionProcess.h.

References SetupParameters().

35 {}

Member Function Documentation

◆ GetEnergy()

virtual Double_t BSEmcBarrelZDependentMCDepositProductionProcess::GetEnergy ( const BSEmcMCPoint t_point) const
protectedvirtual

Reimplemented from BSEmcMCDepositProductionProcess.

Referenced by IsDayOneSetup().

◆ IsDayOneSetup()

void BSEmcBarrelZDependentMCDepositProductionProcess::IsDayOneSetup ( Bool_t  t_isDayOneSetup)
inline

Definition at line 37 of file BSEmcBarrelZDependentMCDepositProductionProcess.h.

References GetEnergy(), and SkipPoint().

37 { fIsDayOneSetup = t_isDayOneSetup; }

◆ SetupParameters()

virtual void BSEmcBarrelZDependentMCDepositProductionProcess::SetupParameters ( const PndParameterRegister t_parameter)
virtual

Fetch all parameters from the PndParameterRegister.

Parameters
t_parameter

Reimplemented from BSEmcMCDepositProductionProcess.

Referenced by ~BSEmcBarrelZDependentMCDepositProductionProcess().

◆ SkipPoint()

virtual Bool_t BSEmcBarrelZDependentMCDepositProductionProcess::SkipPoint ( const BSEmcMCPoint t_point) const
protectedvirtual

Reimplemented from BSEmcMCDepositProductionProcess.

Referenced by IsDayOneSetup().

Member Data Documentation

◆ fNonUniformityPar

BSEmcBarrelDigiNonuniformityPar* BSEmcBarrelZDependentMCDepositProductionProcess::fNonUniformityPar {nullptr}
protected

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