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 {
103 OrbObject(
int tag,
int np) :
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;
179typedef int (*ComparatorFn) (
const void *,
const void *);
Definition MapStructures.h:170
hold information needed by the load balancer for each TreePiece.
Definition MapStructures.h:121
structure for sorting TreePieces in one dimension for load balancing.
Definition MapStructures.h:36
float load
load of this TreePiece
Definition MapStructures.h:40
int owner
Index within TreePiece array or stats->objData array of this TreePiece.
Definition MapStructures.h:38
float position
Centroid of this TreePiece in a particular dimension.
Definition MapStructures.h:42
data for Orb3D load balancing.
Definition MapStructures.h:80
Vector3D< float > centroid
Spacial location of TreePiece.
Definition MapStructures.h:85
int lbindex
index into LB stats->objData
Definition MapStructures.h:83
int numParticles
Particles in the TreePiece.
Definition MapStructures.h:87