Salome HOME
Merge branch 'master' into Dev_1.1.0
[modules/shaper.git] / src / ModelAPI / ModelAPI_ShapeValidator.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D
2
3 // File:        ModelAPI_ShapeValidator.h
4 // Created:     2 Feb 2015
5 // Author:      Natalia ERMOLAEVA
6
7 #ifndef ModelAPI_ShapeValidator_H
8 #define ModelAPI_ShapeValidator_H
9
10 #include <ModelAPI.h>
11
12 #include <ModelAPI_Validator.h>
13 #include <ModelAPI_Feature.h>
14 #include <ModelAPI_Attribute.h>
15
16 #include <GeomAPI_Shape.h>
17
18 /**
19  * Generic validator for any attribute of a feature.
20  */
21 class ModelAPI_ShapeValidator : public ModelAPI_Validator
22 {
23 public:
24   /// returns True if the attribute is valid. It checks whether the feature of the attribute
25   /// does not contain a selection attribute filled with the same shape
26   /// \param theFeature a feature to check
27   /// \param theAttribute an attribute to check
28   /// \param theShape a shape
29   MODELAPI_EXPORT bool isValid(const FeaturePtr& theFeature, const AttributePtr& theAttribute,
30                                const GeomShapePtr& theShape) const;
31 };
32
33 #endif