LDMX Software
TrigEcalClusterProducer.h
Go to the documentation of this file.
1
7#ifndef TRIGECALCLUSTERPRODUCER_H
8#define TRIGECALCLUSTERPRODUCER_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 TrigEcalClusterProducer(const std::string& name, framework::Process& process)
28 : framework::Producer(name, process) {}
29
31
32 virtual void produce(framework::Event& event);
33
34 private:
35 // name of collection for trigHits to be passed as input
36 std::string hitCollName_;
37 // name of collection for trigCluster to be output
38 std::string clusterCollName_;
39
40 // From:
41 // Tools/python/HgcrocEmulator.py
42 // ECal/python/digi.py
43 // ECal/src/EcalRecProducer.cxx
44 /* float gain_ = 320. / 0.1 / 1024; //
45 * mV/ADC */
46 /* float mVtoMeV_ = 0.130 / (37000.0 * (0.162 / 1000.) * (1. / 0.1)); //
47 * MeV/mV */
48 /* std::vector<float> layerWeights = { */
49 /* 1.675, 2.724, 4.398, 6.039, 7.696, 9.077, 9.630, 9.630, 9.630,
50 */
51 /* 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630,
52 */
53 /* 9.630, 9.630, 9.630, 9.630, 9.630, 13.497, 17.364, 17.364, 17.364,
54 */
55 /* 17.364, 17.364, 17.364, 17.364, 17.364, 17.364, 8.990}; */
56 /* float secondOrderEnergyCorrection_ = 4000. / 4010.; */
57 /* float mipSiEnergy_ = 0.130; */
58 /* int hgc_compression_factor_ = 8; */
59
60 // ClusterGeometry myGeo;
61};
62} // namespace trigger
63
64#endif /* TRIGECALCLUSTERPRODUCER_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.