Salome HOME
47a12e4347ad62287c4fa25e9e5477e7afacc128
[modules/shaper.git] / src / FeaturesPlugin / FeaturesPlugin_Validators.h
1 // Copyright (C) 2014-20xx CEA/DEN, EDF R&D -->
2
3 // File:        FeaturesPlugin_Validators.h
4 // Created:     22 March 2016
5 // Author:      Dmitry Bobylev
6
7 #ifndef FeaturesPlugin_Validators_H_
8 #define FeaturesPlugin_Validators_H_
9
10 #include <ModelAPI_FeatureValidator.h>
11
12 /// \class FeaturesPlugin_PipeLocationsValidator
13 /// \ingroup Validators
14 /// \brief Validator for the pipe locations.
15 class FeaturesPlugin_PipeLocationsValidator : public ModelAPI_FeatureValidator
16 {
17  public:
18   //! \return true if number of selected locations the same as number of selected bases, or empty.
19   //! \param theFeature the checked feature
20   //! \param theArguments arguments of the feature (not used)
21   //! \param theError error message
22   virtual bool isValid(const std::shared_ptr<ModelAPI_Feature>& theFeature,
23                        const std::list<std::string>& theArguments,
24                        std::string& theError) const;
25
26   /// Returns true if the attribute in feature is not obligatory for the feature execution
27   virtual bool isNotObligatory(std::string theFeature, std::string theAttribute);
28 };
29
30 #endif