#ifndef LINEAR_COMBINATION_H
#define LINEAR_COMBINATION_H

#ifndef LINEAR_COMBINATION_PROTOCOL_H
#include "Linear_combination_protocol.h"
#endif

#ifndef PARAMETER_H
#include "Parameter.h"
#endif

#ifndef DBC_H
#include "DbC.h"
#endif

namespace MM
{

class Linear_combination : public Linear_combination_protocol, protected DbC
{
    Parameter &     target_;

public:
    Linear_combination (double a, Parameter & target)
    :   target_(target)
    {
        target_.multiply (a);
    }

//    Linear_combination_protocol & plus (double a, Parameter_value const& v)
    Linear_combination_protocol & plus (double , Parameter_value const& )
    {
//        target_.add_scaled (a, v);
        return *this;
    }
};

}//MM

#endif //LINEAR_COMBINATION_H
