1 |
//--------------------------------------------------------------------------------------------------
|
2 |
// $Id: EffMod.h,v 1.2 2009/02/03 20:02:43 loizides Exp $
|
3 |
//
|
4 |
// EffMod
|
5 |
//
|
6 |
// This module calculates reconstruction efficiency (and fake rate) between reconstructed
|
7 |
// objects and the MC truth by simple matching in DeltaR.
|
8 |
//
|
9 |
// Authors: C.Loizides
|
10 |
//--------------------------------------------------------------------------------------------------
|
11 |
|
12 |
#ifndef MITMODS_MODS_EFFMOD_H
|
13 |
#define MITMODS_MODS_EFFMOD_H
|
14 |
|
15 |
#include "MitAna/TreeMod/interface/BaseMod.h"
|
16 |
#include "MitAna/DataTree/interface/Collections.h"
|
17 |
|
18 |
class TH1D;
|
19 |
|
20 |
namespace mithep
|
21 |
{
|
22 |
class EffMod : public BaseMod
|
23 |
{
|
24 |
public:
|
25 |
EffMod(const char *name="EffMod",
|
26 |
const char *title="Efficiency analysis module");
|
27 |
~EffMod() {}
|
28 |
|
29 |
void SetCol1Name(const char *n) { fCol1Name = n; }
|
30 |
void SetCol2Name(const char *n) { fCol2Name = n; }
|
31 |
void SetMinPt(Double_t pt) { fMinPt = pt; }
|
32 |
void SetMaxEta(Double_t e) { fMaxEta = e; }
|
33 |
void SetRadius(Double_t r) { fRadius = r; }
|
34 |
void SetType(MCParticle::EPartType t) { fPartType = t; }
|
35 |
|
36 |
protected:
|
37 |
void Process();
|
38 |
void SlaveBegin();
|
39 |
void Terminate();
|
40 |
|
41 |
TString fCol1Name; //first collection name (input)
|
42 |
TString fCol2Name; //second collection name (input)
|
43 |
Double_t fMinPt; //minimum pt for col1
|
44 |
Double_t fMaxEta; //maximum absolute eta for col1
|
45 |
Double_t fRadius; //radius used for matching
|
46 |
MCParticle::EPartType fPartType; //particle type (default = kNone)
|
47 |
TH1D *fCol1Pt; //!pt efficiency denominator
|
48 |
TH1D *fCol1Eta; //!eta efficiency denominator
|
49 |
TH1D *fCol2Pt; //!pt efficiency numerator
|
50 |
TH1D *fCol2Eta; //!eta efficiency numerator
|
51 |
TH1D *fGoodPt; //!pt fake denominator
|
52 |
TH1D *fGoodEta; //!eta fake denominator
|
53 |
TH1D *fFakePt; //!pt fake numerator
|
54 |
TH1D *fFakeEta; //!eta fake numerator
|
55 |
|
56 |
ClassDef(EffMod, 1) // Efficiency analysis module
|
57 |
};
|
58 |
}
|
59 |
#endif
|