LDMX Software
EcalRecProducer.h
Go to the documentation of this file.
1
9#ifndef ECAL_ECALRECPRODUCER_H_
10#define ECAL_ECALRECPRODUCER_H_
11
12//----------------//
13// C++ StdLib //
14//----------------//
15#include <memory> //for smart pointers
16
17//----------//
18// LDMX //
19//----------//
20#include "DetDescr/DetectorID.h"
21#include "DetDescr/EcalID.h"
23
24namespace ecal {
25
34 public:
38 EcalRecProducer(const std::string& name, framework::Process& process);
39
43 virtual ~EcalRecProducer();
44
49
58 virtual void produce(framework::Event& event);
59
60 private:
62 std::string digiCollName_;
63
65 std::string digiPassName_;
66
68 std::string simHitCollName_;
69
71 std::string simHitPassName_;
72
74 std::string recHitCollName_;
75
78
81
84
93 std::vector<double> layerWeights_;
94
104};
105} // namespace ecal
106
107#endif
Class that defines an ECal detector ID with a cell number.
Base classes for all user event processing components to extend.
Performs basic ECal reconstruction.
std::string digiPassName_
Digi Pass Name to use as input.
std::vector< double > layerWeights_
Layer Weights to use for this reconstruction.
double mip_si_energy_
Energy [MeV] deposited by a MIP in Si 0.5mm thick.
virtual ~EcalRecProducer()
Destructor.
std::string digiCollName_
Digi Collection Name to use as input.
double charge_per_mip_
Number of electrons generated by average MIP in Si 0.5mm thick.
std::string recHitCollName_
output hit collection name
std::string simHitPassName_
simhit pass name
virtual void produce(framework::Event &event)
Produce EcalHits and put them into the event bus using the EcalDigis as input.
virtual void configure(framework::config::Parameters &)
Grabs configure parameters from the python config file.
double clock_cycle_
Length of clock cycle [ns].
std::string simHitCollName_
simhit collection name
double secondOrderEnergyCorrection_
Second Order Energy Correction to use for this reconstruction.
Implements an event buffer system for storing event data.
Definition Event.h:41
Class which represents the process under execution.
Definition Process.h:36
Base class for a module which produces a data product.
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:27