ATLAS Offline Software
Loading...
Searching...
No Matches
DerivationFramework::FilterCombinationOR Class Reference

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

#include <FilterCombinationOR.h>

Inheritance diagram for DerivationFramework::FilterCombinationOR:
Collaboration diagram for DerivationFramework::FilterCombinationOR:

Public Member Functions

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

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 FilterCombinationOR.h.

Constructor & Destructor Documentation

◆ FilterCombinationOR()

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

Constructor with parameters.

Definition at line 14 of file FilterCombinationOR.cxx.

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

◆ ~FilterCombinationOR()

DerivationFramework::FilterCombinationOR::~FilterCombinationOR ( )

Destructor.

Definition at line 23 of file FilterCombinationOR.cxx.

23 {
24}

Member Function Documentation

◆ eventPassesFilter()

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

Check that the current event passes this filter.

Definition at line 41 of file FilterCombinationOR.cxx.

42{
43 ++m_ntot;
44 bool passesEvent=false;
45
46 ToolHandleArray<DerivationFramework::ISkimmingTool>::const_iterator filterIter = m_filtersToCombine.begin();
47 for (; filterIter != m_filtersToCombine.end(); ++filterIter) {
48 bool thisFilterPasses = (*filterIter)->eventPassesFilter();
49
50 msg(MSG::DEBUG)<<" Filter "<<filterIter->name()<<" passes? "<<thisFilterPasses<<endmsg;
51 passesEvent = passesEvent || thisFilterPasses ;
52 }
53 msg(MSG::DEBUG)<<" OR of all filters passes? "<<passesEvent<<endmsg;
54 if (passesEvent) m_npass++;
55 return passesEvent;
56
57}
#define endmsg
MsgStream & msg
Definition testRead.cxx:32

◆ finalize()

StatusCode DerivationFramework::FilterCombinationOR::finalize ( )
overridevirtual

Definition at line 33 of file FilterCombinationOR.cxx.

34{
35 ATH_MSG_VERBOSE("finalize() ...");
36 ATH_MSG_INFO("Processed "<< m_ntot <<" events, "<< m_npass<<" events passed filter ");
37 return StatusCode::SUCCESS;
38}
#define ATH_MSG_INFO(x)
#define ATH_MSG_VERBOSE(x)

◆ initialize()

StatusCode DerivationFramework::FilterCombinationOR::initialize ( )
overridevirtual

Definition at line 27 of file FilterCombinationOR.cxx.

28{
29 ATH_MSG_VERBOSE("initialize() ...");
30 ATH_CHECK( m_filtersToCombine.retrieve());
31 return StatusCode::SUCCESS;
32}
#define ATH_CHECK
Evaluate an expression and check for errors.

Member Data Documentation

◆ m_filtersToCombine

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

Definition at line 49 of file FilterCombinationOR.h.

◆ m_npass

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

Definition at line 48 of file FilterCombinationOR.h.

48{0};

◆ m_ntot

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

Definition at line 47 of file FilterCombinationOR.h.

47{0};

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