28 |
|
#include "MitAna/DataTree/interface/JetCol.h" |
29 |
|
#include "MitAna/DataTree/interface/PFJetCol.h" |
30 |
|
#include "MitAna/DataTree/interface/GenJetCol.h" |
31 |
+ |
#include "MitAna/DataTree/interface/Particle.h" |
32 |
|
#include "MitPhysics/Utils/interface/PhotonFix.h" |
33 |
|
#include "MitPhysics/Utils/interface/PhotonTools.h" |
34 |
|
#include "MitPhysics/Utils/interface/MVAMet.h" |
463 |
|
Float_t btagJet2Eta; |
464 |
|
// ----------- LEPTON TAG STUFF ------------- |
465 |
|
Int_t leptonTag; // flavor-based, Moriond 2013 |
466 |
< |
Int_t leptonTag2; // MET-based, since legacy paper 2013 |
466 |
> |
Int_t VHLepTag; // MET-based, since legacy paper 2013 |
467 |
|
// ----------- VEERTEX SYNCHING STUFF ------- |
468 |
|
|
469 |
|
Int_t vtxInd1; |
683 |
|
class PhotonTreeWriter : public BaseMod |
684 |
|
{ |
685 |
|
public: |
686 |
+ |
enum CounterFlag {kCountNotDefined = -1}; |
687 |
|
PhotonTreeWriter(const char *name ="PhotonTreeWriter", |
688 |
|
const char *title="Selecting PhotonPairs"); |
689 |
|
|
715 |
|
void SetEnableGenJets(Bool_t b) { fEnableGenJets = b; } |
716 |
|
void SetApplyJetId(Bool_t b) { fApplyJetId = b; } |
717 |
|
void SetApplyLeptonTag(Bool_t b) { fApplyLeptonTag = b; } |
718 |
< |
void SetApplyLeptonTag2(Bool_t b) { fApplyLeptonTag2 = b; } |
718 |
> |
void SetApplyVHLepTag(Bool_t b) { fApplyVHLepTag = b; } |
719 |
|
void SetApplyVBFTag(Bool_t b) { fApplyVBFTag = b; } |
720 |
|
void SetApplyTTHTag(Bool_t b) { fApplyTTHTag = b; } |
721 |
|
void SetApplyBTag(Bool_t b) { fApplyBTag = b; } |
746 |
|
|
747 |
|
void SetLeptonTagElectronsName(TString name) { fLeptonTagElectronsName = name; } |
748 |
|
void SetLeptonTagMuonsName (TString name) { fLeptonTagMuonsName = name; } |
749 |
+ |
void SetLeptonTagSoftElectronsName(TString name) { fLeptonTagSoftElectronsName = name; } |
750 |
+ |
void SetLeptonTagSoftMuonsName (TString name) { fLeptonTagSoftMuonsName = name; } |
751 |
|
void SetFillClusterArrays(Bool_t b) { fFillClusterArrays = b; } |
752 |
|
|
753 |
|
void SetDo2012LepTag(Bool_t b) { fDo2012LepTag = b; } |
782 |
|
void ApplyLeptonTag(const Photon *phHard, |
783 |
|
const Photon *phSoft, |
784 |
|
const Vertex *selvtx); |
785 |
< |
void ApplyLeptonTag2(const Photon *phHard, |
786 |
< |
const Photon *phSoft, |
787 |
< |
const Vertex *selvtx); |
785 |
> |
const Muon * GetLeptonTagMuon(const Photon *phHard, |
786 |
> |
const Photon *phSoft); |
787 |
> |
void SetLeptonTagMuonVars(const Photon *phHard, |
788 |
> |
const Photon *phSoft, |
789 |
> |
const Muon *muon); |
790 |
> |
const Electron * GetLeptonTagElectron(const Photon *phHard, |
791 |
> |
const Photon *phSoft); |
792 |
> |
bool MassOfPairIsWithinWindowAroundMZ( |
793 |
> |
const Particle * particle1, |
794 |
> |
const Particle * particle2, |
795 |
> |
Float_t halfWindowSize, |
796 |
> |
Float_t MZ = 91.19 |
797 |
> |
); |
798 |
> |
void ApplyVHLepTag(const Photon *phHard, |
799 |
> |
const Photon *phSoft, |
800 |
> |
const Vertex *selvtx); |
801 |
> |
bool VHHasDielectron(const Photon *phHard, |
802 |
> |
const Photon *phSoft); |
803 |
> |
bool VHHasDimuon(const Photon *phHard, |
804 |
> |
const Photon *phSoft); |
805 |
> |
UInt_t VHNumberOfJets(const Photon *phHard, |
806 |
> |
const Photon *phSoft, |
807 |
> |
const Vertex *selvtx, |
808 |
> |
const Particle *lepton); |
809 |
|
void ApplyTTHTag(const Photon *phHard, const Photon *phSoft,const Vertex *selvtx); |
785 |
– |
// void PrintTTHDebugInfo(); |
786 |
– |
// void PrintTTHDecay(); |
787 |
– |
// void PrintGenElectrons(); |
788 |
– |
// void PrintElectrons(const char *, const ElectronCol*); |
810 |
|
|
811 |
|
// Names for the input Collections |
812 |
|
TString fPhotonBranchName; |
838 |
|
|
839 |
|
TString fLeptonTagElectronsName; |
840 |
|
TString fLeptonTagMuonsName; |
841 |
+ |
TString fLeptonTagSoftElectronsName; |
842 |
+ |
TString fLeptonTagSoftMuonsName; |
843 |
|
|
844 |
|
|
845 |
|
// is it Data or MC? |
875 |
|
|
876 |
|
const ElectronCol *fLeptonTagElectrons; |
877 |
|
const MuonCol *fLeptonTagMuons; |
878 |
+ |
const ElectronCol *fLeptonTagSoftElectrons; |
879 |
+ |
const MuonCol *fLeptonTagSoftMuons; |
880 |
|
const PFCandidateCol *fPFNoPileUpCands; //!pfnpu collection |
881 |
|
const PFCandidateCol *fPFPileUpCands; //!pfpu collection |
882 |
|
|
896 |
|
Bool_t fApplyJetId; |
897 |
|
|
898 |
|
Bool_t fApplyLeptonTag; |
899 |
< |
Bool_t fApplyLeptonTag2; |
899 |
> |
Bool_t fApplyVHLepTag; |
900 |
|
Bool_t fApplyVBFTag; |
901 |
|
Bool_t fApplyTTHTag; |
902 |
|
Bool_t fApplyBTag; |