CMS 3D CMS Logo

CaloRecoTauDiscriminationByIsolation.cc

Go to the documentation of this file.
00001 #include "RecoTauTag/RecoTau/interface/CaloRecoTauDiscriminationByIsolation.h"
00002 
00003 void CaloRecoTauDiscriminationByIsolation::produce(Event& iEvent,const EventSetup& iEventSetup){
00004   Handle<CaloTauCollection> theCaloTauCollection;
00005   iEvent.getByLabel(CaloTauProducer_,theCaloTauCollection);
00006 
00007   // fill the AssociationVector object
00008   auto_ptr<CaloTauDiscriminator> theCaloTauDiscriminatorByIsolation(new CaloTauDiscriminator(CaloTauRefProd(theCaloTauCollection)));
00009 
00010   for(size_t iCaloTau=0;iCaloTau<theCaloTauCollection->size();++iCaloTau) {
00011     CaloTauRef theCaloTauRef(theCaloTauCollection,iCaloTau);
00012     CaloTau theCaloTau=*theCaloTauRef;
00013     math::XYZVector theCaloTau_XYZVector=theCaloTau.momentum();   
00014     CaloTauElementsOperators theCaloTauElementsOperators(theCaloTau);   
00015     
00016     if (ApplyDiscriminationByTrackerIsolation_){  
00017       // optional selection by a tracker isolation : ask for 0 reco::Track in an isolation annulus around a leading reco::Track axis
00018       double theTrackerIsolationDiscriminator;
00019       theTrackerIsolationDiscriminator=theCaloTauElementsOperators.discriminatorByIsolTracksN(TrackerIsolAnnulus_Tracksmaxn_);
00020       if (theTrackerIsolationDiscriminator==0){
00021         theCaloTauDiscriminatorByIsolation->setValue(iCaloTau,0);
00022         continue;
00023       }
00024     }
00025     
00026     // not optional selection : ask for a leading (Pt>minPt) reco::Track in a matching cone around the CaloJet axis
00027     double theleadTkDiscriminator=NAN;
00028     if (!theCaloTau.leadTrack()) theleadTkDiscriminator=0;
00029     if (theleadTkDiscriminator==0) theCaloTauDiscriminatorByIsolation->setValue(iCaloTau,0);
00030     else theCaloTauDiscriminatorByIsolation->setValue(iCaloTau,1);
00031   }
00032   
00033   iEvent.put(theCaloTauDiscriminatorByIsolation);
00034 }

Generated on Tue Jun 9 17:45:01 2009 for CMSSW by  doxygen 1.5.4