![]() |
Belle II Software
release-08-02-04
|
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.