ATLAS Offline Software
Loading...
Searching...
No Matches
TauAnalysisTools::DiTauSelectionCutOmniScore Class Reference

#include <DiTauSelectionCuts.h>

Inheritance diagram for TauAnalysisTools::DiTauSelectionCutOmniScore:
Collaboration diagram for TauAnalysisTools::DiTauSelectionCutOmniScore:

Public Member Functions

 DiTauSelectionCutOmniScore (DiTauSelectionTool *tDTST)
virtual void setAcceptInfo (asg::AcceptInfo &info) const override
virtual bool accept (const xAOD::DiTauJet &xTau, asg::AcceptData &accept) override
void writeControlHistograms ()
void fillHistogramCutPre (const xAOD::DiTauJet &xTau)
void fillHistogramCut (const xAOD::DiTauJet &xTau)
std::unique_ptr< TH1F > CreateControlPlot (const char *sName, const char *sTitle, int iBins, double dXLow, double dXUp)
const std::string & getName ()
void setProperty (const std::string &name, const std::string &value)

Protected Member Functions

void declareProperty (const std::string &name, std::string &loc)
std::string getProperty (const std::string &name)

Protected Attributes

std::string m_sName
std::unique_ptr< TH1F > m_hHistCutPre
std::unique_ptr< TH1F > m_hHistCut
DiTauSelectionToolm_tDTST {}
std::map< std::string, std::string & > m_mProperties

Private Member Functions

virtual void fillHistogram (const xAOD::DiTauJet &xTau, TH1F &hHist) const override

Detailed Description

Definition at line 121 of file DiTauSelectionCuts.h.

Constructor & Destructor Documentation

◆ DiTauSelectionCutOmniScore()

DiTauSelectionCutOmniScore::DiTauSelectionCutOmniScore ( DiTauSelectionTool * tDTST)

Definition at line 287 of file DiTauSelectionCuts.cxx.

288 : DiTauSelectionCut("CutOmniScore", tDTST)
289{
290 m_hHistCutPre = CreateControlPlot("hOmniScore_pre","OmniScore_pre;OmniScore; events",100,0,1);
291 m_hHistCut = CreateControlPlot("hOmniScore_cut","OmniScore_cut;OmniScore; events",100,0,1);
292}
std::unique_ptr< TH1F > CreateControlPlot(const char *sName, const char *sTitle, int iBins, double dXLow, double dXUp)
DiTauSelectionCut(const std::string &sName, TauAnalysisTools::DiTauSelectionTool *tDTST)

Member Function Documentation

◆ accept()

bool DiTauSelectionCutOmniScore::accept ( const xAOD::DiTauJet & xTau,
asg::AcceptData & accept )
overridevirtual

Implements TauAnalysisTools::DiTauSelectionCut.

Definition at line 306 of file DiTauSelectionCuts.cxx.

308{
309 // check OmniScore score, if tau has a OmniScore score in one of the regions requiered then return true; false otherwise
310 static const SG::ConstAccessor<float> acc ("omni_score");
311 float dOmniScore = acc(xTau);
312 unsigned int iNumOmniScoreRegion = m_tDTST->m_vOmniScoreRegion.size()/2;
313 for( unsigned int iOmniScoreRegion = 0; iOmniScoreRegion < iNumOmniScoreRegion; iOmniScoreRegion++ )
314 {
315 if ( dOmniScore >= m_tDTST->m_vOmniScoreRegion.at(iOmniScoreRegion*2) and dOmniScore <= m_tDTST->m_vOmniScoreRegion.at(iOmniScoreRegion*2+1))
316 {
317 acceptData.setCutResult( "OmniScore", true );
318 return true;
319 }
320 }
321 m_tDTST->msg() << MSG::VERBOSE << "Tau failed OmniScore requirement, tau OmniScore: " << dOmniScore << endmsg;
322 return false;
323}
#define endmsg

◆ CreateControlPlot()

std::unique_ptr< TH1F > DiTauSelectionCut::CreateControlPlot ( const char * sName,
const char * sTitle,
int iBins,
double dXLow,
double dXUp )
inherited

Definition at line 34 of file DiTauSelectionCuts.cxx.

35{
36 if (m_tDTST->m_bCreateControlPlots)
37 {
38 auto hHist = std::make_unique<TH1F>(sName, sTitle, iBins, dXLow, dXUp);
39 hHist->SetDirectory(0);
40 return hHist;
41 }
42
43 return nullptr;
44}

◆ declareProperty()

void DiTauSelectionCut::declareProperty ( const std::string & name,
std::string & loc )
protectedinherited

Definition at line 69 of file DiTauSelectionCuts.cxx.

70{
71 m_mProperties.try_emplace(name, loc);
72}
std::map< std::string, std::string & > m_mProperties

◆ fillHistogram()

void DiTauSelectionCutOmniScore::fillHistogram ( const xAOD::DiTauJet & xTau,
TH1F & hHist ) const
overrideprivatevirtual

Implements TauAnalysisTools::DiTauSelectionCut.

Definition at line 294 of file DiTauSelectionCuts.cxx.

295{
296 static const SG::ConstAccessor<float> acc_OmniScore("omni_score");
297 hHist.Fill(acc_OmniScore(xTau));
298}

◆ fillHistogramCut()

void DiTauSelectionCut::fillHistogramCut ( const xAOD::DiTauJet & xTau)
inherited

Definition at line 53 of file DiTauSelectionCuts.cxx.

54{
55 fillHistogram(xDiTau, *m_hHistCut);
56}
virtual void fillHistogram(const xAOD::DiTauJet &xTau, TH1F &hHist) const =0

◆ fillHistogramCutPre()

void DiTauSelectionCut::fillHistogramCutPre ( const xAOD::DiTauJet & xTau)
inherited

Definition at line 47 of file DiTauSelectionCuts.cxx.

48{
50}

◆ getName()

const std::string & TauAnalysisTools::DiTauSelectionCut::getName ( )
inlineinherited

Definition at line 48 of file DiTauSelectionCuts.h.

49 {
50 return m_sName;
51 };

◆ getProperty()

std::string DiTauSelectionCut::getProperty ( const std::string & name)
protectedinherited

Definition at line 75 of file DiTauSelectionCuts.cxx.

76{
77 std::map<std::string, std::string&>::iterator it = m_mProperties.find(name);
78 if(it == m_mProperties.end() )
79 throw std::runtime_error (("Undeclared property: " + name + "\n").c_str());
80
81 return it->second;
82}

◆ setAcceptInfo()

void DiTauSelectionCutOmniScore::setAcceptInfo ( asg::AcceptInfo & info) const
overridevirtual

Implements TauAnalysisTools::DiTauSelectionCut.

Definition at line 300 of file DiTauSelectionCuts.cxx.

301{
302 info.addCut( "OmniScore",
303 "Selection of taus according to their OmniScore" );
304}

◆ setProperty()

void DiTauSelectionCut::setProperty ( const std::string & name,
const std::string & value )
inherited

Definition at line 60 of file DiTauSelectionCuts.cxx.

61{
62 std::map<std::string, std::string&>::iterator it = m_mProperties.find(name);
63 if(it == m_mProperties.end() )
64 throw std::runtime_error (("Undeclared property: " + name + "\n").c_str());
65 it->second = value;
66}

◆ writeControlHistograms()

void DiTauSelectionCut::writeControlHistograms ( )
inherited

Definition at line 27 of file DiTauSelectionCuts.cxx.

28{
29 m_hHistCutPre->Write();
30 m_hHistCut->Write();
31}

Member Data Documentation

◆ m_hHistCut

std::unique_ptr<TH1F> TauAnalysisTools::DiTauSelectionCut::m_hHistCut
protectedinherited

Definition at line 59 of file DiTauSelectionCuts.h.

◆ m_hHistCutPre

std::unique_ptr<TH1F> TauAnalysisTools::DiTauSelectionCut::m_hHistCutPre
protectedinherited

Definition at line 58 of file DiTauSelectionCuts.h.

◆ m_mProperties

std::map<std::string, std::string&> TauAnalysisTools::DiTauSelectionCut::m_mProperties
protectedinherited

Definition at line 64 of file DiTauSelectionCuts.h.

◆ m_sName

std::string TauAnalysisTools::DiTauSelectionCut::m_sName
protectedinherited

Definition at line 56 of file DiTauSelectionCuts.h.

◆ m_tDTST

DiTauSelectionTool* TauAnalysisTools::DiTauSelectionCut::m_tDTST {}
protectedinherited

Definition at line 61 of file DiTauSelectionCuts.h.

61{};

The documentation for this class was generated from the following files: