fixing for ft
[charm.git] / src / conv-com / treerouter.h
1 /**
2    @addtogroup ConvComlibRouter
3    @{
4    @file
5 */
6
7
8 #ifndef TREEROUTER_H
9 #define TREEROUTER_H
10 #include "petable.h"
11
12 class TreeRouter : public Router
13 {
14   private:
15         PeTable *PeTree;
16         int numExpect, *gpes;
17         int *totarray;
18         int MyPe, NumPes, numChildren, recvCount, recvExpected;
19         void InitVars();
20         void DownStreamMsg(comID id);
21         void LocalProcMsg(comID);
22 #if CMK_COMLIB_USE_VECTORIZE
23         PTvectorlist SortBufferUp(comID, int);
24         PTvectorlist SortBufferDown(comID, int, int);
25 #else
26         char * SortBufferUp(comID, int, int *);
27         char * SortBufferDown(comID, int, int *, int);
28 #endif
29   public:
30         TreeRouter(int, int, Strategy*);
31         ~TreeRouter();
32         void NumDeposits(comID, int);
33         void EachToAllMulticast(comID, int , void *, int);
34         void EachToManyMulticast(comID, int , void *, int, int *, int);
35         void RecvManyMsg(comID, char *);
36         void ProcManyMsg(comID, char *);
37         void DummyEP(comID, int );
38         void SetMap(int *);
39 };
40
41 #endif
42         
43 /*@}*/