Go to the documentation of this file.00001 #ifndef FORIA_TRUTHJET_HH
00002 #define FORIA_TRUTHJET_HH
00003
00004 #include "ForIA/IFourMomentum.hh"
00005 #include "boost/smart_ptr.hpp"
00006 #include <vector>
00007 #include <iostream>
00008
00009
00010 namespace ForIA{
00011
00012 using std::vector;
00013
00014 class TruthJet: public IFourMomentum{
00015
00016
00017 public:
00018
00019
00020 TruthJet();
00021
00022
00023 double E() const;
00024
00025 double ET() const;
00026
00027 double PT() const;
00028
00029 double theta() const;
00030
00031 double phi() const;
00032
00033 double eta() const;
00034
00036 double px()const;
00038 double py()const;
00040 double pz()const;
00041
00042 private:
00043
00044 friend std::ostream &operator << (std::ostream &out, const TruthJet &truthJet);
00045 friend class DataConverter;
00046
00047 double m_E;
00048 double m_PT;
00049 double m_phi;
00050 double m_eta;
00051
00052 mutable double m_px;
00053 mutable double m_py;
00054 mutable double m_pz;
00055 mutable bool m_gotpx;
00056 mutable bool m_gotpy;
00057 mutable bool m_gotpz;
00058
00059
00060 };
00061
00062 typedef boost::shared_ptr<TruthJet> TruthJetPtr;
00063 typedef boost::shared_ptr<TruthJet const> TruthJetConstPtr;
00064 typedef vector<TruthJetConstPtr> TruthJetVector;
00065
00066 }
00067 #endif