CMS 3D CMS Logo

ParticleFlux.h
Go to the documentation of this file.
1 #ifndef SimDataFormatsCaloTestParticleFlux_h
2 #define SimDataFormatsCaloTestParticleFlux_h
3 
4 #include <string>
5 #include <vector>
6 #include <memory>
7 
10 
11 class ParticleFlux {
12 
13 public:
14 
16  virtual ~ParticleFlux() {}
17 
18  struct flux {
19  int pdgId, vxType;
20  float tof;
23  flux(int id=0, int typ=0, float t=0) : pdgId(id), vxType(typ), tof(t) {}
24  };
25 
26  std::string const& getName() const {return detName_;}
27  int getId() const {return detId_;}
28  unsigned int getComponents() const {return fluxVector_.size();}
29  std::vector<ParticleFlux::flux> getFlux() const& {return fluxVector_;}
30  void setName(const std::string nm) {detName_ = nm;}
31  void setId(const int id) {detId_ = id;}
32  void addFlux(const ParticleFlux::flux f);
33  void clear();
34 
35 private:
36 
38  int detId_;
39  std::vector<flux> fluxVector_;
40 
41 };
42 
43 #endif
virtual ~ParticleFlux()
Definition: ParticleFlux.h:16
flux(int id=0, int typ=0, float t=0)
Definition: ParticleFlux.h:23
unsigned int getComponents() const
Definition: ParticleFlux.h:28
void setId(const int id)
Definition: ParticleFlux.h:31
void addFlux(const ParticleFlux::flux f)
Definition: ParticleFlux.cc:3
int getId() const
Definition: ParticleFlux.h:27
math::GlobalVector momentum
Definition: ParticleFlux.h:22
math::GlobalPoint vertex
Definition: ParticleFlux.h:21
ParticleFlux(std::string name="", int id=0)
Definition: ParticleFlux.h:15
double f[11][100]
std::string detName_
Definition: ParticleFlux.h:37
ROOT::Math::DisplacementVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalVector
vector in glovbal coordinate system
Definition: Vector3D.h:27
void setName(const std::string nm)
Definition: ParticleFlux.h:30
std::string const & getName() const
Definition: ParticleFlux.h:26
math::GlobalPoint hitPoint
Definition: ParticleFlux.h:21
std::vector< ParticleFlux::flux > getFlux() const &
Definition: ParticleFlux.h:29
ROOT::Math::PositionVector3D< ROOT::Math::Cartesian3D< float >, ROOT::Math::GlobalCoordinateSystemTag > GlobalPoint
point in global coordinate system
Definition: Point3D.h:17
std::vector< flux > fluxVector_
Definition: ParticleFlux.h:39
void clear()
Definition: ParticleFlux.cc:7