Belle II Software development
AbstractExpressionNode< AVariableManager > Class Template Referenceabstract

AbstractExpressionNode Superclass for all nodes which host expressions. More...

#include <AbstractNodes.h>

Inheritance diagram for AbstractExpressionNode< AVariableManager >:
BinaryExpressionNode< AVariableManager > DataNode< AVariableManager, T > FunctionNode< AVariableManager > IdentifierNode< AVariableManager > UnaryExpressionNode< AVariableManager >

Public Types

typedef AVariableManager::Object Object
 Template argument dependent Particle type definition.
 
typedef AVariableManager::Var Var
 Template argument dependent Variable type definition.
 

Public Member Functions

virtual AVariableManager::VarVariant evaluate (const Object *p) const =0
 pure virtual evaluate function, has to be overridden in derived class
 
virtual void print () const =0
 pure virtual print function, has to be overridden in derived class
 
virtual std::string decompile () const =0
 pure virtual decompile function, has to be overridden in derived class
 
virtual ~AbstractExpressionNode ()
 Virtual destructor.
 

Detailed Description

template<class AVariableManager>
class Belle2::AbstractExpressionNode< AVariableManager >

AbstractExpressionNode Superclass for all nodes which host expressions.

Every child class must override the evaluate member, which returns the value of its expression as a variant<double, int, bool>.

Definition at line 66 of file AbstractNodes.h.

Member Typedef Documentation

◆ Object

typedef AVariableManager::Object Object

Template argument dependent Particle type definition.

Definition at line 71 of file AbstractNodes.h.

◆ Var

typedef AVariableManager::Var Var

Template argument dependent Variable type definition.

Definition at line 75 of file AbstractNodes.h.

Constructor & Destructor Documentation

◆ ~AbstractExpressionNode()

virtual ~AbstractExpressionNode ( )
inlinevirtual

Virtual destructor.

Definition at line 92 of file AbstractNodes.h.

92{}

Member Function Documentation

◆ decompile()

virtual std::string decompile ( ) const
pure virtual

◆ evaluate()

virtual AVariableManager::VarVariant evaluate ( const Object p) const
pure virtual

◆ print()

virtual void print ( ) const
pure virtual

The documentation for this class was generated from the following file: