Salome HOME
Merge from OCC_development_generic_2006
[modules/visu.git] / src / VISU_I / VISU_IsoSurfaces_i.hh
index a5a6d208eedee43a6f6b254059af392db9e5e621..b10ef5204d10d50e9774b1abe41aaaad0a5ba19f 100644 (file)
@@ -1,23 +1,23 @@
 //  VISU OBJECT : interactive object for VISU entities implementation
 //
 //  Copyright (C) 2003  OPEN CASCADE, EADS/CCR, LIP6, CEA/DEN,
-//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS 
-// 
-//  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. 
-// 
-//  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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org 
+//  CEDRAT, EDF R&D, LEG, PRINCIPIA R&D, BUREAU VERITAS
+//
+//  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.
+//
+//  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.opencascade.org/SALOME/ or email : webmaster.salome@opencascade.org
 //
 //
 //  File   : VISU_PrsObject_i.hxx
@@ -38,11 +38,17 @@ namespace VISU{
     static int myNbPresent;
     IsoSurfaces_i();
     IsoSurfaces_i(const IsoSurfaces_i&);
+
   public:
-    IsoSurfaces_i(Result_i* theResult, bool theAddToStudy = true);
-    virtual void SameAs(const IsoSurfaces_i* theOrigin);
+    typedef ScalarMap_i TSuperClass;
+
+    explicit
+    IsoSurfaces_i(Result_i* theResult,
+                 bool theAddToStudy);
+    explicit
+    IsoSurfaces_i(Result_i* theResult,
+                 SALOMEDS::SObject_ptr theSObject);
     virtual ~IsoSurfaces_i();
-    virtual void Destroy();
 
     virtual VISU::VISUType GetType() { return VISU::TISOSURFACE;};
 
@@ -61,22 +67,22 @@ namespace VISU{
     VISU_IsoSurfacesPL* myIsoSurfacesPL;
 
   public:
-    static int IsPossible(Result_i* theResult, const char* theMeshName, VISU::Entity theEntity, 
-                         const char* theFieldName, int theIteration);
-    virtual Storable* Create(const char* theMeshName, VISU::Entity theEntity, 
+    static int IsPossible(Result_i* theResult, const char* theMeshName, VISU::Entity theEntity,
+                         const char* theFieldName, int theIteration, int isMemoryCheck = true);
+    virtual Storable* Create(const char* theMeshName, VISU::Entity theEntity,
                             const char* theFieldName, int theIteration);
 
-    static const string myComment;
+    static const std::string myComment;
     virtual const char* GetComment() const;
     virtual QString GenerateName();
 
     virtual void ToStream(std::ostringstream& theStr);
 
-    virtual Storable* Restore(const Storable::TRestoringMap& theMap)
-      throw(std::logic_error&);
-    static Storable* Restore(SALOMEDS::SObject_ptr theSObject, 
-                            const string& thePrefix, const Storable::TRestoringMap& theMap)
-      throw(std::logic_error&);
+    virtual Storable* Restore(const Storable::TRestoringMap& theMap);
+
+    virtual 
+    VISU_Actor* 
+    CreateActor(const Handle(SALOME_InteractiveObject)& theIO = NULL);
 
     virtual void SetMapScale(double theMapScale = 1.0);
   };