CMS 3D CMS Logo

NUEvent.h
Go to the documentation of this file.
1 #ifndef FastSimulation_MaterialEffects_NUEvent_h
2 #define FastSimulation_MaterialEffects_NUEvent_h
3 
4 #include <vector>
5 
6 class NUEvent {
7 public:
8  NUEvent() {}
9  void reset() {
10  NUParticles_.clear();
11  NUInteractions_.clear();
12  }
13 
14  class NUParticle {
15  public:
16  NUParticle() : px(0.), py(0.), pz(0.), mass(0.), id(0) {}
17  float px;
18  float py;
19  float pz;
20  float mass;
21  int id;
22  };
23 
24  class NUInteraction {
25  public:
26  NUInteraction() : first(0), last(0) {}
27  unsigned first;
28  unsigned last;
29  };
30 
31  void addNUParticle(const NUParticle& ptc) { NUParticles_.push_back(ptc); }
32 
33  void addNUInteraction(const NUInteraction& idx) { NUInteractions_.push_back(idx); }
34 
35  const std::vector<NUEvent::NUParticle>& theNUParticles() { return NUParticles_; }
36 
37  const std::vector<NUEvent::NUInteraction>& theNUInteractions() { return NUInteractions_; }
38 
39  unsigned nParticles() const { return NUParticles_.size(); }
40 
41  unsigned nInteractions() const { return NUInteractions_.size(); }
42 
43 private:
44  std::vector<NUEvent::NUParticle> NUParticles_;
45  std::vector<NUEvent::NUInteraction> NUInteractions_;
46 };
47 
48 #endif
NUEvent::NUInteraction::NUInteraction
NUInteraction()
Definition: NUEvent.h:26
NUEvent::NUParticle
Definition: NUEvent.h:14
NUEvent::theNUInteractions
const std::vector< NUEvent::NUInteraction > & theNUInteractions()
Definition: NUEvent.h:37
NUEvent::NUParticles_
std::vector< NUEvent::NUParticle > NUParticles_
Definition: NUEvent.h:44
NUEvent::NUParticle::py
float py
Definition: NUEvent.h:18
NUEvent::NUEvent
NUEvent()
Definition: NUEvent.h:8
NUEvent::NUParticle::px
float px
Definition: NUEvent.h:17
NUEvent::theNUParticles
const std::vector< NUEvent::NUParticle > & theNUParticles()
Definition: NUEvent.h:35
NUEvent::NUParticle::mass
float mass
Definition: NUEvent.h:20
NUEvent::nParticles
unsigned nParticles() const
Definition: NUEvent.h:39
heavyIonCSV_trainingSettings.idx
idx
Definition: heavyIonCSV_trainingSettings.py:5
NUEvent::nInteractions
unsigned nInteractions() const
Definition: NUEvent.h:41
NUEvent::NUInteraction::last
unsigned last
Definition: NUEvent.h:28
NUEvent::NUParticle::id
int id
Definition: NUEvent.h:21
NUEvent::NUInteractions_
std::vector< NUEvent::NUInteraction > NUInteractions_
Definition: NUEvent.h:45
NUEvent::NUInteraction::first
unsigned first
Definition: NUEvent.h:27
NUEvent::addNUParticle
void addNUParticle(const NUParticle &ptc)
Definition: NUEvent.h:31
NUEvent::reset
void reset()
Definition: NUEvent.h:9
NUEvent::NUParticle::pz
float pz
Definition: NUEvent.h:19
NUEvent::NUInteraction
Definition: NUEvent.h:24
NUEvent
Definition: NUEvent.h:6
NUEvent::addNUInteraction
void addNUInteraction(const NUInteraction &idx)
Definition: NUEvent.h:33
NUEvent::NUParticle::NUParticle
NUParticle()
Definition: NUEvent.h:16