1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
3 // File: SolveSpaceSolver_ParameterWrapper.cpp
5 // Author: Artem ZHIDKOV
7 #include <SolveSpaceSolver_ParameterWrapper.h>
11 SolveSpaceSolver_ParameterWrapper::SolveSpaceSolver_ParameterWrapper(const Slvs_Param& theParam)
12 : myParameter(theParam)
16 ParameterID SolveSpaceSolver_ParameterWrapper::id() const
18 return (ParameterID)myParameter.h;
21 void SolveSpaceSolver_ParameterWrapper::setValue(double theValue)
23 myParameter.val = theValue;
26 double SolveSpaceSolver_ParameterWrapper::value() const
28 return myParameter.val;
31 bool SolveSpaceSolver_ParameterWrapper::isEqual(const ParameterWrapperPtr& theOther)
33 std::shared_ptr<SolveSpaceSolver_ParameterWrapper> anOtherParam =
34 std::dynamic_pointer_cast<SolveSpaceSolver_ParameterWrapper>(theOther);
35 return anOtherParam && fabs(value() - anOtherParam->value()) < tolerance;
38 bool SolveSpaceSolver_ParameterWrapper::update(const ParameterWrapperPtr& theOther)
40 std::shared_ptr<SolveSpaceSolver_ParameterWrapper> anOther =
41 std::dynamic_pointer_cast<SolveSpaceSolver_ParameterWrapper>(theOther);
42 if (fabs(value() - anOther->value()) < tolerance)
44 myParameter.val = anOther->value();
45 myIsParametric = theOther->isParametric();