EIC Software
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Groups Pages
PHG4MvtxDigitizer Class Reference

#include <fun4all_coresoftware/blob/master/simulation/g4simulation/g4mvtx/PHG4MvtxDigitizer.h>

+ Inheritance diagram for PHG4MvtxDigitizer:
+ Collaboration diagram for PHG4MvtxDigitizer:

Public Member Functions

 PHG4MvtxDigitizer (const std::string &name="PHG4MvtxDigitizer")
 
 ~PHG4MvtxDigitizer () override
 
int Init (PHCompositeNode *) override
 module initialization
 
int InitRun (PHCompositeNode *topNode) override
 run initialization
 
int process_event (PHCompositeNode *topNode) override
 event processing
 
int End (PHCompositeNode *) override
 end of process
 
void set_adc_scale (const int layer, const unsigned short max_adc, const float energy_per_adc)
 
void set_energy_threshold (const float threshold)
 
float get_energy_threshold ()
 
- Public Member Functions inherited from SubsysReco
 ~SubsysReco () override
 
virtual int EndRun (const int)
 Called at the end of each run.
 
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

void CalculateMvtxLadderCellADCScale (PHCompositeNode *topNode)
 
void DigitizeMvtxLadderCells (PHCompositeNode *topNode)
 

Private Attributes

std::vector< float > adc_input
 
std::vector< int > is_populated
 
std::map< int, unsigned short > _max_adc
 
std::map< int, float > _energy_scale
 
float _energy_threshold
 
gsl_rng * RandomGenerator
 random generator that conform with sPHENIX standard
 

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 = INT_MAX - 10
}
 
- Protected Member Functions inherited from SubsysReco
 SubsysReco (const std::string &name="NONAME")
 

Detailed Description

Definition at line 19 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 19 of file PHG4MvtxDigitizer.h

Constructor & Destructor Documentation

PHG4MvtxDigitizer::PHG4MvtxDigitizer ( const std::string &  name = "PHG4MvtxDigitizer")

Definition at line 33 of file PHG4MvtxDigitizer.cc.

View newest version in sPHENIX GitHub at line 33 of file PHG4MvtxDigitizer.cc

References Fun4AllBase::Name(), RandomGenerator, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

PHG4MvtxDigitizer::~PHG4MvtxDigitizer ( )
override

Definition at line 46 of file PHG4MvtxDigitizer.cc.

View newest version in sPHENIX GitHub at line 46 of file PHG4MvtxDigitizer.cc

References RandomGenerator.

Member Function Documentation

void PHG4MvtxDigitizer::CalculateMvtxLadderCellADCScale ( PHCompositeNode topNode)
private

Definition at line 101 of file PHG4MvtxDigitizer.cc.

View newest version in sPHENIX GitHub at line 101 of file PHG4MvtxDigitizer.cc

References _energy_scale, _max_adc, PHG4CylinderGeomContainer::get_begin_end(), G4TTL::layer, G4BARRELHCAL::length, thickness, and Fun4AllBase::Verbosity().

Referenced by InitRun().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

void PHG4MvtxDigitizer::DigitizeMvtxLadderCells ( PHCompositeNode topNode)
private

Definition at line 140 of file PHG4MvtxDigitizer.cc.

View newest version in sPHENIX GitHub at line 140 of file PHG4MvtxDigitizer.cc

References _energy_scale, _energy_threshold, _max_adc, exit(), TrkrHit::getEnergy(), TrkrHitSet::getHits(), TrkrHitSetContainer::getHitSets(), TrkrDefs::getLayer(), G4TTL::layer, TrkrDefs::mvtxId, TrkrHitSet::removeHit(), TrkrHit::setAdc(), and Fun4AllBase::Verbosity().

Referenced by process_event().

+ Here is the call graph for this function:

+ Here is the caller graph for this function:

int PHG4MvtxDigitizer::End ( PHCompositeNode )
inlineoverridevirtual

end of process

Reimplemented from SubsysReco.

Definition at line 35 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 35 of file PHG4MvtxDigitizer.h

float PHG4MvtxDigitizer::get_energy_threshold ( )
inline

Definition at line 48 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 48 of file PHG4MvtxDigitizer.h

References _energy_threshold.

int PHG4MvtxDigitizer::Init ( PHCompositeNode )
inlineoverridevirtual

module initialization

Reimplemented from SubsysReco.

Definition at line 26 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 26 of file PHG4MvtxDigitizer.h

int PHG4MvtxDigitizer::InitRun ( PHCompositeNode topNode)
overridevirtual

run initialization

Reimplemented from SubsysReco.

Definition at line 51 of file PHG4MvtxDigitizer.cc.

View newest version in sPHENIX GitHub at line 51 of file PHG4MvtxDigitizer.cc

References _energy_scale, _max_adc, Fun4AllReturnCodes::ABORTRUN, CalculateMvtxLadderCellADCScale(), Fun4AllReturnCodes::EVENT_OK, PHNodeIterator::findFirst(), PHWHERE, and Fun4AllBase::Verbosity().

+ Here is the call graph for this function:

int PHG4MvtxDigitizer::process_event ( PHCompositeNode topNode)
overridevirtual

event processing

Reimplemented from SubsysReco.

Definition at line 93 of file PHG4MvtxDigitizer.cc.

View newest version in sPHENIX GitHub at line 93 of file PHG4MvtxDigitizer.cc

References DigitizeMvtxLadderCells(), and Fun4AllReturnCodes::EVENT_OK.

+ Here is the call graph for this function:

void PHG4MvtxDigitizer::set_adc_scale ( const int  layer,
const unsigned short  max_adc,
const float  energy_per_adc 
)
inline

Definition at line 37 of file PHG4MvtxDigitizer.h.

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

References _energy_scale, and _max_adc.

void PHG4MvtxDigitizer::set_energy_threshold ( const float  threshold)
inline

Definition at line 43 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 43 of file PHG4MvtxDigitizer.h

References _energy_threshold.

Member Data Documentation

std::map<int, float> PHG4MvtxDigitizer::_energy_scale
private

Definition at line 59 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 59 of file PHG4MvtxDigitizer.h

Referenced by CalculateMvtxLadderCellADCScale(), DigitizeMvtxLadderCells(), InitRun(), and set_adc_scale().

float PHG4MvtxDigitizer::_energy_threshold
private

Definition at line 60 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 60 of file PHG4MvtxDigitizer.h

Referenced by DigitizeMvtxLadderCells(), get_energy_threshold(), and set_energy_threshold().

std::map<int, unsigned short> PHG4MvtxDigitizer::_max_adc
private

Definition at line 58 of file PHG4MvtxDigitizer.h.

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

Referenced by CalculateMvtxLadderCellADCScale(), DigitizeMvtxLadderCells(), InitRun(), and set_adc_scale().

std::vector<float> PHG4MvtxDigitizer::adc_input
private

Definition at line 54 of file PHG4MvtxDigitizer.h.

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

std::vector<int> PHG4MvtxDigitizer::is_populated
private

Definition at line 55 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 55 of file PHG4MvtxDigitizer.h

gsl_rng* PHG4MvtxDigitizer::RandomGenerator
private

random generator that conform with sPHENIX standard

Definition at line 63 of file PHG4MvtxDigitizer.h.

View newest version in sPHENIX GitHub at line 63 of file PHG4MvtxDigitizer.h

Referenced by PHG4MvtxDigitizer(), and ~PHG4MvtxDigitizer().


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