LDMX Software
TrigEcalEnergySum.h
Go to the documentation of this file.
1
7#ifndef TRIGGERECALENERGYSUM_H
8#define TRIGGERECALENERGYSUM_H
9
10// LDMX Framework
12#include "Framework/Configure/Parameters.h" // Needed to import parameters from configuration file
13#include "Framework/Event.h"
14#include "Framework/EventProcessor.h" //Needed to declare processor
15#include "TrigUtilities.h"
16#include "ap_fixed.h"
17#include "ap_int.h"
18
19namespace trigger {
20
26 public:
27 TrigEcalEnergySum(const std::string& name, framework::Process& process)
28 : framework::Producer(name, process) {
29 // std::cout << "c++ initializing TrigEcalEnergySum" << std::endl;
30 }
31
33
34 virtual void produce(framework::Event& event);
35
36 typedef ap_ufixed<16, 14> e_t; // [MeV] (Up to at least 8 GeV)
37
38 private:
39 // name of collection for trigHits to be passed as input
40 std::string hitCollName_;
41
42 // From:
43 // Tools/python/HgcrocEmulator.py
44 // ECal/python/digi.py
45 // ECal/src/EcalRecProducer.cxx
46 /* float gain = 320. / 0.1 / 1024; //
47 * mV/ADC */
48 /* float mVtoMeV = 0.130 / (37000.0 * (0.162 / 1000.) * (1. / 0.1)); //
49 * MeV/mV */
50 /* std::vector<float> layerWeights = { */
51 /* 1.675, 2.724, 4.398, 6.039, 7.696, 9.077, 9.630, 9.630, 9.630,
52 */
53 /* 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630,
54 */
55 /* 9.630, 9.630, 9.630, 9.630, 9.630, 13.497, 17.364, 17.364, 17.364,
56 */
57 /* 17.364, 17.364, 17.364, 17.364, 17.364, 17.364, 8.990}; */
58 /* float secondOrderEnergyCorrection = 4000. / 4010.; */
59 /* float mipSiEnergy = 0.130; */
60
61 // ClusterGeometry myGeo;
62};
63} // namespace trigger
64
65#endif /* TRIGGERECALENERGYSUM_H */
Class that defines the relationship between precision cells and trigger cells and provides geometry i...
Base classes for all user event processing components to extend.
Class implementing an event buffer system for storing event data.
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
virtual void configure(framework::config::Parameters &ps)
Callback for the EventProcessor to configure itself from the given set of parameters.
virtual void produce(framework::Event &event)
Process the event and put new data products into it.