renamed Set.h to ckset.h
[charm.git] / src / ck-ldb / elements.h
1 /*****************************************************************************
2  * $Source$
3  * $Author$
4  * $Date$
5  * $Revision$
6  *****************************************************************************/
7
8 /**
9 ***  Copyright (c) 1995, 1996, 1997, 1998, 1999, 2000 by
10 ***  The Board of Trustees of the University of Illinois.
11 ***  All rights reserved.
12 **/
13
14 /**
15  * \addtogroup CkLdb
16 */
17 /*@{*/
18
19 #ifndef ELEMENTS_DEFS_H
20 #define ELEMENTS_DEFS_H
21
22 #include "converse.h"
23 #include "lbdb.h"
24
25 #include "ckset.h"
26 #include "cklists.h"
27
28 class minHeap;
29 class maxHeap;
30
31 class InfoRecord
32 {
33 public:
34    double load;
35 //   LDOMid omID;
36 //   LDObjid id; 
37    int Id; // should replace other Ids.
38 };
39
40
41 class computeInfo : public InfoRecord
42 {
43 public: 
44    /*   int computeId; replaced by Id */
45 //   LDObjHandle handle;
46    LDObjid  id;
47    int processor; // caller to ReBalancer MAY leave this field -1, 
48    int oldProcessor; // stores the current assignment of the compute object.
49    int migratable;
50    CkVec<int>  sendmessages;
51    CkVec<int>  recvmessages;
52 };
53
54 class processorInfo: public InfoRecord
55 {
56 public:
57    // int processorNum; replaced by inherited "Id".
58    double backgroundLoad; // background work pre-assigned to the processor.
59    double computeLoad;    //load due to computes. The total load is computed
60                           // by adding these two.                    
61    int pe_speed;
62    double utilization;
63    CmiBool available;
64    Set *computeSet; // caller to ReBalancer should leave this field NULL.
65 };
66
67 #endif
68
69 /*@}*/