Salome HOME
Merge from V6_main (04/10/2012)
[modules/smesh.git] / src / SMESH / SMESH_subMeshEventListener.hxx
index ae911cfefbde029507c776f3b7a214bdcf4c444d..bbba7870222a0bc392ce564ee1390095f95b3237 100644 (file)
@@ -46,18 +46,18 @@ class SMESH_EXPORT SMESH_subMeshEventListener
 {
   bool myIsDeletable; //!< if true, it will be deleted by SMESH_subMesh
   mutable std::set<SMESH_subMesh*> myBusySM; //!< to avoid infinite recursion via events
+  const char*                      myName;   //!< identifier
   friend class SMESH_subMesh;
-#ifdef _DEBUG_
-  const char* myName; //!< identifier used for debug
-#endif
 
  public:
-  SMESH_subMeshEventListener(bool isDeletable, const char* name) :myIsDeletable(isDeletable)
-#ifdef _DEBUG_
-    ,myName(name)
-#endif
+  SMESH_subMeshEventListener(bool isDeletable, const char* name)
+    :myIsDeletable(isDeletable), myName(name) {}
+  virtual      ~SMESH_subMeshEventListener() {}
+  bool         IsDeletable() const { return myIsDeletable; }
+  const char*  GetName()     const { return myName; }
+  virtual void BeforeDelete(SMESH_subMesh*                  subMesh,
+                            SMESH_subMeshEventListenerData* data)
   {}
-  bool IsDeletable() const { return myIsDeletable; }
   /*!
    * \brief Do something on a certain event
    * \param event - algo_event or compute_event itself (of SMESH_subMesh)