CMS 3D CMS Logo

Public Member Functions | Private Attributes

PhotonSelectorAlgo Class Reference

#include <PhotonSelectorAlgo.h>

List of all members.

Public Member Functions

bool passPhotonSelection (const reco::Photon &) const
 PhotonSelectorAlgo (float choice, float c_Et_, float c_iso_track_a, float c_iso_track_b, float c_iso_ecal_a, float c_iso_ecal_b, float c_iso_hcal_a, float c_hcal_b, float c_hoe_, float comb_iso, float loose_hoe)
 ~PhotonSelectorAlgo ()

Private Attributes

float c_Et_
float c_hoe_
float c_iso_ecal_a_
float c_iso_ecal_b_
float c_iso_hcal_a_
float c_iso_hcal_b_
float c_iso_track_a_
float c_iso_track_b_
int choice_
float comb_iso_
float loose_hoe_

Detailed Description

Definition at line 9 of file PhotonSelectorAlgo.h.


Constructor & Destructor Documentation

PhotonSelectorAlgo::PhotonSelectorAlgo ( float  choice,
float  c_Et_,
float  c_iso_track_a,
float  c_iso_track_b,
float  c_iso_ecal_a,
float  c_iso_ecal_b,
float  c_iso_hcal_a,
float  c_hcal_b,
float  c_hoe_,
float  comb_iso,
float  loose_hoe 
)

Definition at line 6 of file PhotonSelectorAlgo.cc.

                                        :
  choice_(choice),
  c_Et_(c_Et),
  c_iso_track_a_(c_iso_track_a),  c_iso_track_b_(c_iso_track_b),
  c_iso_ecal_a_(c_iso_ecal_a),  c_iso_ecal_b_(c_iso_ecal_b),
  c_iso_hcal_a_(c_iso_hcal_a), c_iso_hcal_b_(c_iso_hcal_b),
  c_hoe_(c_hoe),
  comb_iso_(comb_iso),
  loose_hoe_(loose_hoe)
{
  ;
}
PhotonSelectorAlgo::~PhotonSelectorAlgo ( ) [inline]

Definition at line 24 of file PhotonSelectorAlgo.h.

{};

Member Function Documentation

bool PhotonSelectorAlgo::passPhotonSelection ( const reco::Photon photon) const

Definition at line 28 of file PhotonSelectorAlgo.cc.

References c_Et_, c_hoe_, c_iso_ecal_a_, c_iso_ecal_b_, c_iso_hcal_a_, c_iso_hcal_b_, c_iso_track_a_, c_iso_track_b_, choice_, comb_iso_, reco::Photon::ecalRecHitSumEtConeDR03(), reco::Photon::ecalRecHitSumEtConeDR04(), reco::Photon::hadronicOverEm(), reco::Photon::hcalTowerSumEtConeDR03(), reco::Photon::hcalTowerSumEtConeDR04(), loose_hoe_, reco::LeafCandidate::pt(), reco::Photon::trkSumPtHollowConeDR03(), and reco::Photon::trkSumPtHollowConeDR04().

Referenced by PFBlockAlgo::setInput().

                                                                            {

  // Photon ET
  float photonPt=photon.pt();
  if( photonPt < c_Et_ ) return false;
  if(choice_<0.1) //EGM Loose
    {
      //std::cout<<"Cuts:"<<c_Et_<<" H/E "<<c_hoe_<<"ECal Iso "<<c_iso_ecal_a_<<"HCal Iso "<<c_iso_hcal_a_<<"Track Iso "<<c_iso_track_a_<<std::endl;
      // HoE
      if (photon.hadronicOverEm() > c_hoe_ ) return false;
      
      // Track iso
      if( photon.trkSumPtHollowConeDR04() > c_iso_track_a_ + c_iso_track_b_*photonPt) return false;
      
      // ECAL iso
      if (photon.ecalRecHitSumEtConeDR04() > c_iso_ecal_a_ + c_iso_ecal_b_*photonPt) return false;
      
      // HCAL iso
      if (photon.hcalTowerSumEtConeDR04() > c_iso_hcal_a_ + c_iso_hcal_b_*photonPt) return false ;
    }
  if(choice_>0.99)
    {
      
      //std::cout<<"Cuts "<<comb_iso_<<" H/E "<<loose_hoe_<<std::endl;
      if (photon.hadronicOverEm() >loose_hoe_ ) return false;
      //Isolation variables in 0.3 cone combined
        if(photon.trkSumPtHollowConeDR03()+photon.ecalRecHitSumEtConeDR03()+photon.hcalTowerSumEtConeDR03()>comb_iso_)return false;             
    }

  return true;
}

Member Data Documentation

float PhotonSelectorAlgo::c_Et_ [private]

Definition at line 33 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

float PhotonSelectorAlgo::c_hoe_ [private]

Definition at line 40 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 37 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 37 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 39 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 39 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 35 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 35 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 30 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 43 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().

Definition at line 44 of file PhotonSelectorAlgo.h.

Referenced by passPhotonSelection().