Salome HOME
Save/Load manages HPContainers.
[modules/yacs.git] / src / engine / Container.hxx
index 6c8b8ed173bf6c7992b5fa20a4b75e132ade6f4e..4dc8b354958e0820ff521d88b5bab90cc21c4f49 100644 (file)
@@ -46,7 +46,9 @@ namespace YACS
       virtual ~Container();
 #endif
     public:
+      virtual std::string getKind() const = 0;
       //Execution only methods
+      virtual std::string getDiscreminantStrOfThis(const Task *askingNode) const;
       virtual bool isAlreadyStarted(const Task *askingNode) const = 0;
       virtual void start(const Task *askingNode) throw(Exception) = 0;
       virtual std::string getPlacementId(const Task *askingNode) const = 0;
@@ -54,7 +56,7 @@ namespace YACS
       //Edition only methods
       virtual void attachOnCloning() const;
       virtual void dettachOnCloning() const;
-      bool isAttachedOnCloning() const;
+      virtual bool isAttachedOnCloning() const;
       virtual void lock() = 0;
       virtual void unLock() = 0;
       //! \b WARNING ! clone behaviour \b MUST be in coherence with what is returned by isAttachedOnCloning() method
@@ -69,12 +71,13 @@ namespace YACS
       virtual std::map<std::string,std::string> getProperties() const = 0;
       virtual std::map<std::string,std::string> getResourceProperties(const std::string& name) const = 0;
       virtual void setProperties(const std::map<std::string,std::string>& properties);
-      std::string getName() const { return _name; };
+      std::string getName() const { return _name; }
       //! \b WARNING ! name is used in edition to identify different containers, it is not the runtime name of the container
-      void setName(std::string name) { _name = name; };
-      void setProc(Proc* proc) { _proc = proc; };
-      Proc* getProc() { return _proc; };
+      void setName(std::string name) { _name = name; }
+      void setProc(Proc* proc) { _proc = proc; }
+      Proc* getProc() { return _proc; }
       virtual void shutdown(int level) = 0;
+      static const char KIND_ENTRY[];
     protected:
       std::string _name;
       mutable bool _isAttachedOnCloning;