23 |
|
#include <TMinuit.h> |
24 |
|
#include <TH2.h> |
25 |
|
|
26 |
< |
|
26 |
> |
#include "UserCode/JetFitAnalyzer/interface/HistoFitter.h" |
27 |
|
|
28 |
|
class JetFitAnalyzer : public edm::EDAnalyzer { |
29 |
|
public: |
30 |
|
explicit JetFitAnalyzer(const edm::ParameterSet&); |
31 |
|
~JetFitAnalyzer(); |
32 |
< |
|
33 |
< |
|
32 |
> |
|
33 |
|
protected: |
34 |
|
virtual void beginJob(const edm::EventSetup&); |
35 |
|
virtual void analyze(const edm::Event&, const edm::EventSetup&); |
36 |
|
virtual void endJob(); |
37 |
< |
virtual TH2D * make_histo(const edm::Event&, const edm::EventSetup&) = 0; |
38 |
< |
virtual jetfit::model_def& make_model_def(const edm::Event&, |
39 |
< |
const edm::EventSetup&, |
40 |
< |
TH2 *hist) = 0; |
41 |
< |
virtual void analyze_results(jetfit::results, std::vector<jetfit::trouble>, |
42 |
< |
TH2 *) = 0; |
43 |
< |
void set_user_minuit(void (*_user_minuit)(TMinuit *, TH2 *, int) ) { |
45 |
< |
user_minuit = _user_minuit; |
46 |
< |
} |
37 |
> |
virtual std::vector<TH2D *> make_histo(const edm::Event&, const edm::EventSetup&, std::vector<unsigned>&); |
38 |
> |
virtual HistoFitter::ModelDefinition& make_model_def(const edm::Event&, |
39 |
> |
const edm::EventSetup&, |
40 |
> |
TH2 *hist); |
41 |
> |
virtual void analyze_results(HistoFitter::FitResults, |
42 |
> |
std::vector<HistoFitter::Trouble>, |
43 |
> |
TH2 *, const edm::Event&) = 0; |
44 |
|
|
45 |
< |
private: |
45 |
> |
private: |
46 |
|
// ----------member data --------------------------- |
50 |
– |
bool ignorezero_; |
51 |
– |
int rebinX_; |
52 |
– |
int rebinY_; |
47 |
|
double P_cutoff_val_; |
48 |
< |
void (*user_minuit)(TMinuit *, TH2 *, int); |
49 |
< |
}; |
48 |
> |
int infoType_; |
49 |
> |
unsigned maxGaussians_; |
50 |
> |
double smear_; |
51 |
> |
std::string jet_algo_; |
52 |
> |
double gausSpread_; |
53 |
|
|
54 |
|
// |
55 |
|
// constants, enums and typedefs |
58 |
|
// |
59 |
|
// static data member definitions |
60 |
|
// |
61 |
< |
|
61 |
> |
}; |
62 |
|
#endif |