X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FSketchSolver%2FPlaneGCSSolver%2FPlaneGCSSolver_ConstraintWrapper.h;h=95b83aa7415671a8bf528ed69f066fb7969f0aac;hb=06e7f5859095193fc7f498bd89a7d28009794f53;hp=db2972db1b4e3da837947fd2da7564470bed7e00;hpb=9ddc291385b55eb7efd9a560a1a5c468a98dc324;p=modules%2Fshaper.git diff --git a/src/SketchSolver/PlaneGCSSolver/PlaneGCSSolver_ConstraintWrapper.h b/src/SketchSolver/PlaneGCSSolver/PlaneGCSSolver_ConstraintWrapper.h index db2972db1..95b83aa74 100644 --- a/src/SketchSolver/PlaneGCSSolver/PlaneGCSSolver_ConstraintWrapper.h +++ b/src/SketchSolver/PlaneGCSSolver/PlaneGCSSolver_ConstraintWrapper.h @@ -1,45 +1,53 @@ -// Copyright (C) 2014-20xx CEA/DEN, EDF R&D - -// File: PlaneGCSSolver_ConstraintWrapper.h -// Created: 14 Dec 2015 -// Author: Artem ZHIDKOV +// Copyright (C) 2014-2023 CEA, EDF +// +// This library is free software; you can redistribute it and/or +// modify it under the terms of the GNU Lesser General Public +// License as published by the Free Software Foundation; either +// version 2.1 of the License, or (at your option) any later version. +// +// This library is distributed in the hope that it will be useful, +// but WITHOUT ANY WARRANTY; without even the implied warranty of +// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU +// Lesser General Public License for more details. +// +// You should have received a copy of the GNU Lesser General Public +// License along with this library; if not, write to the Free Software +// Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA +// +// See http://www.salome-platform.org/ or email : webmaster.salome@opencascade.com +// #ifndef PlaneGCSSolver_ConstraintWrapper_H_ #define PlaneGCSSolver_ConstraintWrapper_H_ #include -#include -#include +#include +#include /** - * Wrapper providing operations with SovleSpace constraints. + * Wrapper providing operations with PlaneGCS constraints. */ -class PlaneGCSSolver_ConstraintWrapper : public SketchSolver_IConstraintWrapper +class PlaneGCSSolver_ConstraintWrapper { public: - PlaneGCSSolver_ConstraintWrapper(const ConstraintPtr& theOriginal, - const GCSConstraintPtr& theConstraint, + PlaneGCSSolver_ConstraintWrapper(const GCSConstraintPtr& theConstraint, const SketchSolver_ConstraintType& theType); - PlaneGCSSolver_ConstraintWrapper(const ConstraintPtr& theOriginal, - const std::list& theConstraints, + PlaneGCSSolver_ConstraintWrapper(const std::list& theConstraints, const SketchSolver_ConstraintType& theType); /// \brief Return list of constraints const std::list& constraints() const { return myGCSConstraints; } + /// \brief Change list of constraints + void setConstraints(const std::list& theConstraints) + { myGCSConstraints = theConstraints; } - /// \brief Return ID of current entity - virtual ConstraintID id() const + /// \brief Return ID of current constraint + const ConstraintID& id() const { return myID; } /// \brief Change constraint ID - void setId( const ConstraintID& theID); - - /// \brief Change group for the constraint - virtual void setGroup(const GroupID& theGroup); - /// \brief Return identifier of the group the constraint belongs to - virtual GroupID group() const - { return myGroup; } + virtual void setId(const ConstraintID& theID); /// \brief Return type of current entity virtual SketchSolver_ConstraintType type() const @@ -47,31 +55,22 @@ public: /// \brief Assign numeric parameter of constraint virtual void setValue(const double& theValue); + /// \brief Return numeric parameter of constraint + virtual double value() const; /// \brief Change parameter representing the value of constraint - void setValueParameter(const ParameterWrapperPtr& theValue); + void setValueParameter(const ScalarWrapperPtr& theValue); /// \brief Return parametric representation of constraint value - const ParameterWrapperPtr& valueParameter() const + const ScalarWrapperPtr& valueParameter() const { return myValueParam; } - /// \brief Verify the feature is used in the constraint - virtual bool isUsed(FeaturePtr theFeature) const; - /// \brief Verify the attribute is used in the constraint - virtual bool isUsed(AttributePtr theAttribute) const; - - /// \brief Compare current constraint with other - virtual bool isEqual(const ConstraintWrapperPtr& theOther); - - /// \brief Update values of parameters of this constraint by the parameters of given one - /// \return \c true if some parameters change their values - virtual bool update(const std::shared_ptr& theOther); - private: - ConstraintID myID; - GroupID myGroup; + ConstraintID myID; SketchSolver_ConstraintType myType; - ParameterWrapperPtr myValueParam; + ScalarWrapperPtr myValueParam; std::list myGCSConstraints; }; +typedef std::shared_ptr ConstraintWrapperPtr; + #endif