CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_6/src/DataFormats/PatCandidates/interface/Conversion.h

Go to the documentation of this file.
00001 #ifndef DataFormats_PatCandidates_Conversion_h
00002 #define DataFormats_PatCandidates_Conversion_h
00003 
00004 #include "DataFormats/EgammaCandidates/interface/GsfElectron.h"
00005 #include "DataFormats/EgammaCandidates/interface/GsfElectronFwd.h"
00006 #include "DataFormats/EgammaCandidates/interface/GsfElectronCore.h"
00007 #include "DataFormats/EgammaCandidates/interface/GsfElectronCoreFwd.h"
00008 #include "DataFormats/GsfTrackReco/interface/GsfTrack.h"
00009 #include "DataFormats/PatCandidates/interface/Lepton.h"
00010 
00011 // Define typedefs for convenience
00012 namespace pat {
00013   class Conversion;
00014   typedef std::vector<Conversion>              ConversionCollection;
00015   typedef edm::Ref<ConversionCollection>       ConversionRef;
00016   typedef edm::RefVector<ConversionCollection> ConversionRefVector;
00017 }
00018 
00019 
00020 //we use index to match with electron. However, can we do this with gsfTrack instead of index?
00021 namespace pat {
00022   class Conversion {
00023   public:
00024     Conversion () {}
00025     Conversion ( int index );
00026     virtual ~Conversion() {}
00027 
00028     const double vtxProb() const {return vtxProb_;}
00029     void setVtxProb(double vtxProb);
00030     const double lxy() const {return lxy_;}
00031     void setLxy( double lxy );
00032     const int nHitsMax() const {return nHitsMax_;}
00033     void setNHitsMax( int nHitsMax );
00034     const int index() const {return index_; }     
00035 
00036   private:
00037     double vtxProb_;
00038     double lxy_;
00039     int nHitsMax_;
00040 
00041     //electron index matched with conversion
00042     int index_;
00043 
00044   };
00045 }
00046 
00047 #endif