/home/bes3soft/bes3soft/Boss/7.0.2/dist/7.0.2/Event/BesDChain/BesDChain-00-00-14/BesDChain/util/KinematicData.h

Go to the documentation of this file.
00001 #ifndef DECAYCHAIN_KINEMATICDATA_H
00002 #define DECAYCHAIN_KINEMATICDATA_H
00003 
00004 #include "CLHEP/Vector/LorentzVector.h"
00005 
00006 using CLHEP::HepLorentzVector;
00007 
00008 namespace DecayChain {
00009 
00010 class KinematicData
00011 {
00012    public:
00013       KinematicData();
00014       KinematicData(const HepLorentzVector& p4);
00015 
00016       void setUserTag( const int tag );
00017       void setCharge( const int aCharge );
00018       //void setMass( const double aMass );
00019       void setP4( const HepLorentzVector& aMomentum );
00020 #ifdef EXTEND
00021       void recover() const { m_p4 = m_p4_bakup; }
00022 #endif
00023 
00024       int    userTag() const;
00025       int    charge() const;
00026       double mass() const;
00027       double energy() const;
00028       //const Hep3Vector& momentum() const;
00029       const HepLorentzVector& p4() const;
00030 
00031    private:
00032       int              m_userTag;
00033       int              m_charge;
00034       mutable HepLorentzVector m_p4;
00035 #ifdef EXTEND
00036       void bakup() { if(m_hasbeenbakup) return; m_p4_bakup = m_p4; m_hasbeenbakup=true; }
00037       HepLorentzVector m_p4_bakup;
00038       bool m_hasbeenbakup;
00039 #endif
00040 };
00041 }
00042 
00043 #endif

Generated on Tue Nov 29 22:58:19 2016 for BOSS_7.0.2 by  doxygen 1.4.7