LDMX Software
TestBeamHitProducer.h
Go to the documentation of this file.
1
7#ifndef TRIGSCINT_TESTBEAMHITPRODUCER_H
8#define TRIGSCINT_TESTBEAMHITPRODUCER_H
9
10// LDMX
11
12/*~~~~~~~~~~~~~~~*/
13/* Framework */
14/*~~~~~~~~~~~~~~~*/
15#include "Framework/Configure/Parameters.h"
17
18namespace trigscint {
19
27 public:
28 TestBeamHitProducer(const std::string& name, framework::Process& process);
29
30 virtual ~TestBeamHitProducer() = default;
31
38 void configure(framework::config::Parameters& parameters) override;
39
40 void produce(framework::Event& event) override;
41
42 private:
44
46 std::string input_col_;
47
50 std::string input_pass_name_;
51
54 std::string output_collection_;
55
57 std::vector<double> gain_;
58
60 std::vector<double> peds_;
61
63 std::vector<double> mip_response_;
64
67
70
74
77
80 bool do_clean_hits_{false};
81};
82
83} // namespace trigscint
84
85#endif
Base classes for all user event processing components to extend.
Implements an event buffer system for storing event data.
Definition Event.h:40
Class which represents the process under execution.
Definition Process.h:34
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:26
Organizes digis into TrigScintHits, based on linearized full event readout from test beam/test stand.
std::string input_pass_name_
Name of the pass that the input collection is on (empty string means take any pass)
std::string output_collection_
Name of the output collection that will be used to stored the trigger scintillator hits.
void configure(framework::config::Parameters &parameters) override
Callback for the processor to configure itself from the given set of parameters.
int pulse_width_
Total number of samples used in pulse integration.
std::vector< double > gain_
SiPM gain, per channel (all initialized to 2e6 in default config)
int start_sample_
start sample for pulse integration (not including any fiber offsets)
bool do_clean_hits_
boolean indicating whether we want to apply quality criteria in hit reconstruction
std::string input_col_
Set the local verbosity level.
int pulse_width_lyso_
Total number of samples used in pulse integration for LYSO (long decay, might need wider window)
int n_instrumented_channels_
Number of instrumented channels in module.
std::vector< double > peds_
channel pedestals [fC]
void produce(framework::Event &event) override
Process the event and put new data products into it.
std::vector< double > mip_response_
channel MIP response for intercalibration