LDMX Software
NtupleWriter.h
1#ifndef TRIGGER_NTUPLEWRITER_H_
2#define TRIGGER_NTUPLEWRITER_H_
3
5#include "Framework/NtupleManager.h"
6#include "TFile.h"
7// #include "TTree.h"
8using std::vector;
9
10namespace trigger {
11
17 public:
18 NtupleWriter(const std::string& name, framework::Process& process);
20 virtual void produce(framework::Event& event);
21 virtual void onProcessStart();
22 virtual void onProcessEnd();
23
24 private:
25 TFile* out_file_{nullptr};
26 std::string tag_{"Events"};
27 std::string out_path_{"./ntuple.root"};
28
29 std::string target_sp_hits_event_passname_;
30 std::string target_sp_passname_;
31
32 std::string ecal_sp_hits_events_passname_;
33 std::string ecal_sp_passname_;
34
35 std::string ecal_trig_sums_event_passname_;
36 std::string ecal_trig_sums_passname_;
37
38 std::string hcal_trig_quads_events_passname_;
39 std::string hcal_trig_quads_passname_;
40
41 std::string trig_electrons_event_passname_;
42 std::string trig_electrons_passname_;
43
44 bool write_truth_{true};
45 bool write_ele_{true};
46 bool write_ecal_sums_{true};
47 bool write_hcal_sums_{true};
48 bool write_ecal_trig_mi_ps_{true};
49 bool write_hcal_trig_mi_ps_{true};
50};
51} // namespace trigger
52
53#endif // TRIGGER_NTUPLEWRITER_H_
Base classes for all user event processing components to extend.
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
Null algorithm test.
virtual void onProcessStart()
Callback for the EventProcessor to take any necessary action when the processing of events starts,...
virtual void configure(framework::config::Parameters &)
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.
virtual void onProcessEnd()
Callback for the EventProcessor to take any necessary action when the processing of events finishes,...