|  | Belle II Software
    light-2205-abys
    | 
BooleanNode which has three AbstractExpressionNodes nodes and two ComparisonOperator. More...
#include <CutNodes.h>


| Public Types | |
| typedef AVariableManager::Var | Var | 
| Template argument dependent Variable type definition. | |
| Public Member Functions | |
| bool | check (const Object *p) const override | 
| void | print () const override | 
| Print node. | |
| std::string | decompile () const override | 
| Decompile Node back to a string.  More... | |
| ~TernaryRelationalNode () | |
| Destructor. | |
| Private Types | |
| typedef AbstractBooleanNode< AVariableManager >::Object | Object | 
| Template argument dependent Particle type definition. | |
| Private Member Functions | |
| TernaryRelationalNode (Nodetuple left_node, Nodetuple center_node, Nodetuple right_node, ComparisonOperator lc_coperator, ComparisonOperator cr_coperator) | |
| Constructor.  More... | |
| Private Attributes | |
| std::unique_ptr< const AbstractExpressionNode< AVariableManager > > | m_left_enode | 
| left expression of the ternary relational expression | |
| std::unique_ptr< const AbstractExpressionNode< AVariableManager > > | m_center_enode | 
| center expression of the ternary relational expression | |
| std::unique_ptr< const AbstractExpressionNode< AVariableManager > > | m_right_enode | 
| right expression of the ternary relational expression | |
| const ComparisonOperator | m_lc_coperator | 
| comparison operator to be applied to the evaluations of the left and center expression | |
| const ComparisonOperator | m_cr_coperator | 
| comparison operator to be applied to the evaluations of the center and right expressions | |
| Friends | |
| class | NodeFactory | 
BooleanNode which has three AbstractExpressionNodes nodes and two ComparisonOperator.
This allows Ranges in the Cutstring e.g 2.0 < var < 4.3 Check() evaluates the children nodes and compares both sides with the specified operator.
Definition at line 523 of file CutNodes.h.
| 
 | inlineexplicitprivate | 
Constructor.
| left_node | (const boost::python::tuple&): tuple containing an expression node | 
| center_node | (const boost::python::tuple&): tuple containing an expression node | 
| right_node | (const boost::python::tuple&): tuple containing an expression node | 
| lc_coperator | (ComparisonOperator): comparison operator enum value specifying the comparison between left and center expression | 
| cr_coperator | (ComparisonOperator): comparison operator enum value specifiying the comparison between center and right expression | 
Definition at line 628 of file CutNodes.h.
| 
 | inlineoverridevirtual | 
| p | pointer to the object, that should be checked. Checking is done sequentially. At first the left-center condition is checked. If it evaluates to false we can directly return false. If it true we have to check to center-right condition. | 
Implements AbstractBooleanNode< AVariableManager >.
Definition at line 535 of file CutNodes.h.
| 
 | inlineoverridevirtual | 
Decompile Node back to a string.
decompile(compile) should give the same result.
Implements AbstractBooleanNode< AVariableManager >.
Definition at line 603 of file CutNodes.h.