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)
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 hit_coll_name_;
37 // name of collection for trigCluster to be output
38 std::string cluster_coll_name_;
39
40 std::string hit_coll_passname_;
41 std::string hit_coll_name_events_passname_;
42
43 // From:
44 // Tools/python/HgcrocEmulator.py
45 // ECal/python/digi.py
46 // ECal/src/EcalRecProducer.cxx
47 /* float gain_ = 320. / 0.1 / 1024; //
48 * mV/ADC */
49 /* float mVtoMeV_ = 0.130 / (37000.0 * (0.162 / 1000.) * (1. / 0.1)); //
50 * MeV/mV */
51 /* std::vector<float> layerWeights = { */
52 /* 1.675, 2.724, 4.398, 6.039, 7.696, 9.077, 9.630, 9.630, 9.630,
53 */
54 /* 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630, 9.630,
55 */
56 /* 9.630, 9.630, 9.630, 9.630, 9.630, 13.497, 17.364, 17.364, 17.364,
57 */
58 /* 17.364, 17.364, 17.364, 17.364, 17.364, 17.364, 8.990}; */
59 /* float secondOrderEnergyCorrection_ = 4000. / 4010.; */
60 /* float mipSiEnergy_ = 0.130; */
61 /* int hgc_compression_factor_ = 8; */
62
63 // ClusterGeometry myGeo;
64};
65} // namespace trigger
66
67#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:42
Class which represents the process under execution.
Definition Process.h:36
Base class for a module which produces a data product.
virtual void process(Event &event) final
Processing an event for a Producer is calling produce.
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:29
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.