105 AyStar_CalculateG* CalculateG; |
105 AyStar_CalculateG* CalculateG; |
106 AyStar_CalculateH* CalculateH; |
106 AyStar_CalculateH* CalculateH; |
107 AyStar_GetNeighbours* GetNeighbours; |
107 AyStar_GetNeighbours* GetNeighbours; |
108 AyStar_EndNodeCheck* EndNodeCheck; |
108 AyStar_EndNodeCheck* EndNodeCheck; |
109 AyStar_FoundEndNode* FoundEndNode; |
109 AyStar_FoundEndNode* FoundEndNode; |
110 |
110 |
111 /* These are completely untouched by AyStar, they can be accesed by |
111 /* These are completely untouched by AyStar, they can be accesed by |
112 * the application specific routines to input and output data. |
112 * the application specific routines to input and output data. |
113 * user_path should typically contain data about the resulting path |
113 * user_path should typically contain data about the resulting path |
114 * afterwards, user_target should typically contain information about |
114 * afterwards, user_target should typically contain information about |
115 * what where looking for, and user_data can contain just about |
115 * what where looking for, and user_data can contain just about |
116 * everything */ |
116 * everything */ |
117 void *user_path; |
117 void *user_path; |
118 void *user_target; |
118 void *user_target; |
119 uint user_data[10]; |
119 uint user_data[10]; |
120 |
120 |
121 /* How many loops are there called before AyStarMain_Main gives |
121 /* How many loops are there called before AyStarMain_Main gives |
122 * control back to the caller. 0 = until done */ |
122 * control back to the caller. 0 = until done */ |
123 byte loops_per_tick; |
123 byte loops_per_tick; |
124 /* If the g-value goes over this number, it stops searching |
124 /* If the g-value goes over this number, it stops searching |
125 * 0 = infinite */ |
125 * 0 = infinite */ |
126 uint max_path_cost; |
126 uint max_path_cost; |
127 /* The maximum amount of nodes that will be expanded, 0 = infinite */ |
127 /* The maximum amount of nodes that will be expanded, 0 = infinite */ |
128 uint max_search_nodes; |
128 uint max_search_nodes; |
129 |
129 |
130 /* These should be filled with the neighbours of a tile by |
130 /* These should be filled with the neighbours of a tile by |
131 * GetNeighbours */ |
131 * GetNeighbours */ |
132 AyStarNode neighbours[12]; |
132 AyStarNode neighbours[12]; |
133 byte num_neighbours; |
133 byte num_neighbours; |