ATLAS Offline Software
Public Member Functions | Private Attributes | List of all members
ConditionFilter Class Reference

#include <ConditionFilter.h>

Inheritance diagram for ConditionFilter:
Collaboration diagram for ConditionFilter:

Public Member Functions

 ConditionFilter ()
 
 ConditionFilter (ConditionPtrs &&)
 
virtual HypoJetVector filter (const HypoJetVector &jv, const std::unique_ptr< ITrigJetHypoInfoCollector > &) const override
 
virtual std::string toString () const override
 

Private Attributes

ConditionPtrs m_conditions
 

Detailed Description

Definition at line 12 of file ConditionFilter.h.

Constructor & Destructor Documentation

◆ ConditionFilter() [1/2]

ConditionFilter::ConditionFilter ( )
inline

Definition at line 15 of file ConditionFilter.h.

15 {};

◆ ConditionFilter() [2/2]

ConditionFilter::ConditionFilter ( ConditionPtrs &&  conditions)

Definition at line 9 of file ConditionFilter.cxx.

9  :
10  m_conditions(std::move(conditions)) {
11 }

Member Function Documentation

◆ filter()

HypoJetVector ConditionFilter::filter ( const HypoJetVector jv,
const std::unique_ptr< ITrigJetHypoInfoCollector > &  collector 
) const
overridevirtual

Implements IHypoJetVectorFilter.

Definition at line 31 of file ConditionFilter.cxx.

32  {
33 
34 
35  if (m_conditions.empty()) {
36  return jv;
37  }
38 
39  auto filtered = HypoJetVector(jv.cbegin(), jv.cend());
40  auto filtered_begin = filtered.begin();
41  auto filtered_end = filtered.end();
42 
43  for (const auto& cptr : m_conditions) {
44  filtered_end = std::partition(filtered_begin,
45  filtered_end,
46  FilterPred(cptr, collector));
47  }
48 
49  filtered.resize(filtered_end - filtered_begin);
50 
51  return filtered;
52 }

◆ toString()

std::string ConditionFilter::toString ( ) const
overridevirtual

Implements IHypoJetVectorFilter.

Definition at line 54 of file ConditionFilter.cxx.

54  {
55  std::stringstream ss;
56  const void* address = static_cast<const void*>(this);
57  ss << "ConditionFilter: (" << address << ")\n"
58  << "Conditions [" << m_conditions.size() << "]:\n";
59  for (const auto& c : m_conditions) {
60  if (c) {
61  ss << " " << c->toString() << "\n\n";
62  }
63  }
64 
65  return ss.str();
66 }

Member Data Documentation

◆ m_conditions

ConditionPtrs ConditionFilter::m_conditions
private

Definition at line 28 of file ConditionFilter.h.


The documentation for this class was generated from the following files:
PowhegControl_ttHplus_NLO.ss
ss
Definition: PowhegControl_ttHplus_NLO.py:83
HypoJetVector
std::vector< pHypoJet > HypoJetVector
Definition: HypoJetDefs.h:27
RTTAlgmain.address
address
Definition: RTTAlgmain.py:55
StateLessPT_NewConfig.partition
partition
Definition: StateLessPT_NewConfig.py:49
ConditionFilter::m_conditions
ConditionPtrs m_conditions
Definition: ConditionFilter.h:28
python.compressB64.c
def c
Definition: compressB64.py:93
FilterPred
Definition: ConditionFilter.cxx:14