CMS 3D CMS Logo

MaterialInformation.h
Go to the documentation of this file.
1 #ifndef SimDataFormats_CaloHit_MaterialInformation_H
2 #define SimDataFormats_CaloHit_MaterialInformation_H
3 
4 #include <string>
5 #include <vector>
6 
7 // Persistent information about steps in material
8 
10 public:
12  std::string vname, int id = 0, float eta = 0, float phi = 0, float length = 0, float radlen = 0, float intlen = 0)
13  : vname_(vname), id_(id), eta_(eta), phi_(phi), length_(length), radlen_(radlen), intlen_(intlen) {}
14  MaterialInformation() : vname_(""), id_(0), eta_(0), phi_(0), length_(0), radlen_(0), intlen_(0) {}
15 
16  //Names
17  static const char *name() { return "MaterialInformation"; }
18  const char *getName() const { return name(); }
19  std::string vname() const { return vname_; }
20  int id() const { return id_; }
21  void setID(int i) { id_ = i; }
22 
23  //Track eta, phi
24  double trackEta() const { return eta_; }
25  void setTrackEta(double e) { eta_ = e; }
26  double trackPhi() const { return phi_; }
27  void setTrackPhi(double f) { phi_ = f; }
28 
29  //Lengths
30  double stepLength() const { return length_; }
31  void setStepLength(double l) { length_ = l; }
32  double radiationLength() const { return radlen_; }
33  void setRadiationLength(double r) { radlen_ = r; }
34  double interactionLength() const { return intlen_; }
35  void setInteractionLength(double i) { intlen_ = i; }
36 
37 protected:
39  int id_;
40  float eta_;
41  float phi_;
42  float length_;
43  float radlen_;
44  float intlen_;
45 };
46 
47 namespace edm {
48  typedef std::vector<MaterialInformation> MaterialInformationContainer;
49 } // namespace edm
50 
51 #include <iosfwd>
52 std::ostream &operator<<(std::ostream &, const MaterialInformation &);
53 
54 #endif // _SimDataFormats_CaloHit_MaterialInformation_h_
void setTrackEta(double e)
double interactionLength() const
void setTrackPhi(double f)
void setInteractionLength(double i)
double stepLength() const
std::vector< MaterialInformation > MaterialInformationContainer
double f[11][100]
static const char * name()
MaterialInformation(std::string vname, int id=0, float eta=0, float phi=0, float length=0, float radlen=0, float intlen=0)
double radiationLength() const
std::string vname() const
void setStepLength(double l)
HLT enums.
const char * getName() const
void setRadiationLength(double r)
std::ostream & operator<<(std::ostream &, const MaterialInformation &)