LDMX Software
ReSimVerifier.h
1#ifndef RESIMVERIFIER_H
2#define RESIMVERIFIER_H
3
4#include "Framework/Configure/Parameters.h"
5#include "Framework/Event.h"
8
9namespace dqm {
10
12 public:
13 ReSimVerifier(const std::string& name, framework::Process& process)
15 void configure(framework::config::Parameters& parameters) override;
16
17 void analyze(const framework::Event& event) override;
18
19 /*
20 * Check that the simhits between the two collections are identical.
21 *
22 * @return: False if any hit is different between the two
23 *
24 **/
25 bool verifySimCalorimeterHits(
26 const std::vector<ldmx::SimCalorimeterHit>& simHits,
27 const std::vector<ldmx::SimCalorimeterHit>& reSimHits);
28
29 /*
30 * Check that all SimParticles are present in both passes of the event
31 *
32 * @return: False if any SimParticle is different between the two
33 *
34 **/
35 bool verifySimParticles(const framework::Event& event);
36
37 private:
38 std::vector<std::string> collections_;
39 std::string sim_coll_name_{"SimParticles"};
40 std::string sim_pass_name_{""};
41 std::string re_sim_pass_name_{""};
42
43 /*
44 * If true, abort on the first mismatch. Otherwise, report and continue.
45 **/
46 bool stop_on_error_{};
47};
48} // namespace dqm
49
50#endif /* RESIMVERIFIER_H */
Base classes for all user event processing components to extend.
Class implementing an event buffer system for storing event data.
Class which stores simulated calorimeter hit information.
void analyze(const framework::Event &event) override
Process the event and make histograms or summaries.
void configure(framework::config::Parameters &parameters) override
Callback for the EventProcessor to configure itself from the given set of parameters.
Base class for a module which does not produce a data product.
virtual void process(Event &event) final
Processing an event for an Analyzer is calling analyze.
Implements an event buffer system for storing event data.
Definition Event.h:40
Class which represents the process under execution.
Definition Process.h:34
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:26