1 #ifndef ELECTRONSELECTIONS_H
2 #define ELECTRONSELECTIONS_H
22 namespace HWWFunctions {
131 int nMax = (int) 8*
sizeof(1ll) - 1;
133 edm::LogError(
"InvalidInput") <<
"enum \"EleSelectionType\" has " <<
n <<
" elements but cannot have more than " << nMax <<
" elements...";
190 electronSelection_wwV0_base |
191 electronSelection_wwV0_ip |
192 electronSelection_wwV0_id |
206 electronSelectionFO_wwV0_baseline |
214 electronSelectionFO_wwV0_baseline |
222 electronSelectionFO_wwV0_baseline |
223 electronSelection_wwV0_id |
231 electronSelectionFO_wwV0_baseline |
268 electronSelection_wwV0b_base |
269 electronSelection_wwV0b_ip |
270 electronSelection_wwV0b_id |
284 electronSelectionFO_wwV0b_baseline |
292 electronSelectionFO_wwV0b_baseline |
300 electronSelectionFO_wwV0b_baseline |
301 electronSelection_wwV0b_id |
309 electronSelectionFO_wwV0b_baseline |
350 electronSelection_wwV1_base |
351 electronSelection_wwV1_convrej |
352 electronSelection_wwV1_ip |
353 electronSelection_wwV1_id |
360 electronSelection_wwV1_base |
369 electronSelectionFO_wwV1_baseline |
377 electronSelectionFO_wwV1_baseline |
385 electronSelectionFO_wwV1_baseline |
386 electronSelection_wwV1_id |
394 electronSelectionFO_wwV1_baseline |
403 electronSelection_wwV1_base |
404 electronSelection_wwV1_convrej |
409 electronSelection_wwV1_id |
412 electronSelection_smurfV2_baseline |
413 electronSelection_smurfV2_iso |
421 electronSelection_wwV1_base |
433 electronSelection_smurfV3_baseline |
434 electronSelection_smurfV3_convrej |
435 electronSelection_smurfV3_iso |
443 electronSelection_wwV1_base |
454 electronSelection_smurfV4_baseline |
455 electronSelection_smurfV4_convrej |
456 electronSelection_smurfV4_iso |
464 electronSelection_wwV1_base |
475 electronSelection_smurfV5_baseline |
476 electronSelection_smurfV5_convrej |
477 electronSelection_smurfV5_iso |
493 electronSelectionFO_el_smurf_base |
502 electronSelectionFO_el_smurf_base |
509 electronSelectionFO_el_smurf_base |
519 electronSelectionFO_el_smurf_base |
583 bool pass_electronSelection(
HWW&,
const unsigned int index,
const cuts_t selectionType,
bool applyAlignmentCorrection =
false,
bool removedEtaCutInEndcap =
false,
bool useGsfTrack =
true);
584 cuts_t electronSelection(
HWW&,
const unsigned int index,
bool applyAlignmentCorrection =
false,
bool removedEtaCutInEndcap =
false,
bool useGsfTrack =
true);
607 float electronIsoValuePF(
HWW&,
const unsigned int iel,
unsigned int ivtx,
float coner=0.4,
float minptn=1.0,
float dzcut=0.1,
608 float footprintdr=0.07,
float gammastripveto=0.025,
float elestripveto=-999.,
int filterId = 0);
636 void electronIsoValuePF2012(
HWW&,
float &pfiso_ch,
float &pfiso_em,
float &pfiso_nh,
const float R,
const unsigned int iel,
const int ivtx,
bool barrelVetoes =
false);
637 void electronIsoValuePF2012reco(
HWW&,
float &pfiso_ch,
float &pfiso_em,
float &pfiso_nh,
const float R,
const unsigned int iel,
const int ivtx,
float neutral_threshold = 0.5);
641 float electronRadialIsolation(
HWW&,
int index,
float &chiso,
float &nhiso,
float &emiso,
float neutral_et_threshold = 1.0,
float cone_size = 0.3,
bool barrelVetoes =
false,
bool verbose =
false);
bool electronId_smurf_v2(HWW &, const unsigned int index)
static const cuts_t electronSelection_smurfV6
float electronIsoValuePF2012_FastJetEffArea_v2(HWW &, int index, float conesize=0.3, int ivtx=0, bool useOldIsolation=false)
static const cuts_t electronSelection_smurfV3
static const cuts_t electronSelection_wwV0b_id
static const cuts_t electronSelectionFO_el_wwV1_v1
float electronIsolation_rel(HWW &, const unsigned int index, bool use_calo_iso)
uint64 electronIdComponent_t
static const cuts_t electronSelection_smurfV5_iso
static const cuts_t electronSelection_smurfV2_baseline
bool isSpikeElectron(HWW &, const unsigned int index)
static const cuts_t electronSelectionFO_el_wwV0b_v2
double electron_dzPV_wwV1(HWW &, unsigned int index)
float fastJetEffArea04_v1(HWW &, const float eta)
float electronIsoValuePF2012_FastJetEffArea(HWW &, int index, float conesize=0.3, int ivtx=0)
bool passLikelihoodId_v2(HWW &, unsigned int index, float lhValue, int workingPoint)
bool pass_electronSelectionCompareMask(HWW &, const cuts_t cuts_passed, const cuts_t selectionType)
electronIdComponent_t electronId_WP2012_v2(HWW &, const unsigned int index, const wp2012_tightness tightness, bool useOldIsolation=false)
static const cuts_t electronSelectionFO_wwV0b_baseline
static const cuts_t electronSelection_wwV0_iso
static const cuts_t electronSelection_smurfV5_ip
static const cuts_t electronSelection_smurfV4_convrej
static const cuts_t electronSelectionFO_el_wwV1_v2
ElectronIDComponentWP2012
static const cuts_t electronSelection_wwV1_convrej
static const cuts_t electronSelection_wwV0b_iso
static const cuts_t electronSelectionFO_el_smurf_base
float electronIsoValuePF(HWW &, const unsigned int iel, unsigned int ivtx, float coner=0.4, float minptn=1.0, float dzcut=0.1, float footprintdr=0.07, float gammastripveto=0.025, float elestripveto=-999., int filterId=0)
static const cuts_t electronSelection_ww_iso
float electronIsoValuePF2012_FastJetEffArea_HWW(HWW &, int index)
electronIdComponent_t electronId_VBTF(HWW &, const unsigned int index, const vbtf_tightness tightness, bool applyAlignementCorrection=false, bool removedEtaCutInEndcap=false)
static const cuts_t electronSelection_smurfV4_id
double electron_dzPV_smurfV3(HWW &, unsigned int index)
cuts_t electronSelection(HWW &, const unsigned int index, bool applyAlignmentCorrection=false, bool removedEtaCutInEndcap=false, bool useGsfTrack=true)
float electronRadialIsolation(HWW &, int index, float &chiso, float &nhiso, float &emiso, float neutral_et_threshold=1.0, float cone_size=0.3, bool barrelVetoes=false, bool verbose=false)
static const electronIdComponent_t PassWP2012CutsNoIso
static const electronIdComponent_t PassWP2012CutsIso
static const cuts_t electronSelection_wwV1_ip
static const cuts_t electronSelection_smurfV2_id
void checkElectronSelections(void)
static const cuts_t electronSelection_smurfV5_convrej
static const cuts_t electronSelection_wwV0_id
void electronIsoValuePF2012reco(HWW &, float &pfiso_ch, float &pfiso_em, float &pfiso_nh, const float R, const unsigned int iel, const int ivtx, float neutral_threshold=0.5)
static const cuts_t electronSelectionFO_el_wwV0_v2
static const cuts_t electronSelection_smurfV4_iso
static const cuts_t electronSelectionFO_el_smurf_v1
static const cuts_t electronSelection_wwV1_id
double electron_d0PV_smurfV3(HWW &, unsigned int index)
static const cuts_t electronSelection_smurfV3_id
static const cuts_t electronSelection_wwV1
static const cuts_t electronSelection_smurfV5_baseline
static const cuts_t electronSelection_smurfV3_convrej
static const cuts_t electronSelectionFO_wwV0_baseline
double electron_d0PV_wwV1(HWW &, unsigned int index)
static const cuts_t electronSelection_smurfV3_iso
bool electronId_smurf_v1(HWW &, const unsigned int index)
bool isFromConversionHitPattern(HWW &, const unsigned int index)
static const cuts_t electronSelectionFO_el_smurf_v3
static const cuts_t electronSelection_ww_ip
electronIdComponent_t electronId_CIC(HWW &, const unsigned int index, const unsigned int version, const cic_tightness tightness, bool applyAlignementCorrection=false, bool removedEtaCutInEndcap=false)
bool pass_electronSelection(HWW &, const unsigned int index, const cuts_t selectionType, bool applyAlignmentCorrection=false, bool removedEtaCutInEndcap=false, bool useGsfTrack=true)
static const cuts_t electronSelectionFO_el_wwV1_v3
static const cuts_t electronSelection_smurfV4_baseline
static const electronIdComponent_t PassWP2012CutsNoIsoNoIP
static const cuts_t electronSelection_smurfV2_iso
static const cuts_t electronSelectionFO_el_smurf_v4
electronIdComponent_t electronId_WP2012_noIso_useElEtaForIsEB(HWW &, const unsigned int index, const wp2012_tightness tightness)
float electronIsoValuePF2012_FastJetEffArea_v3(HWW &, int index, float conesize=0.3, int ivtx=0, bool useOldIsolation=false)
static const electronIdComponent_t PassAllWP2012Cuts
static const cuts_t electronSelectionFO_el_wwV0b_v4
bool isFromConversionMIT(HWW &, const unsigned int index)
static const cuts_t electronSelectionFO_el_wwV0b_v3
static const cuts_t electronSelectionFO_el_wwV0_v3
static const cuts_t electronSelection_smurfV4
static const cuts_t electronSelectionFO_el_wwV1_v4
static const cuts_t electronSelection_wwV0_ip
static const cuts_t electronSelection_smurfV3_ip
static const cuts_t electronSelection_smurfV4_ip
static const cuts_t electronSelection_wwV0
static const cuts_t electronSelectionFO_wwV1_baseline
double dzPV(const LorentzVector &vtx, const LorentzVector &p4, const LorentzVector &pv)
static const cuts_t electronSelection_smurfV2
static const cuts_t electronSelection_wwV0_base
static const cuts_t electronSelection_wwV0b_ip
static const cuts_t electronSelectionFO_el_wwV0b_v1
static const cuts_t electronSelection_smurfV5
bool electronId_smurf_v3(HWW &, const unsigned int index)
static const cuts_t electronSelection_smurfV3_baseline
ROOT::Math::LorentzVector< ROOT::Math::PxPyPzE4D< float > > LorentzVector
electronIdComponent_t electronId_WP2012(HWW &, const unsigned int index, const wp2012_tightness tightness)
static const cuts_t electronSelection_wwV0b_base
bool isChargeFlip3agree(HWW &, int elIndex)
void electronCorrection_pos(HWW &, const unsigned int index, float &dEtaIn, float &dPhiIn)
static const cuts_t electronSelection_wwV0b
static const cuts_t electronSelection_wwV1_base
static const cuts_t electronSelection_smurfV5_id
static const cuts_t electronSelectionFO_el_smurf_v2
bool isFromConversionPartnerTrack(HWW &, const unsigned int index)
static const cuts_t electronSelectionFO_el_wwV0_v4
static const cuts_t electronSelectionFO_el_wwV0_v1
electronIdComponent_t electronId_WP2012_v3(HWW &, const unsigned int index, const wp2012_tightness tightness, bool useOldIsolation=false)
void electronIsoValuePF2012(HWW &, float &pfiso_ch, float &pfiso_em, float &pfiso_nh, const float R, const unsigned int iel, const int ivtx, bool barrelVetoes=false)
static const cuts_t electronSelection_wwV1_iso