Main Page   Namespace List   Class Hierarchy   Compound List   File List   Namespace Members   Compound Members   File Members  

Jet.h

Go to the documentation of this file.
00001 // ================================================
00002 // Jet class description
00003 // ================================================
00004 //
00005 // THIS TEXT TO BE REPLACED BY ATLAS STANDARD FORMAT
00006 //
00007 // Namespace Atlfast::
00008 //
00009 // class: Jet
00010 //
00011 // Authors: P.Clarke, H.Phillips, E.Richter-Was, P.Sherwood, R.Steward
00012 //
00013 // Description: 
00014 //
00015 //  Class to represent Jets constructed from Clusters
00016 //
00017 //..................................................
00018 
00019 
00020 #ifndef ATLFAST_JET_H
00021 #define ATLFAST_JET_H
00022 
00023 
00024 // Kinematic classes.
00025 #include "CLHEP/Vector/LorentzVector.h"
00026 #include "AtlfastEvent/IKinematic.h"
00027 
00028 // Gaudi includes
00029 #include "GaudiKernel/ContainedObject.h"
00030 #include "GaudiKernel/ObjectVector.h"
00031 #include "GaudiKernel/SmartRefVector.h"  
00032 
00033 // Atlfast includes
00034 #include "AtlfastEvent/Cluster.h"
00035 
00036 //Class ID for Jet class
00037 static const CLID CLID_ATLFAST_Jet=2304 ;
00038 
00039 
00040 namespace Atlfast {
00041 
00049   //........................................
00050   class Jet : 
00051     public IKinematic, 
00052     public ContainedObject, 
00053     public AssociationManager{
00054 
00055     private:
00056     
00058     HepLorentzVector m_momentum ;
00059     int m_flavor;
00060     bool m_tagged;
00062     /*#  Cluster lnkCluster; */
00063     public:
00064     
00065     // Constructors
00066     
00067     Jet() : ContainedObject(), AssociationManager() {}
00068     Jet( const Cluster& cluster);      
00069     Jet( const HepLorentzVector& vec, Cluster& cluster );
00070     void setMomentum(const HepLorentzVector& vec);
00071     
00072     // Other Athena mandatory methods
00073     static const CLID& classID() { return CLID_ATLFAST_Jet; }
00074     virtual const CLID& clID() const  {  return CLID_ATLFAST_Jet; }
00075     
00076     // To implement IKinematic
00077     virtual HepLorentzVector momentum() const; 
00078     virtual double  eta() const;
00079     virtual double  phi() const;
00080     virtual double  pT()  const;
00081     virtual double  eT()  const;
00082     virtual double  mT()  const;
00083     virtual double  px()  const;
00084     virtual double  py()  const;
00085     virtual double  pz()  const;
00086     
00087     double  e()   const;
00088     
00089     //methods to set and interogate flavor tag  
00090     void setBTag();
00091     void setCTag();
00092     void setTauTag(int tauTag);
00093     void setUntagged();
00094     
00095     bool isBTag()   const;
00096     bool isCTag()   const;
00097     bool isTauTag() const;
00098     bool isTagged() const;
00099     int pdg_id()    const;
00100 
00101   };
00102 } // end of namespace 
00103 
00104 
00105 #endif
00106 
00107 
00108 
00109 
00110 
00111 
00112 
00113 
00114 
00115 
00116 
00117 

Generated on Wed May 1 14:35:46 2002 for AtlfastEvent by doxygen1.2.13.1 written by Dimitri van Heesch, © 1997-2001