CMS 3D CMS Logo

List of all members | Public Member Functions | Protected Attributes
triggerExpression::BinaryOperator Class Reference

#include <TriggerExpressionOperators.h>

Inheritance diagram for triggerExpression::BinaryOperator:
triggerExpression::Evaluator triggerExpression::OperatorAnd triggerExpression::OperatorOr triggerExpression::OperatorXor

Public Member Functions

 BinaryOperator (Evaluator *arg1, Evaluator *arg2)
 
void init (const Data &data) override
 
std::vector< std::string > patterns () const override
 
- Public Member Functions inherited from triggerExpression::Evaluator
virtual void dump (std::ostream &out) const =0
 
 Evaluator ()=default
 
virtual bool operator() (const Data &data) const =0
 
virtual ~Evaluator ()=default
 

Protected Attributes

std::unique_ptr< Evaluatorm_arg1
 
std::unique_ptr< Evaluatorm_arg2
 

Detailed Description

Definition at line 25 of file TriggerExpressionOperators.h.

Constructor & Destructor Documentation

◆ BinaryOperator()

triggerExpression::BinaryOperator::BinaryOperator ( Evaluator arg1,
Evaluator arg2 
)
inline

Definition at line 27 of file TriggerExpressionOperators.h.

27 : m_arg1(arg1), m_arg2(arg2) {}

Member Function Documentation

◆ init()

void triggerExpression::BinaryOperator::init ( const Data data)
inlineoverridevirtual

Reimplemented from triggerExpression::Evaluator.

Definition at line 30 of file TriggerExpressionOperators.h.

References data, m_arg1, and m_arg2.

30  {
31  m_arg1->init(data);
32  m_arg2->init(data);
33  }
char data[epos_bytes_allocation]
Definition: EPOS_Wrapper.h:79

◆ patterns()

std::vector<std::string> triggerExpression::BinaryOperator::patterns ( ) const
inlineoverridevirtual

Reimplemented from triggerExpression::Evaluator.

Definition at line 36 of file TriggerExpressionOperators.h.

References m_arg1, and m_arg2.

36  {
37  std::vector<std::string> patterns = m_arg1->patterns();
38  auto patterns2 = m_arg2->patterns();
39  patterns.insert(
40  patterns.end(), std::make_move_iterator(patterns2.begin()), std::make_move_iterator(patterns2.end()));
41  return patterns;
42  }
std::vector< std::string > patterns() const override

Member Data Documentation

◆ m_arg1

std::unique_ptr<Evaluator> triggerExpression::BinaryOperator::m_arg1
protected

◆ m_arg2

std::unique_ptr<Evaluator> triggerExpression::BinaryOperator::m_arg2
protected