CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_9_patch3/src/DQMOffline/RecoB/interface/EtaPtBin.h

Go to the documentation of this file.
00001 #ifndef EtaPtBin_H
00002 #define EtaPtBin_H
00003 
00004 #include <string>
00005 
00006 #include "DataFormats/JetReco/interface/Jet.h"
00007 // #include "RecoBTag/MCTools/interface/JetFlavour.h"
00008 
00015 class EtaPtBin {
00016 
00017  public:
00018 
00019   EtaPtBin(const bool& etaActive_ , const double& etaMin_ , const double& etaMax_ ,
00020             const bool& ptActive_  , const double& ptMin_  , const double& ptMax_ ) ;
00021 
00022   ~EtaPtBin () {} ;
00023 
00025   std::string getDescriptionString () const { return descriptionString ; } 
00026 
00029   static std::string buildDescriptionString 
00030         ( const bool& etaActive_ , const double& etaMin_ , const double& etaMax_ ,
00031           const bool& ptActive_  , const double& ptMin_  , const double& ptMax_ ) ;  // pt
00032   
00033   
00035   bool   getEtaActive () const { return etaActive ; }
00036   double getEtaMin    () const { return etaMin    ; }
00037   double getEtaMax    () const { return etaMax    ; }
00038 
00039   bool   getPtActive () const { return ptActive ; }
00040   double getPtMin    () const { return ptMin    ; }
00041   double getPtMax    () const { return ptMax    ; }
00042 
00043 
00045   bool inBin(const double & eta , const double & pt) const;
00046   bool inBin(const reco::Jet & jet) const;
00047 //   bool inBin(const BTagMCTools::JetFlavour & jetFlavour) const;
00048 
00049  private:
00050 
00051   // definition of the bin
00052 
00053   bool   etaActive ; // should cuts be applied?
00054   double etaMin ;
00055   double etaMax ;
00056   
00057   bool   ptActive ; // should cuts be applied?
00058   double ptMin ;
00059   double ptMax ;
00060   
00061 
00062   // description string as built from bin definition
00063   std::string descriptionString ;
00064   
00065   
00066 } ;
00067 
00068 
00069 #endif