getfem-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Getfem-commits] r5159 - in /trunk/getfem: interface/src/ src/getfem/


From: logari81
Subject: [Getfem-commits] r5159 - in /trunk/getfem: interface/src/ src/getfem/
Date: Sun, 29 Nov 2015 09:36:27 -0000

Author: logari81
Date: Sun Nov 29 10:36:27 2015
New Revision: 5159

URL: http://svn.gna.org/viewcvs/getfem?rev=5159&view=rev
Log:
implement destructor of getfemint_cont_struct class

Added:
    trunk/getfem/interface/src/getfemint_cont_struct.cc
Modified:
    trunk/getfem/interface/src/Makefile.am
    trunk/getfem/interface/src/getfemint_cont_struct.h
    trunk/getfem/src/getfem/getfem_continuation.h
    trunk/getfem/src/getfem/getfem_import.h

Modified: trunk/getfem/interface/src/Makefile.am
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/src/Makefile.am?rev=5159&r1=5158&r2=5159&view=diff
==============================================================================
--- trunk/getfem/interface/src/Makefile.am      (original)
+++ trunk/getfem/interface/src/Makefile.am      Sun Nov 29 10:36:27 2015
@@ -79,6 +79,7 @@
        getfemint_misc.cc \
        $(PSEUDO_MFUNCTIONS) \
        getfemint_workspace.cc \
+       getfemint_cont_struct.cc \
        getfemint_mesh.cc \
        getfemint_mesh_fem.cc \
        getfemint_mesh_im.cc \

Added: trunk/getfem/interface/src/getfemint_cont_struct.cc
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/src/getfemint_cont_struct.cc?rev=5159&view=auto
==============================================================================
--- trunk/getfem/interface/src/getfemint_cont_struct.cc (added)
+++ trunk/getfem/interface/src/getfemint_cont_struct.cc Sun Nov 29 10:36:27 2015
@@ -0,0 +1,50 @@
+/*===========================================================================
+
+ Copyright (C) 2012-2015 Tomas Ligursky, Yves Renard, Konstantinos Poulios.
+
+ This file is a part of GetFEM++
+
+ GetFEM++  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 3 of the License,  or
+ (at your option) any later version along with the GCC Runtime Library
+ Exception either version 3.1 or (at your option) any later version.
+ This program  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 and GCC Runtime Library Exception for more details.
+ You  should  have received a copy of the GNU Lesser General Public License
+ along  with  this program;  if not, write to the Free Software Foundation,
+ Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301, USA.
+
+===========================================================================*/
+#include <getfemint_cont_struct.h>
+#include <getfemint_workspace.h>
+
+namespace getfemint {
+  getfemint_cont_struct::getfemint_cont_struct
+  (getfem::cont_struct_getfem_model *s_) {
+    assert(workspace == 0);
+    s = s_;
+    ikey = getfem_object::internal_key_type(s);
+  }
+
+  getfemint_cont_struct::~getfemint_cont_struct() {
+    if (!is_static()) delete s;
+    s = 0;
+  }
+
+  getfemint_cont_struct*
+  getfemint_cont_struct::get_from(getfem::cont_struct_getfem_model *s_, int 
flags) {
+    getfem_object *o =
+      getfemint::workspace().object(getfem_object::internal_key_type(s_));
+    getfemint_cont_struct *gs = 0;
+    if (!o) {
+      gs = new getfemint_cont_struct(s_);
+      gs->set_flags(flags);
+      getfemint::workspace().push_object(gs);
+    } else gs = dynamic_cast<getfemint_cont_struct*>(o);
+    assert(gs);
+    return gs;
+  }
+}

Modified: trunk/getfem/interface/src/getfemint_cont_struct.h
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/interface/src/getfemint_cont_struct.h?rev=5159&r1=5158&r2=5159&view=diff
==============================================================================
--- trunk/getfem/interface/src/getfemint_cont_struct.h  (original)
+++ trunk/getfem/interface/src/getfemint_cont_struct.h  Sun Nov 29 10:36:27 2015
@@ -42,32 +42,16 @@
   class getfemint_cont_struct : public getfem_object {
   private:
     getfem::cont_struct_getfem_model *s;
-    getfemint_cont_struct(getfem::cont_struct_getfem_model *s_) {
-      assert(workspace == 0);
-      s = s_;
-      ikey = getfem_object::internal_key_type(s);
-    }
-
+    getfemint_cont_struct(getfem::cont_struct_getfem_model *s_);
   public:
-    ~getfemint_cont_struct() {}
+    ~getfemint_cont_struct();
     id_type class_id() const { return CONT_STRUCT_CLASS_ID; }
     size_type memsize() const {
       return s->estimated_memsize();
     }
 
     static getfemint_cont_struct*
-    get_from(getfem::cont_struct_getfem_model *ps, int flags = 0) {
-      getfem_object *o =
-        getfemint::workspace().object(getfem_object::internal_key_type(ps));
-      getfemint_cont_struct *gs = NULL;
-      if (!o) {
-        gs = new getfemint_cont_struct(ps);
-        gs->set_flags(flags);
-        getfemint::workspace().push_object(gs);
-      } else gs = dynamic_cast<getfemint_cont_struct*>(o);
-      assert(gs);
-      return gs;
-    }
+    get_from(getfem::cont_struct_getfem_model *s_, int flags = 0);
 
     getfem::cont_struct_getfem_model &cont_struct() { return *s; }
   };

Modified: trunk/getfem/src/getfem/getfem_continuation.h
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem/getfem_continuation.h?rev=5159&r1=5158&r2=5159&view=diff
==============================================================================
--- trunk/getfem/src/getfem/getfem_continuation.h       (original)
+++ trunk/getfem/src/getfem/getfem_continuation.h       Sun Nov 29 10:36:27 2015
@@ -973,6 +973,7 @@
         tau_lp(0.), tau_bp_1(tau_bp_init), tau_bp_2(tau_bp_init),
         gamma_sing(0.), gamma_next(0.)
     {}
+    virtual ~virtual_cont_struct() {}
 
   };
 

Modified: trunk/getfem/src/getfem/getfem_import.h
URL: 
http://svn.gna.org/viewcvs/getfem/trunk/getfem/src/getfem/getfem_import.h?rev=5159&r1=5158&r2=5159&view=diff
==============================================================================
--- trunk/getfem/src/getfem/getfem_import.h     (original)
+++ trunk/getfem/src/getfem/getfem_import.h     Sun Nov 29 10:36:27 2015
@@ -41,9 +41,11 @@
 #include <string>
 #include <iostream>
 #include <map>
+#include <set>
 #include "bgeot_config.h" /* for bgeot::size_type */
 
 namespace getfem {
+  using bgeot::size_type;
   class mesh;
 
   /** imports a mesh file.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]