20#ifndef INCLUDED_SLIDESHOW_SOURCE_INC_EXPRESSIONNODEFACTORY_HXX
21#define INCLUDED_SLIDESHOW_SOURCE_INC_EXPRESSIONNODEFACTORY_HXX
45 static std::shared_ptr<ExpressionNode>
createPlusExpression (
const std::shared_ptr<ExpressionNode>& rLHS,
46 const std::shared_ptr<ExpressionNode>& rRHS );
47 static std::shared_ptr<ExpressionNode>
createMinusExpression (
const std::shared_ptr<ExpressionNode>& rLHS,
48 const std::shared_ptr<ExpressionNode>& rRHS );
50 const std::shared_ptr<ExpressionNode>& rRHS );
52 const std::shared_ptr<ExpressionNode>& rRHS );
59 static std::shared_ptr<ExpressionNode>
createMinExpression (
const std::shared_ptr<ExpressionNode>& rOuterFunction,
60 const std::shared_ptr<ExpressionNode>& rInnerFunction );
62 static std::shared_ptr<ExpressionNode>
createMaxExpression (
const std::shared_ptr<ExpressionNode>& rOuterFunction,
63 const std::shared_ptr<ExpressionNode>& rInnerFunction );
static std::shared_ptr< ExpressionNode > createMultipliesExpression(const std::shared_ptr< ExpressionNode > &rLHS, const std::shared_ptr< ExpressionNode > &rRHS)
static std::shared_ptr< ExpressionNode > createConstantValueExpression(double rConstantValue)
static std::shared_ptr< ExpressionNode > createPlusExpression(const std::shared_ptr< ExpressionNode > &rLHS, const std::shared_ptr< ExpressionNode > &rRHS)
static std::shared_ptr< ExpressionNode > createMinExpression(const std::shared_ptr< ExpressionNode > &rOuterFunction, const std::shared_ptr< ExpressionNode > &rInnerFunction)
Composes two ExpressionNode function.
static std::shared_ptr< ExpressionNode > createValueTExpression()
static std::shared_ptr< ExpressionNode > createMaxExpression(const std::shared_ptr< ExpressionNode > &rOuterFunction, const std::shared_ptr< ExpressionNode > &rInnerFunction)
static std::shared_ptr< ExpressionNode > createDividesExpression(const std::shared_ptr< ExpressionNode > &rLHS, const std::shared_ptr< ExpressionNode > &rRHS)
static std::shared_ptr< ExpressionNode > createMinusExpression(const std::shared_ptr< ExpressionNode > &rLHS, const std::shared_ptr< ExpressionNode > &rRHS)