CMS 3D CMS Logo

/afs/cern.ch/work/a/aaltunda/public/www/CMSSW_6_2_5/src/RecoTauTag/TauTagTools/src/DiscriminantList.cc

Go to the documentation of this file.
00001 #include "RecoTauTag/TauTagTools/interface/DiscriminantList.h"
00002 
00003 using namespace std;
00004 namespace PFTauDiscriminants {
00005 
00006 // CONSTRUCTOR:
00007 //      USER: add/remove the Discrimiants* you wish to use here.
00008 DiscriminantList::DiscriminantList()
00009 {
00010    theDiscriminants_.push_back(new DecayMode()                         ); 
00011    theDiscriminants_.push_back(new MainTrackPt()                       ); 
00012    theDiscriminants_.push_back(new MainTrackAngle()                    ); 
00013    theDiscriminants_.push_back(new TrackPt()                           ); 
00014    theDiscriminants_.push_back(new TrackAngle()                        ); 
00015    theDiscriminants_.push_back(new PiZeroPt()                          ); 
00016    theDiscriminants_.push_back(new PiZeroAngle()                       ); 
00017    theDiscriminants_.push_back(new Dalitz()                            ); 
00018    theDiscriminants_.push_back(new InvariantMassOfSignal()             ); 
00019    theDiscriminants_.push_back(new InvariantMass()                     ); 
00020    theDiscriminants_.push_back(new Pt()                                ); 
00021    theDiscriminants_.push_back(new Eta()                               ); 
00022    theDiscriminants_.push_back(new OutlierPt()                         ); 
00023    theDiscriminants_.push_back(new OutlierAngle()                      ); 
00024    theDiscriminants_.push_back(new ChargedOutlierPt()                  ); 
00025    theDiscriminants_.push_back(new ChargedOutlierAngle()               ); 
00026    theDiscriminants_.push_back(new NeutralOutlierPt()                  ); 
00027    theDiscriminants_.push_back(new NeutralOutlierAngle()               ); 
00028    theDiscriminants_.push_back(new OutlierNCharged()                   ); 
00029    theDiscriminants_.push_back(new GammaOccupancy()                    ); 
00030    theDiscriminants_.push_back(new GammaPt()                           ); 
00031    theDiscriminants_.push_back(new FilteredObjectPt()                  ); 
00032    theDiscriminants_.push_back(new InvariantMassOfSignalWithFiltered() ); 
00033    theDiscriminants_.push_back(new OutlierN()                          ); 
00034    theDiscriminants_.push_back(new OutlierSumPt()                      ); 
00035    theDiscriminants_.push_back(new OutlierMass()                       ); 
00036    theDiscriminants_.push_back(new ChargedOutlierSumPt()               ); 
00037    theDiscriminants_.push_back(new NeutralOutlierSumPt()               ); 
00038 }
00039 
00040 //cleanup on destruction
00041 DiscriminantList::~DiscriminantList()
00042 {
00043    for(const_iterator iDiscrminant  = this->begin();
00044                       iDiscrminant != this->end();
00045                     ++iDiscrminant)
00046    {
00047       delete *iDiscrminant;
00048    }
00049 }
00050 
00051 } //end namespace
00052 
00053 
00054 
00055