EIC Software
Reference for
EIC
simulation and reconstruction software on GitHub
|
#include <EicRoot/blob/master/eic/calorimetry/EicCalorimeterDigiHitProducer.h>
Public Member Functions | |
EicCalorimeterDigiHitProducer () | |
EicCalorimeterDigiHitProducer (const char *name) | |
~EicCalorimeterDigiHitProducer () | |
void | ResetVars () |
int | RequestTimeSpectra (Double_t tRange, UInt_t tDim) |
void | RequestEnergyDepositAccounting (double dEmax=1.0, unsigned nBins=100) |
Bool_t | EnergyDepositAccountingRequested () const |
void | SetZBinning (UInt_t zDim) const |
void | SetCleanupThreshold (unsigned threshold) const |
void | SetPrimaryLightYield (Double_t yield) const |
void | SetTimingGate (Double_t gateMin, Double_t gateMax) const |
void | SetSensorType (CalorimeterDigiParData::SensorType sType) const |
void | SetSipmSingleCellNoiseLevel (Double_t noiseLevel) const |
void | SetSipmSingleCellDynamicRange (UInt_t range) const |
void | SetApdEquivalentNoiseCharge (Double_t ENC) const |
void | SetApdGainFactor (Double_t M) const |
void | SetApdExcessNoiseFactor (Double_t ENF) const |
void | SetAttenuationLength (Double_t attenuationLength) const |
void | SetDecayConstant (Double_t decayConstant) const |
void | SetLightPropagationVelocity (Double_t velocity) const |
void | ConfigureUpstreamSensorGroup (CalorimeterSensorGroup::SensorGroupType sType, Double_t reflectivity=1.0) const |
void | ConfigureDownstreamSensorGroup (CalorimeterSensorGroup::SensorGroupType sType, Double_t reflectivity=1.0) const |
InitStatus | ExtraInit () |
int | PreExec () |
int | PostExec () |
int | HandleHit (const EicMoCaPoint *point) |
int | HandleHitCore (CalorimeterCell *cell) |
virtual void | Finish () |
Public Member Functions inherited from EicDigiHitProducer | |
EicDigiHitProducer () | |
EicDigiHitProducer (const char *name) | |
~EicDigiHitProducer () | |
void | ResetVars () |
InitStatus | Init () |
virtual void | Exec (Option_t *opt) |
void | SetPersistence (Bool_t persistence) |
void | DeclareDigiSensitiveVolume (const char *name, Double_t Kb=0.0) |
void | DeclareDigiSensitiveVolumePrefix (const char *name, Double_t Kb=0.0) |
Public Member Functions inherited from FairTask | |
FairTask () | |
FairTask (const char *name, Int_t iVerbose=1) | |
virtual | ~FairTask () |
void | InitTask () |
void | ReInitTask () |
void | SetParTask () |
virtual void | FinishTask () |
virtual void | FinishEvent () |
void | SetVerbose (Int_t iVerbose) |
void | SetInputPersistance (Bool_t val) |
void | CheckInputPersistance (TString branchName) |
Private Member Functions | |
void | FillEnergyDepositPlot (const char *name, double dE) |
void | ConfigureSensorGroupCore (CalorimeterSensorGroup *sgroup, CalorimeterSensorGroup::SensorGroupType sgType, Double_t reflectivity) const |
ClassDef (EicCalorimeterDigiHitProducer, 47) | |
Private Attributes | |
std::map< ULogicalIndex_t, CalorimeterCell > | mCells |
Bool_t | mEnergyDepositAccounting |
double | mEnergyDepositAccountingPlotDeMax |
unsigned | mEnergyDepositAccountingPlotNbins |
CalorimeterDigiParData * | mDigi |
std::map< std::string, TH1F * > | mEnergyDepositPlots |
LogicalVolumeLookupTableEntry * | mLastOkNode |
Additional Inherited Members | |
Public Types inherited from EicDigiHitProducer | |
enum | SmearingModel { NoAction, Smear, Quantize, Calculate } |
digitization model identifiers More... | |
Protected Member Functions inherited from FairTask | |
virtual InitStatus | ReInit () |
void | InitTasks () |
void | ReInitTasks () |
void | SetParTasks () |
void | FinishTasks () |
void | FinishEvents () |
Protected Attributes inherited from EicDigiHitProducer | |
EicDetName * | mDetName |
TClonesArray * | mDigiHitArray |
EicGeoParData * | mGptr |
EicNamePatternHub< double > | mSensitiveVolumes |
Bool_t | mPersistence |
Definition at line 116 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 116 of file EicCalorimeterDigiHitProducer.h
|
inline |
Definition at line 119 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 119 of file EicCalorimeterDigiHitProducer.h
References ResetVars().
EicCalorimeterDigiHitProducer::EicCalorimeterDigiHitProducer | ( | const char * | name | ) |
Definition at line 33 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 33 of file EicCalorimeterDigiHitProducer.cxx
References ResetVars().
|
inline |
Definition at line 121 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 121 of file EicCalorimeterDigiHitProducer.h
|
private |
|
inline |
Definition at line 178 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 178 of file EicCalorimeterDigiHitProducer.h
References ConfigureSensorGroupCore(), mDigi, and CalorimeterDigiParData::mSensors.
Referenced by digitization().
|
inlineprivate |
Definition at line 229 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 229 of file EicCalorimeterDigiHitProducer.h
References CalorimeterSensorGroup::mGroupType, and CalorimeterSensorGroup::mReflectivity.
Referenced by ConfigureDownstreamSensorGroup(), and ConfigureUpstreamSensorGroup().
|
inline |
Definition at line 174 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 174 of file EicCalorimeterDigiHitProducer.h
References ConfigureSensorGroupCore(), mDigi, and CalorimeterDigiParData::mSensors.
Referenced by digitization().
|
inline |
Definition at line 140 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 140 of file EicCalorimeterDigiHitProducer.h
References mEnergyDepositAccounting.
Referenced by HandleHit(), and PostExec().
|
virtual |
Optional (?) detector-specific initialization part
Reimplemented from EicDigiHitProducer.
Definition at line 158 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 158 of file EicCalorimeterDigiHitProducer.cxx
References EicNamePatternHub< T >::AnyMatch(), EicGeoMap::GetInnermostVolumeName(), EicGeoParData::GetMapNum(), EicGeoParData::GetMapPtrViaMapID(), FairRootManager::Instance(), kSUCCESS, EicDigiHitProducer::mDetName, EicDigiHitProducer::mDigiHitArray, EicDigiHitProducer::mGptr, EicDigiHitProducer::mPersistence, EicDigiHitProducer::mSensitiveVolumes, EicDetName::NAME(), EicDetName::Name(), FairRootManager::Register(), and EicGeoMap::SetSensitivityFlag().
|
private |
Definition at line 642 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 642 of file EicCalorimeterDigiHitProducer.cxx
References mEnergyDepositAccountingPlotDeMax, mEnergyDepositAccountingPlotNbins, mEnergyDepositPlots, and name.
Referenced by PostExec().
|
virtual |
Action after each event. To be implemented in the derived class
Reimplemented from FairTask.
Definition at line 964 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 964 of file EicCalorimeterDigiHitProducer.cxx
References FairRun::GetOutputFile(), FairRun::Instance(), EicDigiHitProducer::mDetName, mDigi, mEnergyDepositPlots, and EicDetName::Name().
|
virtual |
Core routine converting a single MoCa hit into digi
Should be provided for all detectors separately (pure virtual method); in fact there is no one-to-one relationship between MC points and digis for some detectors (say TPC);
Implements EicDigiHitProducer.
Definition at line 210 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 210 of file EicCalorimeterDigiHitProducer.cxx
References EnergyDepositAccountingRequested(), EicNamePatternHub< T >::ExactMatch(), exit(), EicGeoParData::GeantMultiToLogicalIndex(), EicGeoMap::GetBirkConstant(), FairMCPoint::GetEnergyLoss(), EicGeoMap::GetInnermostVolumeName(), EicGeoParData::GetLookupTableNode(), EicGeoParData::GetMapPtrViaHitMultiIndex(), EicMoCaPoint::GetMultiIndex(), EicMoCaPoint::GetPosIn(), EicMoCaPoint::GetPosOut(), EicMoCaPoint::GetPrimaryMotherID(), EicMoCaPoint::GetSecondaryMotherID(), EicMoCaPoint::GetStep(), FairMCPoint::GetTime(), HandleHitCore(), CalorimeterCell::InitializeTimeSpectrum(), CalorimeterCellParent::InitializeZCoordSpectrum(), EicGeoMap::IsSensitive(), CalorimeterDigiParData::mAttenuationLength, CalorimeterGeoParData::mCellLength, CalorimeterCell::mCellParents, mCells, mDigi, CalorimeterCellZCoordBin::mEnergyDeposit, CalorimeterCell::mEnergyDeposits, LogicalVolumeLookupTableEntry::mGeoMtx, LogicalVolumeLookupTableEntry::mGeoNode, EicDigiHitProducer::mGptr, CalorimeterCellZCoordBin::mHitNum, EicDigiHitProducer::mSensitiveVolumes, CalorimeterCellZCoordBin::mTime, CalorimeterDigiParData::mTimeDim, CalorimeterCell::mTimeSpectrum, CalorimeterCellZCoordBin::mZ, CalorimeterCellParent::mZCoordBins, CalorimeterDigiParData::mZCoordDim, EicNamePatternHub< T >::PrefixMatch(), and printf().
int EicCalorimeterDigiHitProducer::HandleHitCore | ( | CalorimeterCell * | cell | ) |
Definition at line 202 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 202 of file EicCalorimeterDigiHitProducer.cxx
Referenced by HandleHit().
|
virtual |
Detector-specific event-level post-execution call
Reimplemented from EicDigiHitProducer.
Definition at line 654 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 654 of file EicCalorimeterDigiHitProducer.cxx
References CalorimeterDigiParData::APD, CalorimeterSensorGroup::Dead, EnergyDepositAccountingRequested(), FillEnergyDepositPlot(), CalorimeterCell::GetPhotonCountSum(), it, CalorimeterDigiParData::mApdEquivalentNoiseCharge, CalorimeterDigiParData::mApdExcessNoiseFactor, CalorimeterDigiParData::mApdGainFactor, CalorimeterDigiParData::mAttenuationLength, CalorimeterGeoParData::mCellLength, CalorimeterCell::mCellParents, mCells, CalorimeterDigiParData::mCleanupThreshold, CalorimeterDigiParData::mDecayConstant, EicDigiHitProducer::mDetName, mDigi, EicDigiHitProducer::mDigiHitArray, CalorimeterCellZCoordBin::mEnergyDeposit, EicDigiHitProducer::mGptr, CalorimeterSensorGroup::mGroupType, CalorimeterDigiParData::mLightPropagationVelocity, CalorimeterCell::mNoisePhotonCount, CalorimeterDigiParData::mPrimaryLightYield, CalorimeterSensorGroup::mReflectivity, CalorimeterDigiParData::mSensors, CalorimeterDigiParData::mSensorType, CalorimeterCellParent::mSignalPhotonCount, CalorimeterDigiParData::mSipmSingleCellNoiseLevel, CalorimeterCellZCoordBin::mTime, CalorimeterDigiParData::mTimeDim, CalorimeterDigiParData::mTimingGateOffset, CalorimeterDigiParData::mTimingGateWidth, CalorimeterCellZCoordBin::mZ, CalorimeterCellParent::mZCoordBins, CalorimeterDigiParData::mZCoordDim, EicDetName::NAME(), printf(), CalorimeterSensorGroup::Reflection, CalorimeterSensorGroup::Sensor, and CalorimeterDigiParData::SiPM.
|
virtual |
Detector-specific event-level initialization
Reimplemented from EicDigiHitProducer.
Definition at line 192 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 192 of file EicCalorimeterDigiHitProducer.cxx
References mCells.
|
inline |
Definition at line 135 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 135 of file EicCalorimeterDigiHitProducer.h
References mEnergyDepositAccounting, mEnergyDepositAccountingPlotDeMax, and mEnergyDepositAccountingPlotNbins.
Referenced by digitization().
int EicCalorimeterDigiHitProducer::RequestTimeSpectra | ( | Double_t | tRange, |
UInt_t | tDim | ||
) |
Definition at line 144 of file EicCalorimeterDigiHitProducer.cxx.
View newest version in sPHENIX GitHub at line 144 of file EicCalorimeterDigiHitProducer.cxx
References mDigi, CalorimeterDigiParData::mTimeBinWidth, CalorimeterDigiParData::mTimeDim, and CalorimeterDigiParData::mTimeRange.
|
inline |
Definition at line 125 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 125 of file EicCalorimeterDigiHitProducer.h
References mDigi, mEnergyDepositAccounting, mEnergyDepositAccountingPlotDeMax, and mLastOkNode.
Referenced by EicCalorimeterDigiHitProducer().
|
inline |
Definition at line 160 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 160 of file EicCalorimeterDigiHitProducer.h
References CalorimeterDigiParData::mApdEquivalentNoiseCharge, and mDigi.
|
inline |
Definition at line 162 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 162 of file EicCalorimeterDigiHitProducer.h
References CalorimeterDigiParData::mApdExcessNoiseFactor, and mDigi.
|
inline |
Definition at line 161 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 161 of file EicCalorimeterDigiHitProducer.h
References M, CalorimeterDigiParData::mApdGainFactor, and mDigi.
|
inline |
Definition at line 164 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 164 of file EicCalorimeterDigiHitProducer.h
References CalorimeterDigiParData::mAttenuationLength, and mDigi.
Referenced by digitization().
|
inline |
Definition at line 143 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 143 of file EicCalorimeterDigiHitProducer.h
References CalorimeterDigiParData::mCleanupThreshold, and mDigi.
Referenced by digitization().
|
inline |
Definition at line 167 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 167 of file EicCalorimeterDigiHitProducer.h
References CalorimeterDigiParData::mDecayConstant, and mDigi.
Referenced by digitization().
|
inline |
Definition at line 168 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 168 of file EicCalorimeterDigiHitProducer.h
References mDigi, and CalorimeterDigiParData::mLightPropagationVelocity.
Referenced by digitization().
|
inline |
Definition at line 144 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 144 of file EicCalorimeterDigiHitProducer.h
References mDigi, and CalorimeterDigiParData::mPrimaryLightYield.
Referenced by digitization().
|
inline |
Definition at line 150 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 150 of file EicCalorimeterDigiHitProducer.h
References mDigi, and CalorimeterDigiParData::mSensorType.
Referenced by digitization().
|
inline |
Definition at line 155 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 155 of file EicCalorimeterDigiHitProducer.h
References mDigi, and CalorimeterDigiParData::mSipmSingleCellDynamicRange.
|
inline |
Definition at line 152 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 152 of file EicCalorimeterDigiHitProducer.h
References mDigi, and CalorimeterDigiParData::mSipmSingleCellNoiseLevel.
|
inline |
Definition at line 145 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 145 of file EicCalorimeterDigiHitProducer.h
References mDigi, CalorimeterDigiParData::mTimingGateOffset, and CalorimeterDigiParData::mTimingGateWidth.
Referenced by digitization().
|
inline |
Definition at line 142 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 142 of file EicCalorimeterDigiHitProducer.h
References mDigi, and CalorimeterDigiParData::mZCoordDim.
Referenced by digitization().
|
private |
Definition at line 204 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 204 of file EicCalorimeterDigiHitProducer.h
Referenced by HandleHit(), PostExec(), and PreExec().
|
private |
Definition at line 212 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 212 of file EicCalorimeterDigiHitProducer.h
Referenced by ConfigureDownstreamSensorGroup(), ConfigureUpstreamSensorGroup(), Finish(), HandleHit(), PostExec(), RequestTimeSpectra(), ResetVars(), SetApdEquivalentNoiseCharge(), SetApdExcessNoiseFactor(), SetApdGainFactor(), SetAttenuationLength(), SetCleanupThreshold(), SetDecayConstant(), SetLightPropagationVelocity(), SetPrimaryLightYield(), SetSensorType(), SetSipmSingleCellDynamicRange(), SetSipmSingleCellNoiseLevel(), SetTimingGate(), and SetZBinning().
|
private |
Definition at line 207 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 207 of file EicCalorimeterDigiHitProducer.h
Referenced by EnergyDepositAccountingRequested(), RequestEnergyDepositAccounting(), and ResetVars().
|
private |
Definition at line 208 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 208 of file EicCalorimeterDigiHitProducer.h
Referenced by FillEnergyDepositPlot(), RequestEnergyDepositAccounting(), and ResetVars().
|
private |
Definition at line 209 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 209 of file EicCalorimeterDigiHitProducer.h
Referenced by FillEnergyDepositPlot(), and RequestEnergyDepositAccounting().
|
private |
Definition at line 218 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 218 of file EicCalorimeterDigiHitProducer.h
Referenced by FillEnergyDepositPlot(), and Finish().
|
private |
Definition at line 224 of file EicCalorimeterDigiHitProducer.h.
View newest version in sPHENIX GitHub at line 224 of file EicCalorimeterDigiHitProducer.h
Referenced by ResetVars().