Salome HOME
Merge remote-tracking branch 'remotes/origin/master' into azv/SketchSolver_Refactoring
[modules/shaper.git] / src / SketchSolver / PlaneGCSSolver / PlaneGCSSolver_ConstraintWrapper.cpp
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:    PlaneGCSSolver_ConstraintWrapper.cpp
4 // Created: 14 Dec 2015
5 // Author:  Artem ZHIDKOV
6
7 #include <PlaneGCSSolver_ConstraintWrapper.h>
8
9 PlaneGCSSolver_ConstraintWrapper::PlaneGCSSolver_ConstraintWrapper(
10     const GCSConstraintPtr& theConstraint,
11     const SketchSolver_ConstraintType& theType)
12   : myGCSConstraints(1, theConstraint),
13     myType(theType)
14 {
15   myID = CID_UNKNOWN;
16 }
17
18 PlaneGCSSolver_ConstraintWrapper::PlaneGCSSolver_ConstraintWrapper(
19     const std::list<GCSConstraintPtr>& theConstraints,
20     const SketchSolver_ConstraintType& theType)
21   : myGCSConstraints(theConstraints),
22     myType(theType)
23 {
24   myID = CID_UNKNOWN;
25 }
26
27 void PlaneGCSSolver_ConstraintWrapper::setId(const ConstraintID& theID)
28 {
29   myID = theID;
30   std::list<GCSConstraintPtr>::iterator anIt = myGCSConstraints.begin();
31   for (; anIt != myGCSConstraints.end(); ++anIt)
32     (*anIt)->setTag((int)theID);
33 }
34
35 void PlaneGCSSolver_ConstraintWrapper::setValueParameter(const ScalarWrapperPtr& theValue)
36 {
37   myValueParam = theValue;
38 }
39
40 void PlaneGCSSolver_ConstraintWrapper::setValue(const double& theValue)
41 {
42   myValueParam->setValue(theValue);
43 }
44
45 double PlaneGCSSolver_ConstraintWrapper::value() const
46 {
47   return myValueParam->value();
48 }