1 #ifndef _MAP_STRUCTURES_H_
2 #define _MAP_STRUCTURES_H_
10 #include "TaggedVector3D.h"
11 #include "OrientedBox.h"
19 #define LEFT_PARTITION 0
20 #define RIGHT_PARTITION 1
21 #define INVALID_PARTITION -1
44 Event(
float pos,
float ld,
int o) :
58 bool operator<(
const Event &e)
const {
62 bool operator<=(
const Event &e)
const {
66 bool operator>=(
const Event &e)
const {
110 void pup(PUP::er &p){
124 Vector3D<float> centroid;
133 bool operator<(
const TPObject &t)
const{
134 return load < t.load;
155 bool operator<(
const Processor &p)
const{
156 return load > p.load;
173 CkVec<int> procRanks;
174 #ifdef PRINT_BOUNDING_BOXES
175 OrientedBox<float> box;
179 typedef int (*ComparatorFn) (
const void *,
const void *);
180 #endif // _MAP_STRUCTURES_H_
hold information needed by the load balancer for each TreePiece.
Definition: MapStructures.h:121
Definition: MapStructures.h:170
int numParticles
Particles in the TreePiece.
Definition: MapStructures.h:87
Vector3D< float > centroid
Spacial location of TreePiece.
Definition: MapStructures.h:85
float load
load of this TreePiece
Definition: MapStructures.h:40
structure for sorting TreePieces in one dimension for load balancing.
Definition: MapStructures.h:36
data for Orb3D load balancing.
Definition: MapStructures.h:80
float position
Centroid of this TreePiece in a particular dimension.
Definition: MapStructures.h:42
int lbindex
index into LB stats->objData
Definition: MapStructures.h:83
Hold per processor information for load balancing.
Definition: MapStructures.h:149
int owner
Index within TreePiece array or stats->objData array of this TreePiece.
Definition: MapStructures.h:38