Back to home page

Project CMSSW displayed by LXR

 
 

    


File indexing completed on 2024-04-06 12:23:46

0001 #ifndef PhysicsTools_PatAlgos_KinematicResolutionProvider_H
0002 #define PhysicsTools_PatAlgos_KinematicResolutionProvider_H
0003 
0004 /**
0005    \class   KinematicResolutionProvider KinematicResolutionProvider.h "PhysicsTools/PatAlgos/interface/KinematicResolutionProvider.h"
0006 
0007    \brief   Interface for derived classes to provide object resolutions for PAT
0008 
0009    This vitrtual base class is an interface for all derived classes that provide 
0010    resolution factors for PAT. The following functions need to be implemented by 
0011    any derived class: 
0012 
0013    * getResolution
0014 
0015    a setup function is provided but might need to be re-implemented. 
0016 */
0017 
0018 namespace reco {
0019   class Candidate;
0020 }
0021 namespace pat {
0022   class CandKinResolution;
0023 }
0024 
0025 class KinematicResolutionProvider {
0026 public:
0027   virtual ~KinematicResolutionProvider() = default;
0028   /// get a CandKinResolution object from the service; this
0029   /// function needs to be implemented by any derived class
0030   virtual pat::CandKinResolution getResolution(const reco::Candidate &c) const = 0;
0031 };
0032 
0033 #endif