PandaRoot
BSEmcParameterLoadingProcess< DataStruct > Class Template Reference

Process to load neighbouring and position parameters from txtfiles or position values via BSEmcStructure. More...

#include <BSEmcParameterLoadingProcess.h>

Inheritance diagram for BSEmcParameterLoadingProcess< DataStruct >:
PndProcess< DataStruct >

Public Member Functions

 BSEmcParameterLoadingProcess (const TString &t_neighbouringFilename="EmcCrystalsNeighbouringRelations.txt", const TString &t_positionparFilename="")
 
virtual ~BSEmcParameterLoadingProcess ()
 
virtual void Process ()
 The actual data transformation (digitizing, clustering, etc.) should be defined here. More...
 
virtual void SetData (DataStruct *)
 Pass the data container ptrs to the process, and store pointers in class members. More...
 
void SetNeighbouringFilename (const TString &t_neighbouringFilename)
 
void SetPositionParFilename (const TString &t_positionFilename)
 
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...
 
void SetupParameters (const PndParameterRegister *t_parameter)
 Fetch all parameters from the PndParameterRegister. More...
 
- Public Member Functions inherited from PndProcess< DataStruct >
 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...
 

Additional Inherited Members

- Protected Attributes inherited from PndProcess< DataStruct >
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

template<class DataStruct>
class BSEmcParameterLoadingProcess< DataStruct >

Process to load neighbouring and position parameters from txtfiles or position values via BSEmcStructure.

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 25 of file BSEmcParameterLoadingProcess.h.

Constructor & Destructor Documentation

◆ BSEmcParameterLoadingProcess()

template<class DataStruct>
BSEmcParameterLoadingProcess< DataStruct >::BSEmcParameterLoadingProcess ( const TString &  t_neighbouringFilename = "EmcCrystalsNeighbouringRelations.txt",
const TString &  t_positionparFilename = "" 
)
inline

Definition at line 27 of file BSEmcParameterLoadingProcess.h.

28  : PndProcess<DataStruct>("BSEmcParameterLoadingProcess"), fNeighbouringFilename(t_neighbouringFilename), fPositionParFilename(t_positionparFilename){};
Base Process class.
Definition: PndProcess.h:24

◆ ~BSEmcParameterLoadingProcess()

template<class DataStruct>
virtual BSEmcParameterLoadingProcess< DataStruct >::~BSEmcParameterLoadingProcess ( )
inlinevirtual

Definition at line 29 of file BSEmcParameterLoadingProcess.h.

29 {};

Member Function Documentation

◆ Process()

template<class DataStruct>
virtual void BSEmcParameterLoadingProcess< DataStruct >::Process ( )
inlinevirtual

The actual data transformation (digitizing, clustering, etc.) should be defined here.

Implements PndProcess< DataStruct >.

Definition at line 30 of file BSEmcParameterLoadingProcess.h.

30 {};

◆ SetData()

template<class DataStruct>
virtual void BSEmcParameterLoadingProcess< DataStruct >::SetData ( DataStruct *  t_data)
inlinevirtual

Pass the data container ptrs to the process, and store pointers in class members.

Parameters
t_data

Implements PndProcess< DataStruct >.

Definition at line 31 of file BSEmcParameterLoadingProcess.h.

31 {};

◆ SetDetectorName()

template<class DataStruct>
void BSEmcParameterLoadingProcess< DataStruct >::SetDetectorName ( const std::string &  t_detectorname)
inlinevirtual

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< DataStruct >.

Definition at line 36 of file BSEmcParameterLoadingProcess.h.

References PndProcess< DataStruct >::fDetectorName, BSEmcPositionPar::fgParameterName, BSEmcGeoNeighbouringRelationPar::fgParameterName, BSEmcCrystalPositionPar::fgParameterName, and PndProcess< DataStruct >::fParameterList.

37  {
38  this->fDetectorName = t_detectorName;
39  this->fParameterList.push_back(BSEmcCrystalPositionPar::fgParameterName + "Barrel");
40  this->fParameterList.push_back(BSEmcCrystalPositionPar::fgParameterName + "FwEndcap");
41  this->fParameterList.push_back(BSEmcCrystalPositionPar::fgParameterName + "BwEndcap");
42  this->fParameterList.push_back(BSEmcCrystalPositionPar::fgParameterName + "Shashlik");
43 
44  this->fParameterList.push_back(BSEmcPositionPar::fgParameterName + "Barrel");
45  this->fParameterList.push_back(BSEmcPositionPar::fgParameterName + "FwEndcap");
46  this->fParameterList.push_back(BSEmcPositionPar::fgParameterName + "BwEndcap");
47  this->fParameterList.push_back(BSEmcPositionPar::fgParameterName + "Shashlik");
48 
53  }
static const std::string fgParameterName
static std::string fgParameterName
std::string fDetectorName
Set Detector name this PndProcess transforms data for. Required for example by EMC Processes to fetch...
Definition: PndProcess.h:99
std::vector< std::string > fParameterList
Parameter names required by this PndProcess. Needs to be populated in derived class.
Definition: PndProcess.h:98

◆ SetNeighbouringFilename()

template<class DataStruct>
void BSEmcParameterLoadingProcess< DataStruct >::SetNeighbouringFilename ( const TString &  t_neighbouringFilename)
inline

Definition at line 33 of file BSEmcParameterLoadingProcess.h.

33 { fNeighbouringFilename = t_neighbouringFilename; }

◆ SetPositionParFilename()

template<class DataStruct>
void BSEmcParameterLoadingProcess< DataStruct >::SetPositionParFilename ( const TString &  t_positionFilename)
inline

Definition at line 34 of file BSEmcParameterLoadingProcess.h.

34 { fPositionParFilename = t_positionFilename; }

◆ SetupParameters()


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