PandaRoot
BSEmcPlotProcess Class Referenceabstract

Base Processclass for plotting. More...

#include <BSEmcPlotProcess.h>

Inheritance diagram for BSEmcPlotProcess:
PndProcess BSEmcPlotAllRecoHits BSEmcPlotBarrelFwEndcapOverlap BSEmcPlotCluster BSEmcPlotDigis BSEmcPlotMCDeposits BSEmcPlotMCPoints BSEmcPlotMultiHitCluster BSEmcPlotRecoHits BSEmcPlotRecoHitVsMC BSEmcPlotSubCluster BSEmcPlotWaveforms

Public Member Functions

 BSEmcPlotProcess ()
 
 BSEmcPlotProcess (const std::string &t_processname)
 
virtual ~BSEmcPlotProcess ()
 
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 RequestDataContainer (PndContainerRegister *)
 Pass the container register to the process, and get the processes container requirements. More...
 
virtual void GetDataContainer (PndContainerRegister *)
 Pass the container register to the process, and set the processes container requirements. More...
 
virtual void SetupParameters (const PndParameterRegister *)
 Fetch all parameters from the PndParameterRegister. More...
 
void SetFolderPrefix (TString t_prefix)
 
void SetHistogrammer (BSEmcHistogrammer *t_histogrammer)
 
virtual void InitHistos (const TString &t_folderprefix)=0
 
virtual void Process ()=0
 The actual data transformation (digitizing, clustering, etc.) should be defined here. More...
 
- 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

Double_t GetPhiOfInDeg (const TVector3 &t_pos) const
 
Double_t GetThetaOfInDeg (const TVector3 &t_pos) const
 

Protected Attributes

std::string fPositionParName
 
std::string fNeighbouringRelationParName
 
PndContainerI< PndMCTrack > * fMCTrackArray {nullptr}
 
PndContainerI< BSEmcMCPoint > * fMCPointArray {nullptr}
 
PndContainerI< BSEmcMCDeposit > * fMCDepositArray {nullptr}
 
PndContainerI< BSEmcMultiWaveform > * fWaveformArray {nullptr}
 
PndContainerI< BSEmcDigi > * fDigiArray {nullptr}
 
PndContainerI< BSEmcCluster > * fClusterArray {nullptr}
 
PndContainerI< BSEmcSubCluster > * fSubClusterArray {nullptr}
 
PndContainerI< BSEmcRecoHit > * fRecoHitArray {nullptr}
 
BSEmcGeoNeighbouringRelationParfNeighbouringRelationPar {nullptr}
 
BSEmcCrystalPositionParfPositionPar {nullptr}
 
BSEmcHistogrammerfHistogrammer {nullptr}
 
TString fFolderprefix {""}
 
- 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

Base Processclass for plotting.

Fetches and sets pointers to Emc-Detector Data Containers and fetches often used Emc Parameters

Author
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-02

Definition at line 46 of file BSEmcPlotProcess.h.

Constructor & Destructor Documentation

◆ BSEmcPlotProcess() [1/2]

BSEmcPlotProcess::BSEmcPlotProcess ( )

◆ BSEmcPlotProcess() [2/2]

BSEmcPlotProcess::BSEmcPlotProcess ( const std::string &  t_processname)

◆ ~BSEmcPlotProcess()

virtual BSEmcPlotProcess::~BSEmcPlotProcess ( )
virtual

Member Function Documentation

◆ GetDataContainer()

virtual void BSEmcPlotProcess::GetDataContainer ( PndContainerRegister )
inlinevirtual

Pass the container register to the process, and set the processes container requirements.

Parameters
t_register

Reimplemented from PndProcess.

Reimplemented in BSEmcPlotBarrelFwEndcapOverlap, BSEmcPlotMultiHitCluster, BSEmcPlotRecoHitVsMC, BSEmcPlotAllRecoHits, BSEmcPlotCluster, BSEmcPlotWaveforms, BSEmcPlotDigis, BSEmcPlotMCDeposits, BSEmcPlotMCPoints, BSEmcPlotRecoHits, and BSEmcPlotSubCluster.

Definition at line 54 of file BSEmcPlotProcess.h.

References SetupParameters().

54 {};

◆ GetPhiOfInDeg()

Double_t BSEmcPlotProcess::GetPhiOfInDeg ( const TVector3 &  t_pos) const
protected

Referenced by SetHistogrammer().

◆ GetThetaOfInDeg()

Double_t BSEmcPlotProcess::GetThetaOfInDeg ( const TVector3 &  t_pos) const
protected

Referenced by SetHistogrammer().

◆ InitHistos()

◆ Process()

virtual void BSEmcPlotProcess::Process ( )
pure virtual

◆ RequestDataContainer()

virtual void BSEmcPlotProcess::RequestDataContainer ( PndContainerRegister )
inlinevirtual

Pass the container register to the process, and get the processes container requirements.

Parameters
t_register

Reimplemented from PndProcess.

Reimplemented in BSEmcPlotBarrelFwEndcapOverlap, BSEmcPlotMultiHitCluster, BSEmcPlotRecoHitVsMC, BSEmcPlotAllRecoHits, BSEmcPlotCluster, BSEmcPlotWaveforms, BSEmcPlotDigis, BSEmcPlotMCDeposits, BSEmcPlotMCPoints, BSEmcPlotRecoHits, and BSEmcPlotSubCluster.

Definition at line 53 of file BSEmcPlotProcess.h.

53 {};

◆ SetDetectorName()

virtual void BSEmcPlotProcess::SetDetectorName ( const std::string &  t_detectorname)
virtual

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)

Parameters
t_detectorname

Reimplemented from PndProcess.

◆ SetFolderPrefix()

void BSEmcPlotProcess::SetFolderPrefix ( TString  t_prefix)
inline

Definition at line 56 of file BSEmcPlotProcess.h.

References fFolderprefix.

56 { fFolderprefix = t_prefix; }

◆ SetHistogrammer()

void BSEmcPlotProcess::SetHistogrammer ( BSEmcHistogrammer t_histogrammer)
inline

Definition at line 57 of file BSEmcPlotProcess.h.

References fHistogrammer, GetPhiOfInDeg(), GetThetaOfInDeg(), InitHistos(), and Process().

57 { fHistogrammer = t_histogrammer; }
BSEmcHistogrammer * fHistogrammer

◆ SetupParameters()

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

Fetch all parameters from the PndParameterRegister.

Parameters
t_parameter

Implements PndProcess.

Referenced by GetDataContainer().

Member Data Documentation

◆ fClusterArray

PndContainerI<BSEmcCluster>* BSEmcPlotProcess::fClusterArray {nullptr}
protected

Definition at line 72 of file BSEmcPlotProcess.h.

◆ fDigiArray

PndContainerI<BSEmcDigi>* BSEmcPlotProcess::fDigiArray {nullptr}
protected

Definition at line 71 of file BSEmcPlotProcess.h.

◆ fFolderprefix

TString BSEmcPlotProcess::fFolderprefix {""}
protected

Definition at line 79 of file BSEmcPlotProcess.h.

Referenced by SetFolderPrefix().

◆ fHistogrammer

BSEmcHistogrammer* BSEmcPlotProcess::fHistogrammer {nullptr}
protected

Definition at line 78 of file BSEmcPlotProcess.h.

Referenced by SetHistogrammer().

◆ fMCDepositArray

PndContainerI<BSEmcMCDeposit>* BSEmcPlotProcess::fMCDepositArray {nullptr}
protected

Definition at line 69 of file BSEmcPlotProcess.h.

◆ fMCPointArray

PndContainerI<BSEmcMCPoint>* BSEmcPlotProcess::fMCPointArray {nullptr}
protected

Definition at line 68 of file BSEmcPlotProcess.h.

◆ fMCTrackArray

PndContainerI<PndMCTrack>* BSEmcPlotProcess::fMCTrackArray {nullptr}
protected

Definition at line 67 of file BSEmcPlotProcess.h.

◆ fNeighbouringRelationPar

BSEmcGeoNeighbouringRelationPar* BSEmcPlotProcess::fNeighbouringRelationPar {nullptr}
protected

Definition at line 76 of file BSEmcPlotProcess.h.

◆ fNeighbouringRelationParName

std::string BSEmcPlotProcess::fNeighbouringRelationParName
protected

Definition at line 66 of file BSEmcPlotProcess.h.

◆ fPositionPar

BSEmcCrystalPositionPar* BSEmcPlotProcess::fPositionPar {nullptr}
protected

Definition at line 77 of file BSEmcPlotProcess.h.

◆ fPositionParName

std::string BSEmcPlotProcess::fPositionParName
protected

Definition at line 65 of file BSEmcPlotProcess.h.

◆ fRecoHitArray

PndContainerI<BSEmcRecoHit>* BSEmcPlotProcess::fRecoHitArray {nullptr}
protected

Definition at line 74 of file BSEmcPlotProcess.h.

◆ fSubClusterArray

PndContainerI<BSEmcSubCluster>* BSEmcPlotProcess::fSubClusterArray {nullptr}
protected

Definition at line 73 of file BSEmcPlotProcess.h.

◆ fWaveformArray

PndContainerI<BSEmcMultiWaveform>* BSEmcPlotProcess::fWaveformArray {nullptr}
protected

Definition at line 70 of file BSEmcPlotProcess.h.


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