Analysis Software
Documentation for sPHENIX simulation software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
InttClusterizer Class Reference

#include <coresoftware/blob/master/offline/packages/intt/InttClusterizer.h>

+ Inheritance diagram for InttClusterizer:
+ Collaboration diagram for InttClusterizer:

Public Member Functions

 InttClusterizer (const std::string &name="InttClusterizer", unsigned int min_layer=0, unsigned int max_layer=UINT_MAX)
 
 ~InttClusterizer () override
 
int InitRun (PHCompositeNode *topNode) override
 run initialization
 
int process_event (PHCompositeNode *topNode) override
 event processing
 
void set_threshold (const float fraction_of_mip)
 set an energy requirement relative to the thickness MIP expectation
 
float get_threshold_by_layer (const int layer) const
 
void set_z_clustering (const int layer, const bool make_z_clustering)
 option to turn off z-dimension clustering
 
bool get_z_clustering (const int layer) const
 
void set_energy_weighting (const int layer, const bool make_e_weights)
 option to turn on/off energy weighted clustering
 
bool get_energy_weighting (const int layer) const
 
void set_do_hit_association (bool do_assoc)
 
void set_read_raw (bool read_raw)
 
void set_ClusHitsVerbose (bool set=true)
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int End (PHCompositeNode *)
 Called at the end of all processing.
 
virtual int EndRun (const int)
 Called at the end of each run.
 
virtual int Init (PHCompositeNode *)
 
virtual int Reset (PHCompositeNode *)
 Reset.
 
virtual int ResetEvent (PHCompositeNode *)
 Clean up after each event.
 
void Print (const std::string &="ALL") const override
 
- Public Member Functions inherited from Fun4AllBase
virtual ~Fun4AllBase ()
 
virtual const std::string Name () const
 Returns the name of this module.
 
virtual void Name (const std::string &name)
 Sets the name of this module.
 
virtual void Verbosity (const int ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual void Verbosity (enu_Verbosity ival)
 Sets the verbosity of this module (0 by default=quiet).
 
virtual int Verbosity () const
 Gets the verbosity of this module.
 

Public Attributes

ClusHitsVerbosev1mClusHitsVerbose {nullptr}
 

Private Member Functions

bool ladder_are_adjacent (const std::pair< TrkrDefs::hitkey, TrkrHit * > &lhs, const std::pair< TrkrDefs::hitkey, TrkrHit * > &rhs, const int layer)
 
bool ladder_are_adjacent (RawHit *lhs, RawHit *rhs, const int layer)
 
void CalculateLadderThresholds (PHCompositeNode *topNode)
 
void ClusterLadderCells (PHCompositeNode *topNode)
 
void ClusterLadderCellsRaw (PHCompositeNode *topNode)
 
void PrintClusters (PHCompositeNode *topNode)
 

Private Attributes

bool record_ClusHitsVerbose {false}
 
TrkrHitSetContainerm_hits = nullptr
 
RawHitSetContainerm_rawhits = nullptr
 
TrkrClusterContainerm_clusterlist = nullptr
 
TrkrClusterHitAssocm_clusterhitassoc = nullptr
 
TrkrClusterCrossingAssocm_clustercrossingassoc = nullptr
 
float _fraction_of_mip = 0.5
 
std::map< int, float > _thresholds_by_layer
 
std::map< int, bool > _make_z_clustering
 
std::map< int, bool > _make_e_weights
 
bool do_hit_assoc = true
 
bool do_read_raw = false
 

Additional Inherited Members

- Public Types inherited from Fun4AllBase
enum  enu_Verbosity {
  VERBOSITY_QUIET = 0, VERBOSITY_SOME = 1, VERBOSITY_MORE = 2, VERBOSITY_EVEN_MORE = 3,
  VERBOSITY_A_LOT = 4, VERBOSITY_MAX = std::numeric_limits<int>::max() - 10
}
 
- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

Definition at line 23 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 23 of file InttClusterizer.h

Constructor & Destructor Documentation

InttClusterizer::InttClusterizer ( const std::string &  name = "InttClusterizer",
unsigned int  min_layer = 0,
unsigned int  max_layer = UINT_MAX 
)

Definition at line 103 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 103 of file InttClusterizer.cc

InttClusterizer::~InttClusterizer ( )
inlineoverride

Definition at line 28 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 28 of file InttClusterizer.h

Member Function Documentation

void InttClusterizer::CalculateLadderThresholds ( PHCompositeNode topNode)
private

Definition at line 300 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 300 of file InttClusterizer.cc

References _fraction_of_mip, _make_e_weights, _make_z_clustering, _thresholds_by_layer, PHG4CylinderGeomContainer::get_begin_end(), layer, and thickness.

Referenced by InitRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void InttClusterizer::ClusterLadderCells ( PHCompositeNode topNode)
private
bool InttClusterizer::get_energy_weighting ( const int  layer) const
inline

Definition at line 66 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 66 of file InttClusterizer.h

References _make_e_weights.

float InttClusterizer::get_threshold_by_layer ( const int  layer) const
inline

Definition at line 42 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 42 of file InttClusterizer.h

References _thresholds_by_layer.

bool InttClusterizer::get_z_clustering ( const int  layer) const
inline

Definition at line 54 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 54 of file InttClusterizer.h

References _make_z_clustering.

Referenced by ladder_are_adjacent().

+ Here is the caller graph for this function:

int InttClusterizer::InitRun ( PHCompositeNode topNode)
overridevirtual

run initialization

Reimplemented from SubsysReco.

Definition at line 110 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 110 of file InttClusterizer.cc

References _fraction_of_mip, _make_e_weights, _make_z_clustering, _thresholds_by_layer, Fun4AllReturnCodes::ABORTRUN, PHCompositeNode::addNode(), CalculateLadderThresholds(), Fun4AllReturnCodes::EVENT_OK, PHNodeIterator::findFirst(), mClusHitsVerbose, PHWHERE, record_ClusHitsVerbose, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

bool InttClusterizer::ladder_are_adjacent ( const std::pair< TrkrDefs::hitkey, TrkrHit * > &  lhs,
const std::pair< TrkrDefs::hitkey, TrkrHit * > &  rhs,
const int  layer 
)
private

Definition at line 57 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 57 of file InttClusterizer.cc

References get_z_clustering(), InttDefs::getCol(), and InttDefs::getRow().

Referenced by ClusterLadderCells(), and ClusterLadderCellsRaw().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

bool InttClusterizer::ladder_are_adjacent ( RawHit lhs,
RawHit rhs,
const int  layer 
)
private

Definition at line 80 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 80 of file InttClusterizer.cc

References get_z_clustering(), RawHit::getPhiBin(), and RawHit::getTBin().

+ Here is the call graph for this function:

void InttClusterizer::PrintClusters ( PHCompositeNode topNode)
private

Definition at line 909 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 909 of file InttClusterizer.cc

References TrkrClusterContainer::identify(), TrkrClusterContainer::size(), and Fun4AllBase::Verbosity().

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int InttClusterizer::process_event ( PHCompositeNode topNode)
overridevirtual

event processing

Reimplemented from SubsysReco.

Definition at line 240 of file InttClusterizer.cc.

View newest version in sPHENIX GitHub at line 240 of file InttClusterizer.cc

References Fun4AllReturnCodes::ABORTRUN, ClusterLadderCells(), ClusterLadderCellsRaw(), do_read_raw, Fun4AllReturnCodes::EVENT_OK, m_clustercrossingassoc, m_clusterhitassoc, m_clusterlist, m_hits, m_rawhits, PHWHERE, and PrintClusters().

+ Here is the call graph for this function:

void InttClusterizer::set_ClusHitsVerbose ( bool  set = true)
inline

Definition at line 76 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 76 of file InttClusterizer.h

References record_ClusHitsVerbose.

void InttClusterizer::set_do_hit_association ( bool  do_assoc)
inline

Definition at line 72 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 72 of file InttClusterizer.h

References do_hit_assoc.

void InttClusterizer::set_energy_weighting ( const int  layer,
const bool  make_e_weights 
)
inline

option to turn on/off energy weighted clustering

Definition at line 61 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 61 of file InttClusterizer.h

References _make_e_weights.

void InttClusterizer::set_read_raw ( bool  read_raw)
inline

Definition at line 73 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 73 of file InttClusterizer.h

References do_read_raw.

void InttClusterizer::set_threshold ( const float  fraction_of_mip)
inline

set an energy requirement relative to the thickness MIP expectation

Definition at line 37 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 37 of file InttClusterizer.h

References _fraction_of_mip.

void InttClusterizer::set_z_clustering ( const int  layer,
const bool  make_z_clustering 
)
inline

option to turn off z-dimension clustering

Definition at line 49 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 49 of file InttClusterizer.h

References _make_z_clustering.

Referenced by Intt_Clustering().

+ Here is the caller graph for this function:

Member Data Documentation

float InttClusterizer::_fraction_of_mip = 0.5
private

Definition at line 97 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 97 of file InttClusterizer.h

Referenced by CalculateLadderThresholds(), InitRun(), and set_threshold().

std::map<int, bool> InttClusterizer::_make_e_weights
private

Definition at line 100 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 100 of file InttClusterizer.h

Referenced by CalculateLadderThresholds(), ClusterLadderCells(), ClusterLadderCellsRaw(), get_energy_weighting(), InitRun(), and set_energy_weighting().

std::map<int, bool> InttClusterizer::_make_z_clustering
private

Definition at line 99 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 99 of file InttClusterizer.h

Referenced by CalculateLadderThresholds(), get_z_clustering(), InitRun(), and set_z_clustering().

std::map<int, float> InttClusterizer::_thresholds_by_layer
private

Definition at line 98 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 98 of file InttClusterizer.h

Referenced by CalculateLadderThresholds(), get_threshold_by_layer(), and InitRun().

bool InttClusterizer::do_hit_assoc = true
private

Definition at line 101 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 101 of file InttClusterizer.h

Referenced by set_do_hit_association().

bool InttClusterizer::do_read_raw = false
private

Definition at line 102 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 102 of file InttClusterizer.h

Referenced by process_event(), and set_read_raw().

TrkrClusterCrossingAssoc* InttClusterizer::m_clustercrossingassoc = nullptr
private

Definition at line 94 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 94 of file InttClusterizer.h

Referenced by ClusterLadderCells(), ClusterLadderCellsRaw(), and process_event().

TrkrClusterHitAssoc* InttClusterizer::m_clusterhitassoc = nullptr
private

Definition at line 93 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 93 of file InttClusterizer.h

Referenced by ClusterLadderCells(), ClusterLadderCellsRaw(), and process_event().

TrkrClusterContainer* InttClusterizer::m_clusterlist = nullptr
private

Definition at line 92 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 92 of file InttClusterizer.h

Referenced by ClusterLadderCells(), ClusterLadderCellsRaw(), and process_event().

TrkrHitSetContainer* InttClusterizer::m_hits = nullptr
private

Definition at line 90 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 90 of file InttClusterizer.h

Referenced by ClusterLadderCells(), and process_event().

RawHitSetContainer* InttClusterizer::m_rawhits = nullptr
private

Definition at line 91 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 91 of file InttClusterizer.h

Referenced by ClusterLadderCellsRaw(), and process_event().

ClusHitsVerbosev1* InttClusterizer::mClusHitsVerbose {nullptr}

Definition at line 77 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 77 of file InttClusterizer.h

Referenced by ClusterLadderCellsRaw(), and InitRun().

bool InttClusterizer::record_ClusHitsVerbose {false}
private

Definition at line 80 of file InttClusterizer.h.

View newest version in sPHENIX GitHub at line 80 of file InttClusterizer.h

Referenced by InitRun(), and set_ClusHitsVerbose().


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