1 |
dgele |
1.1 |
#ifndef PhysicsTools_PatAlgos_StringResolutionProvider_H
|
2 |
|
|
#define PhysicsTools_PatAlgos_StringResolutionProvider_H
|
3 |
|
|
#include "DataFormats/PatCandidates/interface/CandKinResolution.h"
|
4 |
|
|
#include "PhysicsTools/PatAlgos/interface/KinematicResolutionProvider.h"
|
5 |
|
|
#include "DataFormats/Candidate/interface/Candidate.h"
|
6 |
|
|
#include "FWCore/ParameterSet/interface/ParameterSet.h"
|
7 |
|
|
|
8 |
|
|
#include "PhysicsTools/Utilities/interface/StringObjectFunction.h"
|
9 |
|
|
|
10 |
|
|
class StringResolutionProvider : public KinematicResolutionProvider {
|
11 |
|
|
public:
|
12 |
|
|
typedef StringObjectFunction<reco::Candidate> Function;
|
13 |
|
|
StringResolutionProvider(const edm::ParameterSet &iConfig) ;
|
14 |
|
|
virtual ~StringResolutionProvider() ;
|
15 |
|
|
virtual pat::CandKinResolution getResolution(const reco::Candidate &c) const ;
|
16 |
|
|
private:
|
17 |
|
|
std::auto_ptr<Function> resols_[4]; // StringObjectFunction is not default constructible :-(
|
18 |
|
|
std::vector<pat::CandKinResolution::Scalar> constraints_;
|
19 |
|
|
pat::CandKinResolution::Parametrization parametrization_;
|
20 |
|
|
int dimension_;
|
21 |
|
|
};
|
22 |
|
|
#endif
|