00001 #ifndef ELECTRONPHOTONSELECTORTOOLS_EGAMMAPIDDEFS_H
00002 #define ELECTRONPHOTONSELECTORTOOLS_EGAMMAPIDDEFS_H
00003
00043 #include <climits>
00044
00045 namespace egammaPID {
00046
00047 enum egammaIDQuality {
00048 ElectronIDLoose,
00049 ElectronIDLoosePP,
00050 ElectronIDMedium,
00051 ElectronIDMediumPP,
00052 ElectronIDTight,
00053 ElectronIDTightPP,
00054 PhotonIDLoose,
00055 PhotonIDTight,
00056 PhotonIDLooseAR,
00057 PhotonIDTightAR,
00058 ElectronIDLooseIso,
00059 ElectronIDLoosePPIso,
00060 ElectronIDMediumIso,
00061 ElectronIDMediumPPIso,
00062 ElectronIDTightIso,
00063 ElectronIDTightPPIso,
00064 PhotonIDLooseIso,
00065 PhotonIDTightIso,
00066 PhotonIDLooseARIso,
00067 PhotonIDTightARIso,
00068 ForwardElectronIDLoose,
00069 ForwardElectronIDMedium,
00070 ForwardElectronIDTight,
00071 NoIDCut,
00072 PhotonIDMedium,
00073 PhotonIDMediumAR,
00074 ElectronIDLoose1,
00075 ElectronIDMedium1,
00076 ElectronIDTight1,
00077 ElectronIDLooseHLT,
00078 ElectronIDMediumHLT,
00079 ElectronIDTightHLT,
00080 PhotonIDLooseEF,
00081 PhotonIDMediumEF
00082 };
00083
00084
00085
00086 const unsigned int EgPidUndefined = UINT_MAX;
00087
00090 enum BitDefElectron {
00092 ClusterEtaRange_Electron = 0,
00094 ConversionMatch_Electron = 1,
00096 ClusterHadronicLeakage_Electron = 2,
00098 ClusterMiddleEnergy_Electron = 3,
00100 ClusterMiddleEratio37_Electron = 4,
00102 ClusterMiddleEratio33_Electron = 5,
00104 ClusterMiddleWidth_Electron = 6,
00106 ClusterBackEnergyFraction_Electron = 7,
00108 ClusterStripsEratio_Electron = 8,
00110 ClusterStripsDeltaEmax2_Electron = 9,
00112 ClusterStripsDeltaE_Electron = 10,
00114 ClusterStripsWtot_Electron = 11,
00116 ClusterStripsFracm_Electron = 12,
00118 ClusterStripsWeta1c_Electron = 13,
00120 ClusterStripsDEmaxs1_Electron = 15,
00122 TrackBlayer_Electron = 16,
00124 TrackPixel_Electron = 17,
00126 TrackSi_Electron = 18,
00128 TrackA0_Electron = 19,
00130 TrackMatchEta_Electron = 20,
00132 TrackMatchPhi_Electron = 21,
00134 TrackMatchEoverP_Electron = 22,
00136 TrackTRTeProbabilityHT_Electron = 23,
00138 TrackTRThits_Electron = 24,
00140 TrackTRTratio_Electron = 25,
00142 TrackTRTratio90_Electron = 26,
00144 TrackA0Tight_Electron = 27,
00147 TrackMatchEtaTight_Electron = 28,
00149 Isolation_Electron = 29,
00151 ClusterIsolation_Electron = 30,
00153 TrackIsolation_Electron = 31
00154 };
00155
00158 enum BitDefPhoton {
00160 ClusterEtaRange_Photon = 0,
00162 ClusterBackEnergyFraction_Photon = 7,
00164 ClusterHadronicLeakage_Photon = 10,
00166 ClusterMiddleEnergy_Photon = 11,
00168 ClusterMiddleEratio37_Photon = 12,
00170 ClusterMiddleEratio33_Photon = 13,
00172 ClusterMiddleWidth_Photon = 14,
00174 ClusterStripsEratio_Photon = 15,
00176 ClusterStripsDeltaEmax2_Photon = 16,
00178 ClusterStripsDeltaE_Photon = 17,
00180 ClusterStripsWtot_Photon = 18,
00182 ClusterStripsFracm_Photon = 19,
00184 ClusterStripsWeta1c_Photon = 20,
00186 ClusterStripsDEmaxs1_Photon = 21,
00188 TrackMatchEoverP_Photon = 22,
00190 AmbiguityResolution_Photon = 23,
00192 Isolation_Photon = 29,
00194 ClusterIsolation_Photon = 30,
00196 TrackIsolation_Photon = 31
00197 };
00198
00199
00200
00201
00202
00204 const unsigned int HADLEAKETA_ELECTRON =
00205 0x1 << ClusterEtaRange_Electron |
00206 0x1 << ClusterHadronicLeakage_Electron;
00208 const unsigned int CALOSTRIPS_ELECTRON =
00209 0x1 << ClusterStripsEratio_Electron |
00210 0x1 << ClusterStripsDeltaEmax2_Electron |
00211 0x1 << ClusterStripsDeltaE_Electron |
00212 0x1 << ClusterStripsWtot_Electron |
00213 0x1 << ClusterStripsFracm_Electron |
00214 0x1 << ClusterStripsWeta1c_Electron |
00215 0x1 << ClusterStripsDEmaxs1_Electron ;
00216 const unsigned int CALOSTRIPS_LOOSE_ELECTRON =
00217 0x1 << ClusterStripsWtot_Electron |
00218 0x1 << ClusterStripsDEmaxs1_Electron ;
00220 const unsigned int CALOMIDDLE_ELECTRON =
00221 0x1 << ClusterMiddleEnergy_Electron |
00222 0x1 << ClusterMiddleEratio37_Electron |
00223 0x1 << ClusterMiddleWidth_Electron ;
00224 const unsigned int CALOBACK_ELECTRON =
00225 0x1 << ClusterBackEnergyFraction_Electron |
00226 0x1 << ClusterMiddleEratio33_Electron;
00227
00229 const unsigned int CALORIMETRICISOLATION_ELECTRON =
00230 0x1 << ClusterIsolation_Electron ;
00231
00233 const unsigned int CALO_ELECTRON = HADLEAKETA_ELECTRON | CALOSTRIPS_ELECTRON | CALOMIDDLE_ELECTRON | CALOBACK_ELECTRON;
00234
00236 const unsigned int TRACKINGNOBLAYER_ELECTRON =
00237 0x1 << TrackPixel_Electron |
00238 0x1 << TrackSi_Electron |
00239 0x1 << TrackA0_Electron;
00241 const unsigned int TRACKINGLOOSE_ELECTRON =
00242 0x1 << TrackPixel_Electron |
00243 0x1 << TrackSi_Electron;
00245 const unsigned int TRACKING_ELECTRON =
00246 TRACKINGNOBLAYER_ELECTRON |
00247 0x1 << TrackBlayer_Electron;
00249 const unsigned int TRACKMATCHDETA_ELECTRON =
00250 0x1 << TrackMatchEta_Electron;
00252 const unsigned int TRACKMATCHNOEOVERP_ELECTRON =
00253 0x1 << TrackMatchEta_Electron |
00254 0x1 << TrackMatchPhi_Electron;
00256 const unsigned int TRACKMATCH_ELECTRON =
00257 0x1 << TrackMatchEta_Electron |
00258 0x1 << TrackMatchPhi_Electron |
00259 0x1 << TrackMatchEoverP_Electron ;
00261 const unsigned int TRACKMATCHTIGHT_ELECTRON =
00262 0x1 << TrackMatchEtaTight_Electron |
00263 0x1 << TrackA0Tight_Electron;
00265 const unsigned int TRACKMATCHDETATIGHT_ELECTRON =
00266 0x1 << TrackMatchEtaTight_Electron;
00268 const unsigned int CONVMATCH_ELECTRON =
00269 0x1 << ConversionMatch_Electron;
00270
00272 const unsigned int TRT_ELECTRON =
00273 0x1 << TrackTRThits_Electron |
00274 0x1 << TrackTRTratio_Electron |
00275 0x1 << TrackTRTeProbabilityHT_Electron ;
00276
00278 const unsigned int TRT_RATIO_ELECTRON =
00279 0x1 << TrackTRTratio_Electron;
00280
00282 const unsigned int TRT_EPROB_ELECTRON =
00283 0x1 << TrackTRTeProbabilityHT_Electron ;
00284
00286 const unsigned int TRACKINGISOLATION_ELECTRON =
00287 0x1 << TrackIsolation_Electron;
00289 const unsigned int ISOLATION_ELECTRON =
00290 0x1 << Isolation_Electron ;
00292 const unsigned int CALOTRACKISOLATION_ELECTRON =
00293 CALORIMETRICISOLATION_ELECTRON | TRACKINGISOLATION_ELECTRON;
00294
00296 const unsigned int ALLNOTRT_ELECTRON =
00297 TRACKING_ELECTRON | TRACKMATCH_ELECTRON | CALO_ELECTRON;
00299 const unsigned int ALL_ELECTRON =
00300 ALLNOTRT_ELECTRON | TRT_ELECTRON;
00301
00303
00304
00306 const unsigned int ElectronLoosePP =
00307 CALOMIDDLE_ELECTRON | HADLEAKETA_ELECTRON | CALOSTRIPS_LOOSE_ELECTRON |
00308 TRACKMATCHDETA_ELECTRON | TRACKINGLOOSE_ELECTRON;
00309
00311 const unsigned int ElectronLoosePPIso =
00312 ElectronLoosePP |
00313 ISOLATION_ELECTRON;
00314
00316 const unsigned int ElectronMediumPP =
00317 CALO_ELECTRON |
00318 TRACKING_ELECTRON |
00319 TRACKMATCHDETA_ELECTRON |
00320 TRACKMATCHDETATIGHT_ELECTRON |
00321 TRT_RATIO_ELECTRON |
00322 TRT_EPROB_ELECTRON ;
00323
00325 const unsigned int ElectronMediumPPIso =
00326 ElectronMediumPP |
00327 ISOLATION_ELECTRON;
00328
00330 const unsigned int ElectronTightPP =
00331 CALO_ELECTRON |
00332 TRACKING_ELECTRON |
00333 TRACKMATCH_ELECTRON |
00334 TRACKMATCHTIGHT_ELECTRON |
00335 CONVMATCH_ELECTRON |
00336 TRT_ELECTRON;
00337
00339 const unsigned int ElectronTightPPIso =
00340 ElectronTightPP |
00341 ISOLATION_ELECTRON;
00343
00345 const unsigned int ElectronLoose =
00346 CALOMIDDLE_ELECTRON | HADLEAKETA_ELECTRON;
00348 const unsigned int ElectronLooseIso =
00349 ElectronLoose |
00350 ISOLATION_ELECTRON;
00352 const unsigned int ElectronMedium_WithoutTrackMatch =
00353 CALO_ELECTRON | TRACKINGNOBLAYER_ELECTRON;
00355 const unsigned int ElectronMediumIso_WithoutTrackMatch =
00356 ElectronMedium_WithoutTrackMatch |
00357 ISOLATION_ELECTRON;
00359 const unsigned int ElectronMedium_WithTrackMatch =
00360 CALO_ELECTRON | TRACKINGNOBLAYER_ELECTRON | TRACKMATCHDETA_ELECTRON;
00362 const unsigned int ElectronMediumIso_WithTrackMatch =
00363 ElectronMedium_WithTrackMatch |
00364 ISOLATION_ELECTRON;
00366 const unsigned int ElectronMedium = ElectronMedium_WithTrackMatch;
00368 const unsigned int ElectronMediumIso = ElectronMediumIso_WithTrackMatch;
00371 const unsigned int ElectronTight_WithoutTrackMatch =
00372 CALO_ELECTRON |
00373 TRACKING_ELECTRON |
00374 0x1 << TrackMatchEoverP_Electron |
00375 0x1 << TrackA0Tight_Electron |
00376 CONVMATCH_ELECTRON |
00377 TRT_ELECTRON ;
00378
00380 const unsigned int ElectronTight_WithoutTrackMatch_NoConvCut =
00381 CALO_ELECTRON |
00382 TRACKING_ELECTRON |
00383 0x1 << TrackMatchEoverP_Electron |
00384 0x1 << TrackA0Tight_Electron |
00385 TRT_ELECTRON ;
00386
00388 const unsigned int ElectronTightIso_WithoutTrackMatch =
00389 ElectronTight_WithoutTrackMatch |
00390 ISOLATION_ELECTRON;
00391
00393 const unsigned int ElectronTight_WithTrackMatch =
00394 CALO_ELECTRON | TRACKING_ELECTRON | TRACKMATCH_ELECTRON |
00395 TRACKMATCHTIGHT_ELECTRON | CONVMATCH_ELECTRON | TRT_ELECTRON ;
00396
00398 const unsigned int ElectronTight_WithTrackMatch_NoConvCut =
00399 CALO_ELECTRON | TRACKING_ELECTRON | TRACKMATCH_ELECTRON |
00400 TRACKMATCHTIGHT_ELECTRON | TRT_ELECTRON ;
00401
00403 const unsigned int ElectronTightIso_WithTrackMatch =
00404 ElectronTight_WithTrackMatch |
00405 ISOLATION_ELECTRON;
00406
00408 const unsigned int ElectronTight = ElectronTight_WithTrackMatch;
00410 const unsigned int ElectronTight_NoConvCut = ElectronTight_WithTrackMatch_NoConvCut;
00412 const unsigned int ElectronTightIso = ElectronTightIso_WithTrackMatch;
00413
00416 const unsigned int ElectronTight_WithLooseEtaTrackMatch =
00417 CALO_ELECTRON |
00418 TRACKING_ELECTRON |
00419 TRACKMATCHDETA_ELECTRON |
00420 0x1 << TrackMatchEoverP_Electron |
00421 0x1 << TrackA0Tight_Electron |
00422 CONVMATCH_ELECTRON |
00423 TRT_ELECTRON ;
00424
00427 const unsigned int ElectronTight_WithTightEtaTrackMatch =
00428 CALO_ELECTRON |
00429 TRACKING_ELECTRON |
00430 TRACKMATCHDETA_ELECTRON |
00431 TRACKMATCHTIGHT_ELECTRON |
00432 0x1 << TrackMatchEoverP_Electron |
00433 CONVMATCH_ELECTRON |
00434 TRT_ELECTRON ;
00435
00437 const unsigned int ElectronTightIso_WithLooseEtaTrackMatch =
00438 ElectronTight_WithLooseEtaTrackMatch |
00439 ISOLATION_ELECTRON;
00440
00442 const unsigned int ElectronTightIso_WithTightEtaTrackMatch =
00443 ElectronTight_WithTightEtaTrackMatch |
00444 ISOLATION_ELECTRON;
00445
00446
00449 const unsigned int CALOMIDDLE_ELECTRON_HLT =
00450 CALOMIDDLE_ELECTRON |
00451 0X1 << ClusterMiddleEratio33_Electron;
00452
00453
00455 const unsigned int CALO_ELECTRON_HLT =
00456 HADLEAKETA_ELECTRON |
00457 CALOSTRIPS_ELECTRON |
00458 CALOMIDDLE_ELECTRON |
00459 CALOBACK_ELECTRON;
00460
00462 const unsigned int TRACKMATCHTIGHT_ELECTRON_EF = 0x1 << TrackA0Tight_Electron;
00464 const unsigned int TRACKMATCH_ELECTRON_EF = 0x1 << TrackMatchEta_Electron |
00465 0x1 << TrackMatchEoverP_Electron;
00467 const unsigned int TRACKMATCH_ELECTRON_NoEoP_EF = 0x1 << TrackMatchEta_Electron;
00468
00472
00473 const unsigned int ElectronLoose1 =
00474 CALOMIDDLE_ELECTRON | HADLEAKETA_ELECTRON | CALOSTRIPS_LOOSE_ELECTRON |
00475 TRACKMATCHDETA_ELECTRON | TRACKINGLOOSE_ELECTRON;
00476
00478
00479 const unsigned int ElectronMedium1 =
00480 CALO_ELECTRON |
00481 TRACKING_ELECTRON |
00482 TRACKMATCHDETA_ELECTRON |
00483 TRT_RATIO_ELECTRON |
00484 TRT_EPROB_ELECTRON;
00485
00487 const unsigned int ElectronTight1 =
00488 HADLEAKETA_ELECTRON |
00489 CALOSTRIPS_ELECTRON |
00490 CALOMIDDLE_ELECTRON |
00491 TRACKING_ELECTRON |
00492 TRACKMATCHDETA_ELECTRON |
00493 TRACKMATCH_ELECTRON_EF |
00494 TRACKMATCHTIGHT_ELECTRON |
00495 TRT_ELECTRON;
00496
00498
00499 const unsigned int ElectronLooseHLT =
00500 CALOMIDDLE_ELECTRON | HADLEAKETA_ELECTRON | CALOSTRIPS_LOOSE_ELECTRON |
00501 TRACKMATCHDETA_ELECTRON | TRACKINGLOOSE_ELECTRON;
00503
00504 const unsigned int ElectronMediumHLT =
00505 CALO_ELECTRON_HLT |
00506 TRACKING_ELECTRON |
00507 TRACKMATCHDETA_ELECTRON |
00508 TRACKMATCHDETATIGHT_ELECTRON |
00509 TRT_RATIO_ELECTRON |
00510 TRT_EPROB_ELECTRON;
00511
00513
00514 const unsigned int ElectronTightHLT =
00515 CALO_ELECTRON_HLT |
00516 TRACKING_ELECTRON |
00517 TRACKMATCHDETA_ELECTRON |
00518 TRACKMATCHTIGHT_ELECTRON |
00519 TRT_ELECTRON;
00520
00521
00522
00524 const unsigned int HADLEAKETA_PHOTON =
00525 0x1 << ClusterEtaRange_Photon |
00526 0x1 << ClusterHadronicLeakage_Photon;
00528 const unsigned int CALOMIDDLE_PHOTON =
00529 0x1 << ClusterMiddleEnergy_Photon |
00530 0x1 << ClusterMiddleEratio37_Photon |
00531 0x1 << ClusterMiddleEratio33_Photon |
00532 0x1 << ClusterMiddleWidth_Photon ;
00534 const unsigned int CALOSTRIPS_PHOTONTIGHT =
00535 0x1 << ClusterStripsEratio_Photon |
00536 0x1 << ClusterStripsDeltaEmax2_Photon |
00537 0x1 << ClusterStripsDeltaE_Photon |
00538 0x1 << ClusterStripsWtot_Photon |
00539 0x1 << ClusterStripsFracm_Photon |
00540 0x1 << ClusterStripsWeta1c_Photon |
00541 0x1 << ClusterStripsDEmaxs1_Photon ;
00542
00544 const unsigned int CALOSTRIPS_PHOTONMEDIUM =
00545 0x1 << ClusterStripsDEmaxs1_Photon ;
00546
00548 const unsigned int CALORIMETRICISOLATION_PHOTON =
00549 0x1 << ClusterIsolation_Photon;
00550
00552 const unsigned int TRACKINGISOLATION_PHOTON =
00553 0x1 << TrackIsolation_Photon;
00555 const unsigned int ISOLATION_PHOTON =
00556 0x1 << Isolation_Photon ;
00558 const unsigned int CALOTRACKISOLATION_PHOTON =
00559 CALORIMETRICISOLATION_PHOTON | TRACKINGISOLATION_PHOTON;
00561 const unsigned int TRACKMATCH_PHOTON =
00562 0x1 << TrackMatchEoverP_Photon ;
00564 const unsigned int AMBIGUITYRESOLVE_PHOTON =
00565 0x1 << AmbiguityResolution_Photon;
00567
00569 const unsigned int HADLEAKETA_PHOTON_EF =
00570 0x1 << ClusterEtaRange_Photon |
00571 0x1 << ClusterHadronicLeakage_Photon;
00572
00574 const unsigned int CALO_PHOTON_RETA_WETA2_ERATIO =
00575 0x1 << ClusterEtaRange_Photon |
00576 0x1 << ClusterMiddleEnergy_Photon |
00577 0x1 << ClusterMiddleEratio37_Photon |
00578 0x1 << ClusterMiddleWidth_Photon |
00579 0x1 << ClusterStripsEratio_Photon;
00580
00582 const unsigned int PhotonLoose = HADLEAKETA_PHOTON | CALOMIDDLE_PHOTON;
00584 const unsigned int PhotonLooseIso = PhotonLoose | ISOLATION_PHOTON;
00586 const unsigned int PhotonLooseAR = PhotonLoose | AMBIGUITYRESOLVE_PHOTON;
00588 const unsigned int PhotonLooseARIso = PhotonLooseAR | ISOLATION_PHOTON;
00590 const unsigned int PhotonMedium = HADLEAKETA_PHOTON | CALOMIDDLE_PHOTON | CALOSTRIPS_PHOTONMEDIUM;
00592 const unsigned int PhotonMediumIso = PhotonMedium | ISOLATION_PHOTON;
00594 const unsigned int PhotonMediumAR = PhotonMedium | AMBIGUITYRESOLVE_PHOTON;
00596 const unsigned int PhotonMediumARIso = PhotonMediumAR | ISOLATION_PHOTON;
00598 const unsigned int PhotonTight = HADLEAKETA_PHOTON | CALOMIDDLE_PHOTON | CALOSTRIPS_PHOTONTIGHT;
00600 const unsigned int PhotonTightIso = PhotonTight | ISOLATION_PHOTON;
00602 const unsigned int PhotonTightAR = PhotonTight | AMBIGUITYRESOLVE_PHOTON;
00604 const unsigned int PhotonTightARIso = PhotonTightAR | ISOLATION_PHOTON;
00607 const unsigned int PhotonLooseEF = CALOMIDDLE_PHOTON | HADLEAKETA_PHOTON_EF;
00608
00610 const unsigned int PhotonMediumEF = HADLEAKETA_PHOTON_EF | CALO_PHOTON_RETA_WETA2_ERATIO;
00611
00612 enum BitDefForwardElectron {
00614 BinEta_ForwardElectron = 0,
00616 SECONDLAMBDA_ForwardElectron = 1,
00618 LATERAL_ForwardElectron = 2,
00620 LONGITUDINAL_ForwardElectron = 3,
00622 CELLMAXFRAC_ForwardElectron = 4,
00624 SECONDR_ForwardElectron = 5,
00626 CENTERLAMBDA_ForwardElectron = 6,
00627
00628 };
00629
00630
00631
00632
00634 const unsigned int ID_ForwardElectron =
00635 0x1 << BinEta_ForwardElectron |
00636 0x1 << SECONDLAMBDA_ForwardElectron |
00637 0x1 << LATERAL_ForwardElectron |
00638 0x1 << LONGITUDINAL_ForwardElectron |
00639 0x1 << CELLMAXFRAC_ForwardElectron |
00640 0x1 << SECONDR_ForwardElectron |
00641 0x1 << CENTERLAMBDA_ForwardElectron ;
00642
00643 const unsigned int ForwardElectronTight = 126;
00644 const unsigned int ForwardElectronLoose = 104;
00645
00646 struct ROOT6_NamespaceAutoloadHook{};
00647 }
00648
00649
00650 #endif // EGAMMAREC_EGAMMAPIDDEFS_H
00651