Fixing pipe bcast
authorFilippo Gioachin <gioachin@illinois.edu>
Mon, 31 Jan 2005 23:22:09 +0000 (23:22 +0000)
committerFilippo Gioachin <gioachin@illinois.edu>
Mon, 31 Jan 2005 23:22:09 +0000 (23:22 +0000)
src/ck-com/PipeBroadcastStrategy.C
src/ck-com/PipeBroadcastStrategy.h

index 7a5fc8d5712cd462e790e8189e6e79287d523d56..0f714e4518446324e897819657f83a2f5310a8aa 100644 (file)
@@ -97,10 +97,17 @@ void PipeBroadcastStrategy::pup(PUP::er &p){
 
   if (p.isUnpacking()) {
     //propagateHandle = CmiRegisterHandler((CmiHandler)propagate_handler);
+
     ComlibPrintf("[%d] registered handler single to %d\n",CmiMyPe(),CsvAccess(pipeBcastPropagateHandle));
     messageBuf = new CkQ<CharmMessageHolder *>;
     converseStrategy->setHigherLevel(this);
   }
 }
 
+
+void PipeBroadcastStrategy::beginProcessing(int x){ 
+  CsvAccess(pipeBcastPropagateHandle) = CmiRegisterHandler((CmiHandler)propagate_handler);
+
+}
+
 //PUPable_def(PipeBroadcastStrategy);
index 5831347c482d2de142fd4179cbe973c11aa1384a..5be6ec877a5136e92d4d80e9dc200737fb28cfb8 100644 (file)
@@ -21,6 +21,8 @@ class PipeBroadcastStrategy : public CharmStrategy {
   void doneInserting();
   void conversePipeBcast(envelope *env, int size);
 
+  void beginProcessing(int x);
+
   void deliverer(char *msg, int dim);
 
   virtual void pup(PUP::er &p);