|  | ATLAS Offline Software
    | 
Class to hold the logic structure representing a logical expression and evaluate it for a given state. More...
#include <Logic.h>
| Public Types | |
| enum | NodeType { LEAF, AND, OR } | 
| Public Member Functions | |
| Logic ()=delete | |
| virtual | ~Logic ()=default | 
| NodeType | nodeType () const | 
| void | setNegate (bool negate=true) | 
| bool | negate () const | 
| void | setExpression (const std::string &) | 
| const std::string & | expression () const | 
| virtual bool | evaluate (const std::map< std::string, bool > &elementsState) const =0 | 
| virtual bool | evaluate (const std::map< std::string, unsigned int > &elementsCount) const =0 | 
| virtual std::map< std::string, bool > | elements () const =0 | 
| virtual std::map< std::string, unsigned int > | elementsCount () const =0 | 
| void | print (std::ostream &=std::cout) const | 
| virtual void | print (std::ostream &, size_t indSize, size_t indLevel) const =0 | 
| Protected Member Functions | |
| Logic (NodeType nodeType) | |
| Private Attributes | |
| NodeType | m_nodeType { LEAF } | 
| bool | m_negate { false } | 
| std::string | m_expression { "" } | 
Class to hold the logic structure representing a logical expression and evaluate it for a given state.
For more information see the
| 
 | delete | 
| 
 | virtualdefault | 
| 
 | protected | 
| 
 | pure virtual | 
Implemented in TrigConf::LogicOR, TrigConf::LogicAND, and TrigConf::LogicLeaf.
| 
 | pure virtual | 
Implemented in TrigConf::LogicOR, TrigConf::LogicAND, and TrigConf::LogicLeaf.
| 
 | pure virtual | 
Implemented in TrigConf::LogicOR, TrigConf::LogicAND, and TrigConf::LogicLeaf.
| 
 | pure virtual | 
Implemented in TrigConf::LogicOR, TrigConf::LogicAND, and TrigConf::LogicLeaf.
| const std::string & TrigConf::Logic::expression | ( | ) | const | 
| bool TrigConf::Logic::negate | ( | ) | const | 
| 
 | pure virtual | 
Implemented in TrigConf::LogicOPS, and TrigConf::LogicLeaf.
| void TrigConf::Logic::print | ( | std::ostream & | o = std::cout | ) | const | 
| void TrigConf::Logic::setExpression | ( | const std::string & | expr | ) | 
| void TrigConf::Logic::setNegate | ( | bool | negate = true | ) | 
 1.8.18
 1.8.18