
00001 00009 #ifndef MULTIRING_MULTICAST_STRATEGY 00010 #define MULTIRING_MULTICAST_STRATEGY 00011 00012 #include "MulticastStrategy.h" 00013 00020 class MultiRingMulticastStrategy: public MulticastStrategy { 00021 00022 protected: 00023 00025 virtual void createObjectOnSrcPe(ComlibSectionHashObject *obj, int npes, ComlibMulticastIndexCount *pelist); 00026 00028 virtual void createObjectOnIntermediatePe(ComlibSectionHashObject *obj, int npes, ComlibMulticastIndexCount *counts, int srcpe); 00029 00031 virtual int needSorting() { return 1; } 00032 00033 public: 00034 //Array constructor 00035 MultiRingMulticastStrategy(): MulticastStrategy() {} 00036 MultiRingMulticastStrategy(CkMigrateMessage *m): MulticastStrategy(m) {} 00037 00038 00039 PUPable_decl(MultiRingMulticastStrategy); 00040 }; 00041 00042 #endif 00043
1.5.5