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

#include <coresoftware/blob/master/offline/packages/CaloReco/CaloTowerBuilder.h>

+ Inheritance diagram for CaloTowerBuilder:
+ Collaboration diagram for CaloTowerBuilder:

Public Member Functions

 CaloTowerBuilder (const std::string &name="CaloTowerBuilder")
 
 ~CaloTowerBuilder () override
 
int InitRun (PHCompositeNode *topNode) override
 
int process_event (PHCompositeNode *topNode) override
 
void CreateNodeTree (PHCompositeNode *topNode)
 
void set_detector_type (CaloTowerDefs::DetectorSystem dettype)
 
void set_builder_type (CaloTowerDefs::BuilderType buildertype)
 
void set_nsamples (int _nsamples)
 
void set_dataflag (bool flag)
 
void set_processing_type (CaloWaveformProcessing::process processingtype)
 
void set_softwarezerosuppression (bool usezerosuppression, int softwarezerosuppression)
 
void set_outputNodePrefix (const std::string &name)
 
- 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.
 

Private Member Functions

int process_sim ()
 

Private Attributes

CaloWaveformProcessingWaveformProcessing {nullptr}
 
TowerInfoContainerm_CaloInfoContainer {nullptr}
 
TowerInfoContainerm_CalowaveformContainer {nullptr}
 Calo info.
 
bool m_isdata {true}
 
bool _bdosoftwarezerosuppression {false}
 
int m_packet_low {std::numeric_limits<int>::min()}
 
int m_packet_high {std::numeric_limits<int>::min()}
 
int m_nsamples {16}
 
int m_nchannels {192}
 
int m_nzerosuppsamples {2}
 
int _nsoftwarezerosuppression {40}
 
CaloTowerDefs::DetectorSystem m_dettype {CaloTowerDefs::CEMC}
 
CaloTowerDefs::BuilderType m_buildertype {CaloTowerDefs::kPRDFTowerv1}
 
CaloWaveformProcessing::process _processingtype {CaloWaveformProcessing::NONE}
 
std::string m_detector {"CEMC"}
 
std::string m_inputNodePrefix {"WAVEFORM_"}
 
std::string m_outputNodePrefix {"TOWERS_"}
 
std::string TowerNodeName
 

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 20 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 20 of file CaloTowerBuilder.h

Constructor & Destructor Documentation

CaloTowerBuilder::CaloTowerBuilder ( const std::string &  name = "CaloTowerBuilder")
explicit

Definition at line 32 of file CaloTowerBuilder.cc.

View newest version in sPHENIX GitHub at line 32 of file CaloTowerBuilder.cc

References WaveformProcessing.

CaloTowerBuilder::~CaloTowerBuilder ( )
override

Definition at line 39 of file CaloTowerBuilder.cc.

View newest version in sPHENIX GitHub at line 39 of file CaloTowerBuilder.cc

References WaveformProcessing.

Member Function Documentation

void CaloTowerBuilder::CreateNodeTree ( PHCompositeNode topNode)

Definition at line 293 of file CaloTowerBuilder.cc.

View newest version in sPHENIX GitHub at line 293 of file CaloTowerBuilder.cc

References PHCompositeNode::addNode(), CaloTowerDefs::CEMC, CaloTowerDefs::DETECTOR_INVALID, PHNodeIterator::findFirst(), CaloTowerDefs::HCALIN, CaloTowerDefs::HCALOUT, CaloTowerDefs::kPRDFTowerv1, CaloTowerDefs::kPRDFWaveform, CaloTowerDefs::kWaveformTowerv2, m_buildertype, m_CaloInfoContainer, m_CalowaveformContainer, m_detector, m_dettype, m_inputNodePrefix, m_isdata, m_outputNodePrefix, PHWHERE, CaloTowerDefs::SEPD, TowerNodeName, CaloTowerDefs::ZDC, and RawTowerDefs::ZDC.

Referenced by InitRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int CaloTowerBuilder::InitRun ( PHCompositeNode )
overridevirtual

Called for first event when run number is known. Typically this is where you may want to fetch data from database, because you know the run number.

Reimplemented from SubsysReco.

Definition at line 45 of file CaloTowerBuilder.cc.

View newest version in sPHENIX GitHub at line 45 of file CaloTowerBuilder.cc

References _bdosoftwarezerosuppression, _nsoftwarezerosuppression, _processingtype, CaloTowerDefs::CEMC, CreateNodeTree(), Fun4AllReturnCodes::EVENT_OK, CaloWaveformProcessing::FAST, CaloTowerDefs::HCALIN, CaloTowerDefs::HCALOUT, CaloWaveformProcessing::initialize_processing(), m_detector, m_dettype, m_nchannels, m_packet_high, m_packet_low, CaloWaveformProcessing::NONE, CaloTowerDefs::SEPD, CaloWaveformProcessing::set_processing_type(), CaloWaveformProcessing::set_softwarezerosuppression(), CaloWaveformProcessing::set_template_name(), CaloWaveformProcessing::TEMPLATE, WaveformProcessing, and CaloTowerDefs::ZDC.

+ Here is the call graph for this function:

int CaloTowerBuilder::process_event ( PHCompositeNode )
overridevirtual

Called for each event. This is where you do the real work.

special events where we do not read out the calorimeters

Reimplemented from SubsysReco.

Definition at line 154 of file CaloTowerBuilder.cc.

View newest version in sPHENIX GitHub at line 154 of file CaloTowerBuilder.cc

References Fun4AllReturnCodes::ABORTEVENT, channel(), DATAEVENT, Fun4AllReturnCodes::EVENT_OK, TowerInfoContainer::get_tower_at_channel(), Event::getEvtType(), Event::getPacket(), i, Packet::iValue(), j, m_CaloInfoContainer, m_dettype, m_isdata, m_nchannels, m_nsamples, m_nzerosuppsamples, m_packet_high, m_packet_low, PHWHERE, train_ambiguity_solver::pid, process_sim(), CaloWaveformProcessing::process_waveform(), CaloTowerDefs::SEPD, TowerInfo::set_chi2(), TowerInfo::set_energy(), TowerInfo::set_isNotInstr(), TowerInfo::set_pedestal(), TowerInfo::set_time(), TowerInfo::set_time_float(), TowerInfo::set_waveform_value(), WaveformProcessing, and CaloTowerDefs::ZDC.

+ Here is the call graph for this function:

int CaloTowerBuilder::process_sim ( )
private

Definition at line 113 of file CaloTowerBuilder.cc.

View newest version in sPHENIX GitHub at line 113 of file CaloTowerBuilder.cc

References Fun4AllReturnCodes::EVENT_OK, TowerInfoContainer::get_tower_at_channel(), TowerInfo::get_waveform_value(), i, j, m_CaloInfoContainer, m_CalowaveformContainer, m_nsamples, m_nzerosuppsamples, CaloWaveformProcessing::process_waveform(), TowerInfo::set_chi2(), TowerInfo::set_energy(), TowerInfo::set_isNotInstr(), TowerInfo::set_pedestal(), TowerInfo::set_time(), TowerInfo::set_time_float(), TowerInfo::set_waveform_value(), TowerInfoContainer::size(), and WaveformProcessing.

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void CaloTowerBuilder::set_builder_type ( CaloTowerDefs::BuilderType  buildertype)
inline

Definition at line 36 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 36 of file CaloTowerBuilder.h

References m_buildertype.

Referenced by Fun4All_HCalCalib(), and Fun4All_Year1().

+ Here is the caller graph for this function:

void CaloTowerBuilder::set_dataflag ( bool  flag)
inline

Definition at line 47 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 47 of file CaloTowerBuilder.h

References m_isdata.

void CaloTowerBuilder::set_detector_type ( CaloTowerDefs::DetectorSystem  dettype)
inline

Definition at line 30 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 30 of file CaloTowerBuilder.h

References m_dettype.

Referenced by Fun4All_CaloProduction(), Fun4All_HCalCalib(), Fun4All_Year1(), and rundata().

+ Here is the caller graph for this function:

void CaloTowerBuilder::set_nsamples ( int  _nsamples)
inline

Definition at line 42 of file CaloTowerBuilder.h.

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

References m_nsamples.

Referenced by Fun4All_CaloProduction(), Fun4All_HCalCalib(), Fun4All_Year1(), and rundata().

+ Here is the caller graph for this function:

void CaloTowerBuilder::set_outputNodePrefix ( const std::string &  name)
inline

Definition at line 64 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 64 of file CaloTowerBuilder.h

References m_outputNodePrefix, and perf_headwind::name.

Referenced by Fun4All_HCalCalib(), and Fun4All_Year1().

+ Here is the caller graph for this function:

void CaloTowerBuilder::set_processing_type ( CaloWaveformProcessing::process  processingtype)
inline

Definition at line 53 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 53 of file CaloTowerBuilder.h

References _processingtype.

Referenced by Fun4All_CaloProduction(), Fun4All_HCalCalib(), Fun4All_Year1(), and rundata().

+ Here is the caller graph for this function:

void CaloTowerBuilder::set_softwarezerosuppression ( bool  usezerosuppression,
int  softwarezerosuppression 
)
inline

Definition at line 58 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 58 of file CaloTowerBuilder.h

References _bdosoftwarezerosuppression, and _nsoftwarezerosuppression.

Referenced by Fun4All_HCalCalib(), and Fun4All_Year1().

+ Here is the caller graph for this function:

Member Data Documentation

bool CaloTowerBuilder::_bdosoftwarezerosuppression {false}
private

Definition at line 76 of file CaloTowerBuilder.h.

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

Referenced by InitRun(), and set_softwarezerosuppression().

int CaloTowerBuilder::_nsoftwarezerosuppression {40}
private

Definition at line 82 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 82 of file CaloTowerBuilder.h

Referenced by InitRun(), and set_softwarezerosuppression().

CaloWaveformProcessing::process CaloTowerBuilder::_processingtype {CaloWaveformProcessing::NONE}
private

Definition at line 85 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 85 of file CaloTowerBuilder.h

Referenced by InitRun(), and set_processing_type().

CaloTowerDefs::BuilderType CaloTowerBuilder::m_buildertype {CaloTowerDefs::kPRDFTowerv1}
private

Definition at line 84 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 84 of file CaloTowerBuilder.h

Referenced by CreateNodeTree(), and set_builder_type().

TowerInfoContainer* CaloTowerBuilder::m_CaloInfoContainer {nullptr}
private

Definition at line 73 of file CaloTowerBuilder.h.

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

Referenced by CreateNodeTree(), process_event(), and process_sim().

TowerInfoContainer* CaloTowerBuilder::m_CalowaveformContainer {nullptr}
private

Calo info.

Definition at line 74 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 74 of file CaloTowerBuilder.h

Referenced by CreateNodeTree(), and process_sim().

std::string CaloTowerBuilder::m_detector {"CEMC"}
private

Definition at line 86 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 86 of file CaloTowerBuilder.h

Referenced by CreateNodeTree(), and InitRun().

CaloTowerDefs::DetectorSystem CaloTowerBuilder::m_dettype {CaloTowerDefs::CEMC}
private

Definition at line 83 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 83 of file CaloTowerBuilder.h

Referenced by CreateNodeTree(), InitRun(), process_event(), and set_detector_type().

std::string CaloTowerBuilder::m_inputNodePrefix {"WAVEFORM_"}
private

Definition at line 87 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 87 of file CaloTowerBuilder.h

Referenced by CreateNodeTree().

bool CaloTowerBuilder::m_isdata {true}
private

Definition at line 75 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 75 of file CaloTowerBuilder.h

Referenced by CreateNodeTree(), process_event(), and set_dataflag().

int CaloTowerBuilder::m_nchannels {192}
private

Definition at line 80 of file CaloTowerBuilder.h.

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

Referenced by InitRun(), and process_event().

int CaloTowerBuilder::m_nsamples {16}
private

Definition at line 79 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 79 of file CaloTowerBuilder.h

Referenced by process_event(), process_sim(), and set_nsamples().

int CaloTowerBuilder::m_nzerosuppsamples {2}
private

Definition at line 81 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 81 of file CaloTowerBuilder.h

Referenced by process_event(), and process_sim().

std::string CaloTowerBuilder::m_outputNodePrefix {"TOWERS_"}
private

Definition at line 88 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 88 of file CaloTowerBuilder.h

Referenced by CreateNodeTree(), and set_outputNodePrefix().

int CaloTowerBuilder::m_packet_high {std::numeric_limits<int>::min()}
private

Definition at line 78 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 78 of file CaloTowerBuilder.h

Referenced by InitRun(), and process_event().

int CaloTowerBuilder::m_packet_low {std::numeric_limits<int>::min()}
private

Definition at line 77 of file CaloTowerBuilder.h.

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

Referenced by InitRun(), and process_event().

std::string CaloTowerBuilder::TowerNodeName
private

Definition at line 89 of file CaloTowerBuilder.h.

View newest version in sPHENIX GitHub at line 89 of file CaloTowerBuilder.h

Referenced by CreateNodeTree().

CaloWaveformProcessing* CaloTowerBuilder::WaveformProcessing {nullptr}
private

Definition at line 72 of file CaloTowerBuilder.h.

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

Referenced by CaloTowerBuilder(), InitRun(), process_event(), process_sim(), and ~CaloTowerBuilder().


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