]> git.lizzy.rs Git - libscout.git/blob - scout.h
fc625f2072941130927186248b952c4f931e7aca
[libscout.git] / scout.h
1 #ifndef __LIBSCOUT__
2 #define __LIBSCOUT__
3
4 struct scnode {
5         struct scway *way;
6         void *dat;
7 };
8
9 struct scway {
10         const struct scnode *lto;
11         struct scway *alt;
12         int len;
13 };
14
15 struct scwaypoint {
16         const struct scnode *nod;
17         const struct scway *way;
18         struct scwaypoint *nxt;
19         int len;
20 };
21
22 struct scway *scaddway(struct scnode *, const struct scnode *, int);
23 struct scwaypoint *scout(const struct scnode *, const struct scnode *, struct scwaypoint *);
24
25 #ifdef __LIBSCOUT_INTERNAL__
26
27 struct scwaypoint *__scallocwayp(const struct scnode *, const struct scway *);
28 struct scwaypoint *__scstackfindgetend(struct scwaypoint *, const struct scway *);
29 void __scstackfree(struct scwaypoint *);
30 int __scstackgetlen(struct scwaypoint *);
31
32 #endif // __LIBSCOUT_INTERNAL__
33
34 #endif // __LIBSCOUT__