LDMX Software
DarkBremInteraction.h
2#include "Math/Vector3D.h"
3#include "SimCore/Event/SimParticle.h"
4
5namespace dqm {
32 public:
33 DarkBremInteraction(const std::string& n, framework::Process& p)
34 : framework::Producer(n, p) {}
48 virtual void produce(framework::Event& e) override;
49
50 void configure(framework::config::Parameters& parameters) override;
51
52 private:
84 std::map<std::string, int> known_materials_ = {
85 {"Carbon", 1},
86 {"PCB", 2}, // in v12, the motherboards were simple
87 // rectangles with 'PCB' in the name
88 {"Glue", 3},
89 {"Si", 4},
90 {"Al", 5},
91 {"W", 6},
92 {"target", 6},
93 {"trigger_pad", 7},
94 {"strongback", 5}, // strongback
95 // is made of
96 // aluminum
97 {"motherboard", 2}, // motherboards are PCB
98 {"support", 5}, // support box is aluminum
99 {"CFMix", 3}, // in v12, we called the Glue layers CFMix
100 {"C_volume", 1} // in v12, we called the carbon cooling planes C but this
101 // is too general for substr matching
102 };
103
131 std::map<int, int> known_elements_ = {{1, 1}, {6, 2}, {8, 3}, {11, 4},
132 {14, 5}, {20, 6}, {29, 7}, {39, 8},
133 {71, 9}, {74, 10}};
134
135 std::string particle_passname_;
136};
137
138} // namespace dqm
Base classes for all user event processing components to extend.
Go through the particle map and find the dark brem products, storing their vertex and the dark brem o...
void configure(framework::config::Parameters &parameters) override
Callback for the EventProcessor to configure itself from the given set of parameters.
std::map< std::string, int > known_materials_
the list of known materials assigning them to material ID numbers
virtual void produce(framework::Event &e) override
extract the kinematics of the dark brem interaction from the SimParticles
std::map< int, int > known_elements_
The list of known elements assigning them to the bins that we are putting them into.
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.
Class encapsulating parameters for configuring a processor.
Definition Parameters.h:29