-// Copyright (C) 2014-20xx CEA/DEN, EDF R&D
-
-// File: Model_Validator.cpp
-// Created: 2 Jul 2014
-// Author: Mikhail PONIKAROV
+// 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<mailto:webmaster.salome@opencascade.com>
+//
#include "Model_Validator.h"
}
return anInCase; // if no additional conditions, this attribute is the case to be validated
}
+
+void Model_ValidatorsFactory::registerMainArgument(std::string theFeature,
+ std::string theAttribute)
+{
+ std::map<std::string, std::string>::iterator aFound = myMainArgument.find(theFeature);
+ if (aFound == myMainArgument.end())
+ myMainArgument[theFeature] = theAttribute;
+}
+
+bool Model_ValidatorsFactory::isMainArgument(std::string theFeature, std::string theAttribute)
+{
+ std::map<std::string, std::string>::iterator aFound = myMainArgument.find(theFeature);
+ return aFound != myMainArgument.end() && aFound->second == theAttribute;
+}
+
+void Model_ValidatorsFactory::registerGeometricalSelection(std::string theFeature,
+ std::string theAttribute)
+{
+ std::map<std::string, std::set<std::string> >::iterator aFind =
+ myGeometricalSelection.find(theFeature);
+ if (aFind == myGeometricalSelection.end()) {
+ std::set<std::string> aNewSet;
+ aNewSet.insert(theAttribute);
+ myGeometricalSelection[theFeature] = aNewSet;
+ }
+ else {
+ aFind->second.insert(theAttribute);
+ }
+}
+
+bool Model_ValidatorsFactory::isGeometricalSelection(std::string theFeature,
+ std::string theAttribute)
+{
+ std::map<std::string, std::set<std::string> >::iterator aFind =
+ myGeometricalSelection.find(theFeature);
+ return aFind != myGeometricalSelection.end()
+ && aFind->second.find(theAttribute) != aFind->second.end();
+}