00001 #ifndef FASTSHOWER_PARTICLEINFO_H
00002 #define FASTSHOWER_PARTICLEINFO_H
00003
00004 #ifndef STD_IOSTREAM_H
00005 #define STD_IOSTREAM_H
00006 #include <iostream>
00007 #endif
00008
00009 class ostream;
00010 namespace FastShower{
00011
00016 class ParticleInfo{
00017 public:
00018
00021 ParticleInfo();
00022 ParticleInfo(double phi, double eta, double energy, int pdgId);
00024
00025 double phi() const;
00026 double eta() const;
00027 double energy() const;
00028 int id() const;
00029
00030 private:
00031
00032 double m_phi;
00033 double m_eta;
00034 double m_energy;
00035 int m_id;
00036 };
00037 std::ostream& operator<<(std::ostream&, const ParticleInfo&);
00038 std::ostream& operator<<(std::ostream&, const ParticleInfo*);
00040
00042
00043 double ParticleInfo::phi() const { return m_phi; }
00045 inline
00046 double ParticleInfo::eta() const { return m_eta; }
00048 inline
00049 double ParticleInfo::energy() const { return m_energy; }
00051 inline
00052 int ParticleInfo::id() const { return m_id; }
00053 }
00054 #endif
00055
00056
00057
00058
00059
00060
00061
00062