00001 #include "barrier.decl.h" 00002 00003 typedef void (*voidfn)(); 00004 extern CkGroupID barrierInit(void); 00005 00006 class FP : public CMessage_FP 00007 { 00008 public: 00009 voidfn fp; 00010 }; 00011 00012 class Barrier : public CBase_Barrier 00013 { 00014 int myPe, myLeft, myRight, myParent; 00015 CkGroupID myGroup; 00016 int kidscount; 00017 voidfn fnptr; 00018 00019 public: 00020 /* entry methods */ 00021 Barrier(void); 00022 void notify(void); 00023 void callFP(void); 00024 void reset(void); 00025 void atBarrier(FP *); 00026 };