"MarlinReco"  1.32.0
Public Member Functions | Protected Attributes | List of all members
LDCCaloDigi Class Reference

=== LDCCaloDigi Processor ===
Simple calorimeter digitizer Processor. More...

#include <LDCCaloDigi.h>

Inheritance diagram for LDCCaloDigi:

Public Member Functions

 LDCCaloDigi (const LDCCaloDigi &)=delete
 
LDCCaloDigioperator= (const LDCCaloDigi &)=delete
 
virtual Processor * newProcessor ()
 
virtual void init ()
 
virtual void processRunHeader (LCRunHeader *run)
 
virtual void processEvent (LCEvent *evt)
 
virtual void check (LCEvent *evt)
 
virtual void end ()
 
virtual void fillECALGaps ()
 

Protected Attributes

int _nRun {}
 
int _nEvt {}
 
std::vector< std::string > _ecalCollections {}
 
std::vector< std::string > _hcalCollections {}
 
std::string _outputEcalCollection {}
 
std::string _outputHcalCollection {}
 
std::string _outputRelCollection {}
 
float _thresholdEcal {}
 
float _thresholdHcal {}
 
int _digitalEcal {}
 
int _digitalHcal {}
 
std::vector< float > _calibrCoeffEcal {}
 
std::vector< float > _calibrCoeffHcal {}
 
std::vector< int > _ecalLayers {}
 
std::vector< int > _hcalLayers {}
 
int _ecalGapCorrection {}
 
float _ecalGapCorrectionFactor {}
 
float _ecalModuleGapCorrectionFactor {}
 
float _ecalEndcapCorrectionFactor {}
 
std::vector< CalorimeterHitImpl * > _calHitsByStaveLayer [MAX_STAVES][MAX_LAYERS]
 
std::vector< int > _calHitsByStaveLayerModule [MAX_STAVES][MAX_LAYERS]
 
float _zOfEcalEndcap {}
 
float _barrelPixelSizeT [MAX_LAYERS] {}
 
float _barrelPixelSizeZ [MAX_LAYERS] {}
 
float _endcapPixelSizeX [MAX_LAYERS] {}
 
float _endcapPixelSizeY [MAX_LAYERS] {}
 
float _barrelStaveDir [MAX_STAVES][2] {}
 

Detailed Description

=== LDCCaloDigi Processor ===
Simple calorimeter digitizer Processor.


Takes SimCalorimeterHit Collections and
produces CalorimeterHit Collections.
Simulated energy depositions in active
layers of calorimeters are
converted into physical energy. This is done
taking into account sampling fractions of
ECAL and HCAL.
User has to specify ECAL and HCAL SimCalorimeterHit
collections with processor parameters
HCALCollections and ECALCollections.
The names of the output CalorimeterHit Collections
are specified with processor parameters
ECALOutputCollection and HCALOutputCollection.
Conversion factors for ECAL and HCAL
are specified via processor parameters
CalibrECAL and CalibrHCAL.
It should be noted that ECAL and HCAL may consist
of several sections with different sampling fractions.
To handle this situation, calibration coefficients for
ECAL and HCAL are passed as arrays of floats with each element
in this array corresponding to certain section with
a given sampling fraction.
List of layer numbers terminating each section are given through
processor parameters ECALLayers and HCALLayers
There is an option to perform digitization of
both ECAL and HCAL in a digital mode.
Digital mode is activated by
setting processor parameters
IfDigitalEcal / IfDigitalHcal to 1.
In this case CalibrECAL / CalibrHCAL will
convert the number of hits into physical energy.
Thresholds on hit energies in ECAL and HCAL
are set with processor parameters
ECALThreshold and HCALThreshold.
Relations between CalorimeterHits and SimCalorimeterHits
are held in the corresponding relation collection.
The name of this relation collection is specified
via processor parameter RelationOutputCollection.

Input collections and prerequisites

SimCalorimeterHit collections

Output

CalorimeterHit collections for ECal and HCal.
Collection of relations
between CalorimeterHits and SimCalorimeterHits.
For ECal Calorimeter hits the variable type is set to 0,
whereas for HCal Calorimeter hits the type is set to 1

Author
A. Raspereza (DESY)
M. Thomson (DESY)
Version
$Id$

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