[cig-commits] r13160 - cs/cigma/trunk/src

luis at geodynamics.org luis at geodynamics.org
Wed Oct 29 15:11:21 PDT 2008


Author: luis
Date: 2008-10-29 15:11:20 -0700 (Wed, 29 Oct 2008)
New Revision: 13160

Modified:
   cs/cigma/trunk/src/core_base_op.cpp
   cs/cigma/trunk/src/core_compare_op.cpp
   cs/cigma/trunk/src/core_compare_op.h
   cs/cigma/trunk/src/core_eval_op.cpp
   cs/cigma/trunk/src/core_eval_op.h
   cs/cigma/trunk/src/core_extract_op.h
Log:
Use shared_ptr for the objects used in the core ops

The boost::shared_ptr will force the objects to clean up
when its destructor is called.

Modified: cs/cigma/trunk/src/core_base_op.cpp
===================================================================
--- cs/cigma/trunk/src/core_base_op.cpp	2008-10-29 22:11:17 UTC (rev 13159)
+++ cs/cigma/trunk/src/core_base_op.cpp	2008-10-29 22:11:20 UTC (rev 13160)
@@ -1,8 +1,6 @@
 #include "core_base_op.h"
 using namespace cigma;
 
-// ----------------------------------------------------------------------------
-
 BaseOp::BaseOp()
 {
     verbose = false;
@@ -12,4 +10,3 @@
 {
 }
 
-// ----------------------------------------------------------------------------

Modified: cs/cigma/trunk/src/core_compare_op.cpp
===================================================================
--- cs/cigma/trunk/src/core_compare_op.cpp	2008-10-29 22:11:17 UTC (rev 13159)
+++ cs/cigma/trunk/src/core_compare_op.cpp	2008-10-29 22:11:20 UTC (rev 13160)
@@ -5,21 +5,10 @@
 
 CompareOp::CompareOp()
 {
-    first = 0;
-    second = 0;
-    mesh = 0;
-    quadrature = 0;
-    residuals = 0;
-
 }
 
 CompareOp::~CompareOp()
 {
-    if (first)      { delete first; first = 0; }
-    if (second)     { delete second; second = 0; }
-    if (mesh)       { delete mesh; mesh = 0; }
-    if (quadrature) { delete quadrature; quadrature = 0; }
-    if (residuals)  { delete residuals; residuals = 0; }
 }
 
 // ----------------------------------------------------------------------------

Modified: cs/cigma/trunk/src/core_compare_op.h
===================================================================
--- cs/cigma/trunk/src/core_compare_op.h	2008-10-29 22:11:17 UTC (rev 13159)
+++ cs/cigma/trunk/src/core_compare_op.h	2008-10-29 22:11:20 UTC (rev 13160)
@@ -15,11 +15,11 @@
     ~CompareOp();
 
 public:
-    Function *first;
-    Function *second;
-    MeshPart *mesh;
-    Quadrature *quadrature;
-    Residuals *residuals;
+    boost::shared_ptr<Function> first;
+    boost::shared_ptr<Function> second;
+    boost::shared_ptr<MeshPart> mesh;
+    boost::shared_ptr<Quadrature> quadrature;
+    boost::shared_ptr<Residuals> residuals;
 };
 
 #endif

Modified: cs/cigma/trunk/src/core_eval_op.cpp
===================================================================
--- cs/cigma/trunk/src/core_eval_op.cpp	2008-10-29 22:11:17 UTC (rev 13159)
+++ cs/cigma/trunk/src/core_eval_op.cpp	2008-10-29 22:11:20 UTC (rev 13160)
@@ -5,22 +5,18 @@
 
 EvalOp::EvalOp()
 {
-    field = 0;
-    coords = 0;
 }
 
 EvalOp::~EvalOp()
 {
-    if (field)  { delete field; field = 0; }
-    if (coords) { delete coords; coords = 0; }
 }
 
 // ----------------------------------------------------------------------------
 
 void EvalOp::eval()
 {
-    assert(field);
-    assert(coords);
+    // XXX: if (!field) raise exception
+    // XXX: if (!coords) raise exception
 }
 
 // ----------------------------------------------------------------------------

Modified: cs/cigma/trunk/src/core_eval_op.h
===================================================================
--- cs/cigma/trunk/src/core_eval_op.h	2008-10-29 22:11:17 UTC (rev 13159)
+++ cs/cigma/trunk/src/core_eval_op.h	2008-10-29 22:11:20 UTC (rev 13160)
@@ -20,8 +20,8 @@
     void eval();
 
 public:
-    Function *field;
-    NodeCoordinates *coords;
+    boost::shared_ptr<Function> function;
+    boost::shared_ptr<NodeCoordinates> coords;
 };
 
 #endif

Modified: cs/cigma/trunk/src/core_extract_op.h
===================================================================
--- cs/cigma/trunk/src/core_extract_op.h	2008-10-29 22:11:17 UTC (rev 13159)
+++ cs/cigma/trunk/src/core_extract_op.h	2008-10-29 22:11:20 UTC (rev 13160)
@@ -18,9 +18,9 @@
     void extractPoints();
 
 public:
-    MeshParth *mesh;
-    Quadrature *quadrature;
-    QPoints<float> *qpoints;
+    boost::shared_ptr<MeshParth> meshPart;
+    boost::shared_ptr<Quadrature> quadrature;
+    boost::shared_ptr<QPoints> points;
 };
 
 #endif



More information about the CIG-COMMITS mailing list