CMS 3D CMS Logo

MCParticleInfo.h

Go to the documentation of this file.
00001 #ifndef SimDataFormats_BTauMC_MCParticleInfo_h
00002 #define SimDataFormats_BTauMC_MCParticleInfo_h
00003 
00009 class MCParticleInfo {
00010 
00011 public:
00012   MCParticleInfo(){}
00013   MCParticleInfo( int );
00014 
00015   ~MCParticleInfo();
00016 
00017   void reset () ;
00018 
00022   void setCode( int ) ; // this also decodes all particle related information and sets the
00023                         // corresponding variables
00024 
00028   void print() const ;
00029 
00030   int  lundCode                 () const { return lundCode_ ; }
00031   int  lundCodeOfHeaviestQuark  () const { return lundCodeOfHeaviestQuark_ ; }
00032 
00033   bool isHadron       () const { return isHadron_ ; }
00034   bool isBottomHadron () const { return isBottomHadron_ ; }
00035   bool isCharmHadron  () const { return isCharmHadron_ ; }
00036   bool isStrangeHadron() const { return isStrangeHadron_ ; }
00037   bool hasStrangeness () const { return hasStrangeness_ ; }
00038   bool isBaryon       () const { return isBaryon_ ; }
00039 
00040   bool isParton () const { return isParton_ ; }
00041   bool isD      () const { return isD_      ; }
00042   bool isU      () const { return isU_      ; }
00043   bool isS      () const { return isS_      ; }
00044   bool isC      () const { return isC_      ; }
00045   bool isB      () const { return isB_      ; }
00046   bool isGluon  () const { return isGluon_  ; }
00047   bool isQuark  () const { return isQuark_  ; }
00048   bool isLepton () const { return isLepton_ ; }
00049 
00050 private:
00051   bool isInitialised;        // properly initialised?
00052   // particle information
00053   int  lundCode_;                 // Lund Particle Code of the particle
00054   int  lundCodeOfHeaviestQuark_ ; // heaviest quark in the hadron
00055   // for hadrons
00056   bool isHadron_;            // is a hadron
00057   bool isBottomHadron_;      // b-hadron?  --|
00058   bool isCharmHadron_;       // c-hadron?    |-- refers to heaviest quark only!!
00059   bool isStrangeHadron_;     // s-hadron?  --|
00060   bool hasStrangeness_;      // carries strangeness
00061   bool isBaryon_;            // is a baryon
00062   // for partons
00063   bool isParton_ ;
00064   bool isD_      ;
00065   bool isU_      ;
00066   bool isS_      ;
00067   bool isC_      ;
00068   bool isB_      ;
00069   bool isGluon_  ;
00070   bool isQuark_  ;
00071   // for light charged leptons
00072   bool isLepton_ ;
00073 
00074 };
00075 
00076 #endif // SimDataFormats_BTauMC_MCParticleInfo_h

Generated on Tue Jun 9 17:43:03 2009 for CMSSW by  doxygen 1.5.4