ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
DerivationFramework::FilterCombinationAND Class Reference

#include <FilterCombinationAND.h>

Inheritance diagram for DerivationFramework::FilterCombinationAND:
Collaboration diagram for DerivationFramework::FilterCombinationAND:

Public Member Functions

 FilterCombinationAND (const std::string &t, const std::string &n, const IInterface *p)
 Constructor with parameters. More...
 
 ~FilterCombinationAND ()
 Destructor. More...
 
virtual StatusCode initialize () override
 
virtual StatusCode finalize () override
 
virtual bool eventPassesFilter () const override
 Check that the current event passes this filter. More...
 

Private Attributes

std::atomic< unsigned int > m_ntot {0}
 
std::atomic< unsigned int > m_npass {0}
 
ToolHandleArray< ISkimmingToolm_filtersToCombine
 

Detailed Description

the code used in this implementation is kindly stolen from: atlasoff:: ISF/ISF_Core/ISF_Tools

Author
James Catmore -at- cern.ch

Definition at line 30 of file FilterCombinationAND.h.

Constructor & Destructor Documentation

◆ FilterCombinationAND()

DerivationFramework::FilterCombinationAND::FilterCombinationAND ( const std::string &  t,
const std::string &  n,
const IInterface *  p 
)

Constructor with parameters.

Definition at line 14 of file FilterCombinationAND.cxx.

16  :
17  base_class(t,n,p)
18  {
19  declareProperty("FilterList", m_filtersToCombine);
20  }

◆ ~FilterCombinationAND()

DerivationFramework::FilterCombinationAND::~FilterCombinationAND ( )

Destructor.

Definition at line 23 of file FilterCombinationAND.cxx.

23  {
24 }

Member Function Documentation

◆ eventPassesFilter()

bool DerivationFramework::FilterCombinationAND::eventPassesFilter ( ) const
overridevirtual

Check that the current event passes this filter.

Definition at line 46 of file FilterCombinationAND.cxx.

47 {
48  ++m_ntot;
49  bool passesEvent=true;
50 
51  ToolHandleArray<DerivationFramework::ISkimmingTool>::const_iterator filterIter = m_filtersToCombine.begin();
52  for (; filterIter != m_filtersToCombine.end(); ++filterIter) {
53  bool thisFilterPasses = (*filterIter)->eventPassesFilter();
54  msg(MSG::DEBUG)<<" Filter "<<filterIter->name()<<" passes? "<<thisFilterPasses<<endmsg;
55  passesEvent = passesEvent && thisFilterPasses ;
56  }
57  msg(MSG::DEBUG)<<" AND of all filters passes? "<<passesEvent<<endmsg;
58  if (passesEvent) m_npass++;
59 
60  return passesEvent;
61 
62 }

◆ finalize()

StatusCode DerivationFramework::FilterCombinationAND::finalize ( )
overridevirtual

Definition at line 33 of file FilterCombinationAND.cxx.

34 {
35  ATH_MSG_VERBOSE("finalize() ...");
36  ATH_MSG_INFO("Processed "<< m_ntot <<" events, "<< m_npass<<" events passed filter ");
37  ToolHandleArray<DerivationFramework::ISkimmingTool>::const_iterator filterIter = m_filtersToCombine.begin();
38  for (; filterIter != m_filtersToCombine.end(); ++filterIter) {
39 
40  }
41 
42  return StatusCode::SUCCESS;
43 }

◆ initialize()

StatusCode DerivationFramework::FilterCombinationAND::initialize ( )
overridevirtual

Definition at line 27 of file FilterCombinationAND.cxx.

28 {
29  ATH_MSG_VERBOSE("initialize() ...");
30  ATH_CHECK( m_filtersToCombine.retrieve() );
31  return StatusCode::SUCCESS;
32 }

Member Data Documentation

◆ m_filtersToCombine

ToolHandleArray<ISkimmingTool> DerivationFramework::FilterCombinationAND::m_filtersToCombine
private

Definition at line 49 of file FilterCombinationAND.h.

◆ m_npass

std::atomic<unsigned int> DerivationFramework::FilterCombinationAND::m_npass {0}
mutableprivate

Definition at line 48 of file FilterCombinationAND.h.

◆ m_ntot

std::atomic<unsigned int> DerivationFramework::FilterCombinationAND::m_ntot {0}
mutableprivate

Definition at line 47 of file FilterCombinationAND.h.


The documentation for this class was generated from the following files:
ATH_MSG_INFO
#define ATH_MSG_INFO(x)
Definition: AthMsgStreamMacros.h:31
read_hist_ntuple.t
t
Definition: read_hist_ntuple.py:5
ATH_MSG_VERBOSE
#define ATH_MSG_VERBOSE(x)
Definition: AthMsgStreamMacros.h:28
python.utils.AtlRunQueryDQUtils.p
p
Definition: AtlRunQueryDQUtils.py:210
beamspotman.n
n
Definition: beamspotman.py:731
endmsg
#define endmsg
Definition: AnalysisConfig_Ntuple.cxx:63
ATH_CHECK
#define ATH_CHECK
Definition: AthCheckMacros.h:40
DerivationFramework::FilterCombinationAND::m_npass
std::atomic< unsigned int > m_npass
Definition: FilterCombinationAND.h:48
DEBUG
#define DEBUG
Definition: page_access.h:11
python.AutoConfigFlags.msg
msg
Definition: AutoConfigFlags.py:7
DerivationFramework::FilterCombinationAND::m_filtersToCombine
ToolHandleArray< ISkimmingTool > m_filtersToCombine
Definition: FilterCombinationAND.h:49
DerivationFramework::FilterCombinationAND::m_ntot
std::atomic< unsigned int > m_ntot
Definition: FilterCombinationAND.h:47