CMS 3D CMS Logo

/data/refman/pasoursint/CMSSW_5_3_0/src/RecoTauTag/RecoTau/interface/PFRecoTauAlgorithmBase.h

Go to the documentation of this file.
00001 #ifndef RecoTauTag_RecoTau_PFRecoTauAlgorithmBase
00002 #define RecoTauTag_RecoTau_PFRecoTauAlgorithmBase
00003 
00004 #include "DataFormats/TauReco/interface/PFTauTagInfo.h"
00005 #include "DataFormats/TauReco/interface/PFTauTagInfoFwd.h"
00006 #include "DataFormats/TauReco/interface/PFTau.h"
00007 #include "DataFormats/TauReco/interface/PFTauFwd.h"
00008 #include "DataFormats/VertexReco/interface/Vertex.h"
00009 #include "DataFormats/VertexReco/interface/VertexFwd.h"
00010 #include "TrackingTools/TransientTrack/interface/TransientTrackBuilder.h"
00011 #include "TrackingTools/TransientTrack/interface/TransientTrack.h"
00012 #include "FWCore/ParameterSet/interface/ParameterSet.h"
00013 #include "FWCore/Utilities/interface/Exception.h"
00014 
00015 class PFRecoTauAlgorithmBase
00016 {
00017  public:
00018   PFRecoTauAlgorithmBase();
00019   PFRecoTauAlgorithmBase(const edm::ParameterSet&);
00020 
00021   virtual ~PFRecoTauAlgorithmBase();
00022 
00023   void setTransientTrackBuilder(const TransientTrackBuilder*);
00024   //Add other common methods
00025 
00026   //BASIC method
00027   virtual reco::PFTau buildPFTau(const reco::PFTauTagInfoRef&,const reco::Vertex&) = 0;
00028 
00029  protected:
00030   const TransientTrackBuilder *TransientTrackBuilder_;
00031   //Add other common members
00032 
00033 };
00034 #endif