
00001 00007 #ifndef RING_MULTICAST_STRATEGY 00008 #define RING_MULTICAST_STRATEGY 00009 00010 #include "MulticastStrategy.h" 00011 00018 class RingMulticastStrategy: public MulticastStrategy { 00019 protected: 00020 00021 int isEndOfRing(int next_pe, int src_pe); 00022 00023 //Defining the two entries of the section multicast interface 00024 virtual void createObjectOnSrcPe(ComlibSectionHashObject *obj, int npes, ComlibMulticastIndexCount *pelist); 00025 00026 virtual void createObjectOnIntermediatePe(ComlibSectionHashObject *obj, int npes, ComlibMulticastIndexCount *counts, int src_pe); 00027 00028 public: 00029 //Array constructor 00030 RingMulticastStrategy(): MulticastStrategy() {} 00031 RingMulticastStrategy(CkMigrateMessage *m) : MulticastStrategy(m){} 00032 00033 PUPable_decl(RingMulticastStrategy); 00034 }; 00035 00036 #endif 00037
1.5.5