changa 3.5
Loading...
Searching...
No Matches
codes.h
1/* values returned by compute object to tree walk object */
2#ifndef CODES_H
3#define CODES_H
4
5#define KEEP 0 // descend further down this path
6#define KEEP_REMOTE_BUCKET 6 // request particles of a remote bucket
7#define KEEP_LOCAL_BUCKET 7 // directly access particles of a local bucket
8#define DUMP 1 // no need to descend down this path
9#define ERROR 2
10
11/* values, in addition to the ones above
12 * returned by optimzation object to compute object */
13#define NOP 3
14#define COMPUTE 4
15// opt. object doesn't know enough about the context of the computation
16// this happens when we have to check whether a cached node's ancestors
17// haven't already been involved in a computation - an ancestor check must
18// be performed, based on which the compute obj. makes a decision
19#define DEFER 5
20
21#define INTERSECT -1
22#define CONTAIN 1
23#define NO_INTERSECT 0
24
25enum WalkType {TopDown, LocalTarget, BottomUp, BucketIterator, InvalidWalk};
26enum ComputeType {Gravity, Prefetch, List, BucketEwald, Smooth, ReSmooth,
27 InvalidCompute};
28
29enum OptType {Local, Remote, Pref, Double, PushGravity, InvalidOpt};
30
31#ifdef BIGKEYS
32#define INTERLIST_LEVELS 128
33#else
34#define INTERLIST_LEVELS 64
35#endif
36
37#define NUM_NODE_TYPES 11
38
39// debug
40#ifdef CHANGA_REFACTOR_WALKCHECK
41#define CHECK_INDEX 1
42#define CHECK_BUCKET 16
43#endif
44
45#define TEST_BUCKET 0
46#define TEST_TP 0
47#endif // CODES_H