Template node class to perform binary operations on evaluate-able nodes.
More...
#include </home/werner/origo/vish/ocean/parzival/OperatorNode.hpp>
List of all members.
Public Types
-
typedef LeftNode_t::value_type left_type
-
typedef BinaryFunctor::LeftNode_t LeftNode_t
-
typedef BinaryFunctor::ResultNode_t ResultNode_t
-
typedef RightNode_t::value_type right_type
-
typedef BinaryFunctor::RightNode_t RightNode_t
-
typedef ResultNode_t::value_type value_type
Public Member Functions
-
BinaryOperatorNode (const MemCore::RefPtr< LeftNode_t > &left, const MemCore::RefPtr< RightNode_t > &right)
-
override MemCore::RefPtr< Node > derive (const ScalarVariableNode &Variable) const
-
override value_type eval (const Evaluator &EV) const
-
override MemCore::RefPtr
< MemCore::TypedChunk
< value_type > > evaluate (const Evaluator &E) const
-
override ostream & output (ostream &os) const
Public Attributes
-
MemCore::RefPtr< LeftNode_t > Left
-
MemCore::RefPtr< RightNode_t > Right
Detailed Description
Template node class to perform binary operations on evaluate-able nodes.
- Parameters:
-
BinaryFunctor | A class that export three typedef's, named
- LeftNode_t
- RightNode_t
- ResultNode_t and a static member function eval() that takes appropriatve values. It is expected that the exported typedef's relate to child classes of Node , such as ScalarNode or VectorNode, though this is not an absolute requirement.
|
The documentation for this struct was generated from the following file:
- ocean/parzival/OperatorNode.hpp