NAMD
elements.h
Go to the documentation of this file.
1 
7 #ifndef ELEMENTS_DEFS_H
8 #define ELEMENTS_DEFS_H
9 
10 #include <lbdb.h>
11 #include "Set.h"
12 
13 class InfoRecord {
14 public:
15  double load;
16  int Id; // should replace other Ids.
17 };
18 
19 
20 class computeInfo : public InfoRecord {
21 public:
22  /* int computeId; replaced by Id */
23  int patch1, patch2;
24  int processor; // caller to ReBalancer MAY leave this field -1,
25  int oldProcessor; // stores the current assignment of the compute object.
26  LDObjHandle handle;
27 };
28 
29 class patchInfo : public InfoRecord {
30 public:
31  int processor;
32  int numAtoms;
33  IRSet proxiesOn; // caller to ReBalancer should fill in the forced proxies
34 };
35 
36 class processorInfo: public InfoRecord {
37 public:
38  // int processorNum; replaced by inherited "Id".
39  double backgroundLoad; // background work pre-assigned to the processor.
40  double idleTime; // idle time
41  double computeLoad; //load due to computes. The total load is computed
42  // by adding these two.
43  // Added 10/22/01: indicate if this processor will migrate its objs.
44  bool available;
45  LargeIRSet patchSet; // caller to ReBalancer should leave this field NULL.
46  LargeIRSet proxies; // caller to ReBalancer should fill in the forced proxies
47  LargeIRSet computeSet; // caller to ReBalancer should leave this field NULL.
48 
49  // Added 4-29-98: Array to keep track of number of computes that are using
50  // each proxy on a processor
51  // unsigned char *proxyUsage;
52 public:
54 };
55 
56 #endif
int patch1
Definition: elements.h:23
LargeIRSet proxies
Definition: elements.h:46
int Id
Definition: elements.h:16
LargeIRSet patchSet
Definition: elements.h:45
int processor
Definition: elements.h:24
int oldProcessor
Definition: elements.h:25
double idleTime
Definition: elements.h:40
int patch2
Definition: elements.h:23
Definition: Set.h:25
LargeIRSet computeSet
Definition: elements.h:47
int numAtoms
Definition: elements.h:32
double load
Definition: elements.h:15
LDObjHandle handle
Definition: elements.h:26
Definition: Set.h:46
IRSet proxiesOn
Definition: elements.h:33
double computeLoad
Definition: elements.h:41
int processor
Definition: elements.h:31
double backgroundLoad
Definition: elements.h:39
bool available
Definition: elements.h:44