Salome HOME
Define guards are corrected according to the code style
[modules/shaper.git] / src / ModelAPI / ModelAPI_PluginManager.h
index 6b25bf4a378dfc68758dc6f500b33ee692219054..355e9814f3fcfec38c28ebae6dd017193990cea3 100644 (file)
@@ -2,8 +2,8 @@
 // Created:     20 Mar 2014
 // Author:      Mikhail PONIKAROV
 
-#ifndef ModelAPI_PluginManager_HeaderFile
-#define ModelAPI_PluginManager_HeaderFile
+#ifndef ModelAPI_PluginManager_H_
+#define ModelAPI_PluginManager_H_
 
 #include "ModelAPI.h"
 #include <string>
@@ -12,6 +12,7 @@
 class ModelAPI_Feature;
 class ModelAPI_Plugin;
 class ModelAPI_Document;
+class ModelAPI_ValidatorsFactory;
 
 /**\class ModelAPI_PluginManager
  * \ingroup DataModel
@@ -47,6 +48,9 @@ public:
   virtual boost::shared_ptr<ModelAPI_Document> copy(
     boost::shared_ptr<ModelAPI_Document> theSource, std::string theID) = 0;
 
+  /// Returns the validators factory: the only one instance per application
+  virtual ModelAPI_ValidatorsFactory* validators() = 0;
+
   /// Is needed for python wrapping by swig, call Get to get an instance
   ModelAPI_PluginManager();
 
@@ -57,12 +61,11 @@ protected:
   /// Creates the feature object using plugins functionality
   virtual boost::shared_ptr<ModelAPI_Feature> createFeature(std::string theFeatureID) = 0;
 
-  static void SetPluginManager(boost::shared_ptr<ModelAPI_PluginManager> theManager);
+  static void setPluginManager(boost::shared_ptr<ModelAPI_PluginManager> theManager);
 
   friend class Model_Document;
 };
 
 typedef boost::shared_ptr<ModelAPI_PluginManager> PluginManagerPtr;
 
-
 #endif