LDMX Software
PFTrackProducer.h
Go to the documentation of this file.
1
7#ifndef PFTRACKPRODUCER_H
8#define PFTRACKPRODUCER_H
9
10// LDMX Framework
11#include "Framework/Configure/Parameters.h" // Needed to import parameters from configuration file
12#include "Framework/Event.h"
13#include "Framework/EventProcessor.h" //Needed to declare processor
14
15namespace recon {
16
22 public:
23 PFTrackProducer(const std::string& name, framework::Process& process)
25
27
28 virtual void produce(framework::Event& event);
29
30 private:
31 bool truth_tracking_{true};
32
33 // name of collection for track inputs to be passed
34 std::string input_track_coll_name_;
35 // pass name for the input collection
36 std::string input_pass_name_;
37 // name of collection for pfTracks to be output
38 std::string output_track_coll_name_;
39 // boolean to cheat to select only electron tracks
40 // in this cheating truth tracker
41 bool do_electron_tracking_{};
42 // minimum z_ momentum component allowed for beam electron selection
43 double min_electron_momentum_z_{};
44 // maximum trackID allowed for beam electron selection
45 int max_electron_track_id_{};
46};
47} // namespace recon
48
49#endif /* PFTRACKPRODUCER_H */
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 produce(framework::Event &event)
Process the event and put new data products into it.
virtual void configure(framework::config::Parameters &ps)
Callback for the EventProcessor to configure itself from the given set of parameters.