1 /* This file is part of the Spring engine (GPL v2 or later), see LICENSE.html */
2 
3 #ifndef QTPFS_ENUMS_HDR
4 #define QTPFS_ENUMS_HDR
5 
6 namespace QTPFS {
7 	enum {
8 		REL_RECT_INTERIOR_NODE = 0, // rect is in interior of node
9 		REL_RECT_EXTERIOR_NODE = 1, // rect is in exterior (~interior) of node
10 		REL_NODE_INTERIOR_RECT = 2, // node is in interior of rect
11 		REL_NODE_OVERLAPS_RECT = 3, // rect and node overlap partially
12 	};
13 	enum {
14 		REL_NGB_EDGE_T = 1, // top-edge neighbor
15 		REL_NGB_EDGE_R = 2, // right-edge neighbor
16 		REL_NGB_EDGE_B = 4, // bottom-edge neighbor
17 		REL_NGB_EDGE_L = 8, // left-edge neighbor
18 	};
19 	enum {
20 		NODE_STATE_OPEN   = 0,
21 		NODE_STATE_CLOSED = 1,
22 		NODE_STATE_OFFSET = 2,
23 	};
24 	enum {
25 		NODE_DIST_EUCLIDEAN = 0,
26 		NODE_DIST_MANHATTAN = 1,
27 	};
28 	enum {
29 		NODE_IDX_TL = 0,
30 		NODE_IDX_TR = 1,
31 		NODE_IDX_BR = 2,
32 		NODE_IDX_BL = 3,
33 	};
34 	enum {
35 		NODE_PATH_COST_F = 0,
36 		NODE_PATH_COST_G = 1,
37 		NODE_PATH_COST_H = 2,
38 	};
39 	enum {
40 		PATH_SEARCH_ASTAR    = 0,
41 		PATH_SEARCH_DIJKSTRA = 1,
42 	};
43 	enum {
44 		PATH_TYPE_TEMP = 0,
45 		PATH_TYPE_LIVE = 1,
46 		PATH_TYPE_DEAD = 2,
47 	};
48 }
49 
50 #endif
51 
52