![]() |
PandaRoot
|
Recursive clustering. More...
#include <BSEmcRecursiveClustering.h>
Public Member Functions | |
BSEmcRecursiveClustering () | |
virtual | ~BSEmcRecursiveClustering () |
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 *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 | SetupParameters (const PndParameterRegister *t_paramRegister) |
Fetch all parameters from the PndParameterRegister. More... | |
virtual void | Process () |
The actual data transformation (digitizing, clustering, etc.) should be defined here. More... | |
std::vector< BSEmcCluster * > | Clustering (const std::vector< const BSEmcDigi *> &t_digis) |
void | SetClusteringParName (const std::string &t_parName) |
void | SetClusterPropertiesParName (const std::string &t_parName) |
void | SetPositionParName (const std::string &t_parName) |
void | SetNeighbouringRelationParName (const std::string &t_parName) |
void | SetDigiBranchName (const TString &t_branchname) |
void | SetClusterBranchName (const TString &t_branchname) |
![]() | |
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... | |
virtual void | SetEventTime (Double_t t_eventtime) |
Set the Event time. More... | |
Protected Member Functions | |
void | FillGeoItems (const std::vector< const BSEmcDigi *> &t_digis) |
std::vector< std::vector< BSEmcGeoItem * > > | SpatialClustering (const std::vector< const BSEmcDigi *> &t_digis) |
std::vector< BSEmcCluster * > | ConvertToCluster (const std::vector< std::vector< BSEmcGeoItem *>> &t_clusterstubs, const std::vector< const BSEmcDigi *> &t_digis) const |
void | Reset () |
ClassDef (BSEmcRecursiveClustering, 1) | |
Protected Attributes | |
std::string | fClusteringParName {""} |
std::string | fClusterPropertiesParName {""} |
std::string | fPositionParName {""} |
std::string | fNeighbouringRelationParName {""} |
Double_t | fClusterActiveTime {-1} |
Double_t | fDigiEnergyThreshold {-1} |
TString | fDigiBranchname {""} |
TString | fClusterBranchname {""} |
PndContainerI< BSEmcDigi > * | fDigiArray {nullptr} |
PndMutableContainerI< BSEmcCluster > * | fClusterArray {nullptr} |
BSEmcGeoNeighbouringRelationPar * | fNeighbouringRelationPar {nullptr} |
std::unique_ptr< BSEmcPositionAlgo > | fPositionProcess {new BSEmcPositionAlgo} |
std::unique_ptr< BSEmcEnergyCalculationAlgo > | fEnergyProcess {new BSEmcEnergyCalculationAlgo} |
std::map< Int_t, std::unique_ptr< BSEmcGeoItem > > | fIDToCrystal {} |
std::set< BSEmcGeoItem * > | fChangedCrystals {} |
![]() | |
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 |
Double_t | fEventTime {0} |
Recursive clustering.
Very simplistic spatial clustering using a seed crystal and recursively adding all neighbouring fired crystals
Definition at line 57 of file BSEmcRecursiveClustering.h.
BSEmcRecursiveClustering::BSEmcRecursiveClustering | ( | ) |
|
virtual |
|
protected |
std::vector<BSEmcCluster *> BSEmcRecursiveClustering::Clustering | ( | const std::vector< const BSEmcDigi *> & | t_digis | ) |
|
protected |
|
protected |
|
virtual |
Pass the container register to the process, and set the processes container requirements.
t_register |
Reimplemented from PndProcess.
|
virtual |
The actual data transformation (digitizing, clustering, etc.) should be defined here.
Implements PndProcess.
|
virtual |
Pass the container register to the process, and get the processes container requirements.
t_register |
Reimplemented from PndProcess.
|
protected |
|
inline |
Definition at line 75 of file BSEmcRecursiveClustering.h.
References fClusterBranchname.
|
inline |
Definition at line 69 of file BSEmcRecursiveClustering.h.
References fClusteringParName.
|
inline |
Definition at line 70 of file BSEmcRecursiveClustering.h.
References fClusterPropertiesParName.
|
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)
t_detectorname |
Reimplemented from PndProcess.
|
inline |
Definition at line 74 of file BSEmcRecursiveClustering.h.
References fDigiBranchname.
|
inline |
Definition at line 72 of file BSEmcRecursiveClustering.h.
References fNeighbouringRelationParName.
|
inline |
Definition at line 71 of file BSEmcRecursiveClustering.h.
References fPositionParName.
|
virtual |
|
protected |
|
protected |
Definition at line 95 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 82 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 89 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 86 of file BSEmcRecursiveClustering.h.
Referenced by SetClusterBranchName().
|
protected |
Definition at line 78 of file BSEmcRecursiveClustering.h.
Referenced by SetClusteringParName().
|
protected |
Definition at line 79 of file BSEmcRecursiveClustering.h.
Referenced by SetClusterPropertiesParName().
|
protected |
Definition at line 88 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 85 of file BSEmcRecursiveClustering.h.
Referenced by SetDigiBranchName().
|
protected |
Definition at line 83 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 93 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 94 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 91 of file BSEmcRecursiveClustering.h.
|
protected |
Definition at line 81 of file BSEmcRecursiveClustering.h.
Referenced by SetNeighbouringRelationParName().
|
protected |
Definition at line 80 of file BSEmcRecursiveClustering.h.
Referenced by SetPositionParName().
|
protected |
Definition at line 92 of file BSEmcRecursiveClustering.h.