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

#include <RepeatedCondition.h>

Inheritance diagram for RepeatedCondition:
Collaboration diagram for RepeatedCondition:

Public Member Functions

 RepeatedCondition (std::unique_ptr< ICondition > cp, std::size_t mult, int clique, int chainPartind=-1, bool invert=false)
 
virtual ~RepeatedCondition ()
 
virtual bool multiplicitySatisfied (std::size_t jgMultiplicity, const Collector &) const override
 
virtual bool isSatisfied (const HypoJetVector &v, const std::unique_ptr< ITrigJetHypoInfoCollector > &c) const override
 
virtual unsigned int capacity () const override
 
virtual std::size_t multiplicity () const override
 
virtual int clique () const override
 
virtual std::string toString () const override
 
virtual int label () const override
 
virtual bool isFromChainPart () const override
 

Private Attributes

std::unique_ptr< IConditionm_condition
 
std::size_t m_multiplicity {1}
 
int m_clique {-1}
 
int m_chainPartInd {-1}
 
bool m_invert {false}
 

Detailed Description

Definition at line 29 of file RepeatedCondition.h.

Constructor & Destructor Documentation

◆ RepeatedCondition()

RepeatedCondition::RepeatedCondition ( std::unique_ptr< ICondition cp,
std::size_t  mult,
int  clique,
int  chainPartind = -1,
bool  invert = false 
)

Definition at line 11 of file RepeatedCondition.cxx.

15  :
16  m_condition{std::move(cp)}, m_multiplicity{mult},
18  m_chainPartInd{cpInd}, m_invert{invert}{}

◆ ~RepeatedCondition()

RepeatedCondition::~RepeatedCondition ( )
virtual

Definition at line 21 of file RepeatedCondition.cxx.

21 {}

Member Function Documentation

◆ capacity()

unsigned int RepeatedCondition::capacity ( ) const
overridevirtual

Implements ICondition.

Definition at line 37 of file RepeatedCondition.cxx.

37  {
38  return m_condition->capacity();
39 }

◆ clique()

int RepeatedCondition::clique ( ) const
overridevirtual

Implements IRepeatedCondition.

Definition at line 46 of file RepeatedCondition.cxx.

46  {
47  return m_clique;
48 }

◆ isFromChainPart()

bool RepeatedCondition::isFromChainPart ( ) const
overridevirtual

Implements IRepeatedCondition.

Definition at line 73 of file RepeatedCondition.cxx.

73  {
74  return m_chainPartInd >= 0;
75 }

◆ isSatisfied()

bool RepeatedCondition::isSatisfied ( const HypoJetVector v,
const std::unique_ptr< ITrigJetHypoInfoCollector > &  c 
) const
overridevirtual

Implements ICondition.

Definition at line 30 of file RepeatedCondition.cxx.

31  {
32 
33  bool result = m_condition->isSatisfied(v, c);
34  return m_invert ? !result : result;
35 }

◆ label()

int RepeatedCondition::label ( ) const
overridevirtual

Implements IRepeatedCondition.

Definition at line 69 of file RepeatedCondition.cxx.

69  {
70  return m_chainPartInd;
71 }

◆ multiplicity()

std::size_t RepeatedCondition::multiplicity ( ) const
overridevirtual

Implements IRepeatedCondition.

Definition at line 41 of file RepeatedCondition.cxx.

41  {
42  return m_multiplicity;
43 }

◆ multiplicitySatisfied()

bool RepeatedCondition::multiplicitySatisfied ( std::size_t  jgMultiplicity,
const Collector  
) const
overridevirtual

Implements IRepeatedCondition.

Definition at line 24 of file RepeatedCondition.cxx.

25  {
26  return m_multiplicity <= jgMultiplicity;
27 }

◆ toString()

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

Implements IRepeatedCondition.

Definition at line 50 of file RepeatedCondition.cxx.

50  {
51  std::stringstream ss;
52  const void* address = static_cast<const void*>(this);
53 
54  ss << "RepeatedCondition (" << address << ") Multiplicity: "
56  << " clique " << m_clique
57  << " chainPartInd " << m_chainPartInd
58  << " invert " << std::boolalpha << m_invert
59  << '\n';
60  if (m_condition){
61  ss << m_condition->toString();
62  } else {
63  ss << " no internal condition ";
64  }
65 
66  return ss.str();
67 }

Member Data Documentation

◆ m_chainPartInd

int RepeatedCondition::m_chainPartInd {-1}
private

Definition at line 81 of file RepeatedCondition.h.

◆ m_clique

int RepeatedCondition::m_clique {-1}
private

Definition at line 79 of file RepeatedCondition.h.

◆ m_condition

std::unique_ptr<ICondition> RepeatedCondition::m_condition
private

Definition at line 77 of file RepeatedCondition.h.

◆ m_invert

bool RepeatedCondition::m_invert {false}
private

Definition at line 82 of file RepeatedCondition.h.

◆ m_multiplicity

std::size_t RepeatedCondition::m_multiplicity {1}
private

Definition at line 78 of file RepeatedCondition.h.


The documentation for this class was generated from the following files:
get_generator_info.result
result
Definition: get_generator_info.py:21
PowhegControl_ttHplus_NLO.ss
ss
Definition: PowhegControl_ttHplus_NLO.py:83
RepeatedCondition::m_chainPartInd
int m_chainPartInd
Definition: RepeatedCondition.h:81
RepeatedCondition::m_condition
std::unique_ptr< ICondition > m_condition
Definition: RepeatedCondition.h:77
RepeatedCondition::m_invert
bool m_invert
Definition: RepeatedCondition.h:82
RepeatedCondition::clique
virtual int clique() const override
Definition: RepeatedCondition.cxx:46
RepeatedCondition::m_clique
int m_clique
Definition: RepeatedCondition.h:79
RepeatedCondition::m_multiplicity
std::size_t m_multiplicity
Definition: RepeatedCondition.h:78
LArNewCalib_PedestalAutoCorr.cp
cp
Definition: LArNewCalib_PedestalAutoCorr.py:175
RTTAlgmain.address
address
Definition: RTTAlgmain.py:55
python.PyAthena.v
v
Definition: PyAthena.py:157
python.compressB64.c
def c
Definition: compressB64.py:93