1 |
loizides |
1.1 |
//--------------------------------------------------------------------------------------------------
|
2 |
loizides |
1.5 |
// $Id: ElectronCleaningMod.h,v 1.4 2008/12/10 11:44:32 loizides Exp $
|
3 |
loizides |
1.1 |
//
|
4 |
|
|
// ElectronCleaningMod
|
5 |
|
|
//
|
6 |
loizides |
1.3 |
// This Module performs cleaning of electrons, ie. it removes duplicate objects and good muons
|
7 |
|
|
// from the good electrons.
|
8 |
loizides |
1.1 |
//
|
9 |
|
|
// Authors: S.Xie
|
10 |
|
|
//--------------------------------------------------------------------------------------------------
|
11 |
|
|
|
12 |
loizides |
1.2 |
#ifndef MITPHYSICS_MODS_ELECTRONCLEANINGMOD_H
|
13 |
|
|
#define MITPHYSICS_MODS_ELECTRONCLEANINGMOD_H
|
14 |
loizides |
1.1 |
|
15 |
|
|
#include "MitAna/TreeMod/interface/BaseMod.h"
|
16 |
|
|
#include "MitAna/DataTree/interface/Collections.h"
|
17 |
|
|
|
18 |
|
|
namespace mithep
|
19 |
|
|
{
|
20 |
|
|
class ElectronCleaningMod : public BaseMod
|
21 |
|
|
{
|
22 |
|
|
public:
|
23 |
|
|
ElectronCleaningMod(const char *name="ElectronCleaningMod",
|
24 |
loizides |
1.5 |
const char *title="Electron cleaning module");
|
25 |
loizides |
1.1 |
~ElectronCleaningMod() {}
|
26 |
|
|
|
27 |
loizides |
1.5 |
const char *GetCleanElectronsName() const { return fCleanElectronsName; }
|
28 |
|
|
const char *GetCleanName() const { return GetCleanElectronsName(); }
|
29 |
|
|
const char *GetCleanMuonsName() const { return fCleanMuonsName; }
|
30 |
|
|
const char *GetGoodElectronsName() const { return fGoodElectronsName; }
|
31 |
|
|
const char *GetOutputName() const { return GetCleanElectronsName(); }
|
32 |
|
|
void SetCleanElectronsName(const char *name) { fCleanElectronsName = name; }
|
33 |
|
|
void SetCleanName(const char *name) { SetCleanElectronsName(name); }
|
34 |
|
|
void SetCleanMuonsName(const char *name) { fCleanMuonsName = name; }
|
35 |
|
|
void SetGoodElectronsName(const char *name) { fGoodElectronsName = name; }
|
36 |
|
|
void SetOutputName(const char *name) { SetCleanElectronsName(name); }
|
37 |
loizides |
1.4 |
|
38 |
loizides |
1.1 |
protected:
|
39 |
loizides |
1.4 |
void Process();
|
40 |
|
|
|
41 |
loizides |
1.3 |
TString fGoodElectronsName; //name of good electrons (input)
|
42 |
|
|
TString fCleanMuonsName; //name of clean muons (input)
|
43 |
|
|
TString fCleanElectronsName; //name of clean electrons (output)
|
44 |
loizides |
1.1 |
|
45 |
loizides |
1.5 |
ClassDef(ElectronCleaningMod, 1) // Electron cleaning module
|
46 |
loizides |
1.1 |
};
|
47 |
|
|
}
|
48 |
|
|
#endif
|