rearranged header inclusion so that now it allows LBDatabase to directly (inline...
authorGengbin Zheng <gzheng@illinois.edu>
Mon, 21 Mar 2005 20:38:09 +0000 (20:38 +0000)
committerGengbin Zheng <gzheng@illinois.edu>
Mon, 21 Mar 2005 20:38:09 +0000 (20:38 +0000)
src/ck-ldb/LBDBManager.h
src/ck-ldb/LBDatabase.h
src/ck-ldb/LBMachineUtil.C
src/ck-ldb/LBMachineUtil.h
src/ck-ldb/lbdb.C

index a2e9a03b54388c01d6d3fb9531c98070afa08d85..72a0f23afb8b73f20bf9ad325c5820499b5ba732 100644 (file)
@@ -170,7 +170,7 @@ public:
     runningObj records the obj handler index so that load balancer
     knows if an event(e.g. Send) is in an entry function or not.
     An index is enough here because LDObjHandle can be retrieved from 
-    objs array. Copyinh LDObjHandle is expensive.
+    objs array. Copying LDObjHandle is expensive.
   */
   inline void SetRunningObj(const LDObjHandle &_h) 
        { runningObj = _h.handle; obj_running = CmiTrue; };
index 27d5fc40c94603ac397f9fa31c943c16f07d532a..ee1f91a666cebfd76294ea5ade41268c13865f9f 100644 (file)
@@ -15,6 +15,7 @@
 
 #include <math.h>
 #include "lbdb.h"
+#include "LBDBManager.h"
 
 // command line options
 class CkLBArgs
@@ -183,8 +184,16 @@ public:
     LDObjTime(h,walltime,cputime);
   };
 
-  inline int RunningObject(LDObjHandle* _o) { 
-    return LDRunningObject(myLDHandle,_o);
+  inline int RunningObject(LDObjHandle* _o) const { 
+#if CMK_LBDB_ON
+      LBDB *const db = (LBDB*)(myLDHandle.handle);
+      if (db->ObjIsRunning()) {
+        *_o = db->RunningObj();
+        return 1;
+      } 
+#endif
+      return 0;
+      //return LDRunningObject(myLDHandle,_o);
   };
   inline const LDObjHandle &GetObjHandle(int idx) { return LDGetObjHandle(myLDHandle, idx);}
   inline void ObjectStart(const LDObjHandle &_h) { LDObjectStart(_h); };
index 22a205c72a566f28e02b1106c9b1b399dcb271fa..089dd152fec14cffc3a6cb23af78685f52995832 100644 (file)
@@ -10,8 +10,9 @@
 */
 /*@{*/
 
-#include "LBMachineUtil.h"
 #include <stdlib.h>
+#include "LBDatabase.h"
+#include "LBMachineUtil.h"
 
 inline void LBMachineUtil::IdleStart(double curWallTime)
 {
index 8908555c3b77922007cfd34d42fad6e202ef6ee7..44d8a10a5dc95dd6eee0ca14188bf740a77f3d53 100644 (file)
@@ -13,8 +13,6 @@
 #ifndef _LDMACHINEUTIL_H_
 #define _LDMACHINEUTIL_H_
 
-#include "charm++.h"
-
 class LBMachineUtil {
 public:
   LBMachineUtil();
index 223bfd5a737ff5270334181894f48df38c68e8b7..1648a912545dfd7eec15d7498bd1af626ca10395 100644 (file)
@@ -17,6 +17,7 @@
 #include "lbdb.h"
 #include "LBObj.h"
 #include "LBOM.h"
+#include "LBDatabase.h"
 #include "LBDBManager.h"
   
 #if CMK_LBDB_ON
@@ -188,6 +189,7 @@ extern "C" int LDRunningObject(LDHandle _h, LDObjHandle* _o)
 {
   LBDB *const db = (LBDB*)(_h.handle);
 
+  // same as LBDatabase::RunningObject
   if (db->ObjIsRunning()) {
     *_o = db->RunningObj();
     return 1;