X-Git-Url: http://git.salome-platform.org/gitweb/?a=blobdiff_plain;ds=sidebyside;f=src%2FGeomValidators%2FGeomValidators_ShapeType.h;h=0606cd411235d36e110dfb60a8b10399b0f42694;hb=53445a818411b3b71e3457f5e2e97c5f23d69cb7;hp=c55c4535b5402caf14f37ae58c30771d19c8c572;hpb=5bce2e602b6e47f3a56f9e0886baca1703342d2a;p=modules%2Fshaper.git diff --git a/src/GeomValidators/GeomValidators_ShapeType.h b/src/GeomValidators/GeomValidators_ShapeType.h index c55c4535b..0606cd411 100644 --- a/src/GeomValidators/GeomValidators_ShapeType.h +++ b/src/GeomValidators/GeomValidators_ShapeType.h @@ -1,8 +1,22 @@ -// Copyright (C) 2014-20xx CEA/DEN, EDF R&D - -// File: GeomValidators_ShapeType.h -// Created: 19 Mar 2015 -// Author: Natalia ERMOLAEVA +// Copyright (C) 2014-2017 CEA/DEN, EDF R&D +// +// 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 GeomValidators_ShapeType_H #define GeomValidators_ShapeType_H @@ -23,50 +37,63 @@ class GeomValidators_ShapeType : public ModelAPI_AttributeValidator { public: - // the edge type + /// Type of shape enum TypeOfShape { - AnyShape, + Empty, Vertex, Edge, Line, Circle, + Wire, + Face, + Plane, + Shell, Solid, - Face + CompSolid, + Compound, + AnyShape }; public: GEOMVALIDATORS_EXPORT GeomValidators_ShapeType() {} - //! returns true if attribute is valid - //! \param theAttribute the checked attribute - //! \param theArguments arguments of the attribute + //! Returns true if attribute has shape type listed in the parameter arguments + //! \param[in] theAttribute the checked attribute + //! \param[in] theArguments arguments of the attribute + //! \param[out] theError error message. GEOMVALIDATORS_EXPORT virtual bool isValid(const AttributePtr& theAttribute, - const std::list& theArguments) const; + const std::list& theArguments, + Events_InfoMessage& theError) const; protected: /// Convert string to TypeOfShape value /// \param theType a string value static TypeOfShape shapeType(const std::string& theType); - bool isValidArgument(const AttributePtr& theAttribute, - const std::string& theArgument) const; - /// Returns true if the attibute's object type satisfies the argument value - /// \param theAttribute a checked attribute - /// \param theArgument a parameter + /// \param[in] theAttribute a checked attribute + /// \param[in] theShapeType a type of shape + /// \param[out] theError error message. bool isValidAttribute(const AttributePtr& theAttribute, - const TypeOfShape theShapeType) const; + const TypeOfShape theShapeType, + Events_InfoMessage& theError) const; /// Returns true if the attibute's object type satisfies the argument value - /// \param theAttribute a checked object - /// \param theShapeType a shape type + /// \param[in] theObject a checked object + /// \param[in] theShapeType a shape type + /// \param[out] theError error message. bool isValidObject(const ObjectPtr& theObject, - const TypeOfShape theShapeType) const; + const TypeOfShape theShapeType, + const bool theIsGeometricalSelection, + Events_InfoMessage& theError) const; /// Returns true if the attibute's object type satisfies the argument value - /// \param theShape a checked shape - /// \param theShapeType a shape type + /// \param[in] theShape a checked shape + /// \param[in] theShapeType a shape type + /// \param[out] theError error message. bool isValidShape(const GeomShapePtr theShape, - const TypeOfShape theShapeType) const; + const TypeOfShape theShapeType, + const bool theIsGeometricalSelection, + Events_InfoMessage& theError) const; };