Merge branch 'charm' of charmgit:charm into charm
[charm.git] / src / ck-com / NodeMulticast.h
1 /* #ifdef filippo */
2
3 /* #ifndef NODE_MULTICAST */
4 /* #define NODE_MULTICAST */
5 /* #include "ComlibManager.h" */
6
7 /* #if CMK_PERSISTENT_COMM */
8 /* #include "persistent.h" */
9 /* #endif */
10
11 /* #define MAX_PES_PER_NODE 16 */
12 /* #define PROCESSOR_MODE 0 */
13 /* #define ARRAY_MODE 1 */
14
15 /* class NodeMulticast : public CharmStrategy { */
16 /*     CkQ <CharmMessageHolder*> *messageBuf; */
17 /*     int pes_per_node, *nodeMap, numNodes, myRank, numCurDestPes; */
18 /*     int mode; //Array destinations or processor destinations */
19
20 /*     CkArrayID mAid; */
21 /*     CkVec<CkArrayIndexMax> *indexVec; */
22 /*     int NodeMulticastHandlerId, entryPoint, nelements; */
23     
24 /*     int npes, *pelist, NodeMulticastCallbackHandlerId; */
25 /*     int validRank[MAX_PES_PER_NODE]; */
26 /*     CkCallback cb; */
27 /*     long handler; */
28
29 /* #if CMK_PERSISTENT_COMM */
30 /*     PersistentHandle *persistentHandlerArray; */
31 /* #endif */
32
33 /*  public: */
34 /*     NodeMulticast(){} */
35 /*     void setDestinationArray(CkArrayID a, int nelem,  */
36 /*                           CkArrayIndexMax **idx, int ep); */
37
38 /*     //void setPeList(int npes, int *pelist, CkCallback callback); */
39 /*     //void setPeList(int npes, int *pelist, ComlibMulticastHandler handler); */
40     
41 /*     NodeMulticast(CkMigrateMessage *m) : CharmStrategy(m){} */
42 /*     void recvHandler(void *msg); */
43 /*     void insertMessage(CharmMessageHolder *msg); */
44 /*     void doneInserting(); */
45
46 /*     CkCallback getCallback() { return cb;} */
47 /*     //ComlibMulticastHandler getHandler() { return (ComlibMulticastHandler)handler;} */
48
49 /*     virtual void pup(PUP::er &p); */
50 /*     PUPable_decl(NodeMulticast); */
51 /* }; */
52 /* #endif */
53
54 /* #endif */