1 | /*------------------------------------------------------------------------- |
2 | * |
3 | * geqo_pool.h |
4 | * pool representation in optimizer/geqo |
5 | * |
6 | * Portions Copyright (c) 1996-2019, PostgreSQL Global Development Group |
7 | * Portions Copyright (c) 1994, Regents of the University of California |
8 | * |
9 | * src/include/optimizer/geqo_pool.h |
10 | * |
11 | *------------------------------------------------------------------------- |
12 | */ |
13 | |
14 | /* contributed by: |
15 | =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= |
16 | * Martin Utesch * Institute of Automatic Control * |
17 | = = University of Mining and Technology = |
18 | * utesch@aut.tu-freiberg.de * Freiberg, Germany * |
19 | =*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*=*= |
20 | */ |
21 | |
22 | |
23 | #ifndef GEQO_POOL_H |
24 | #define GEQO_POOL_H |
25 | |
26 | #include "optimizer/geqo.h" |
27 | |
28 | |
29 | extern Pool *alloc_pool(PlannerInfo *root, int pool_size, int string_length); |
30 | extern void free_pool(PlannerInfo *root, Pool *pool); |
31 | |
32 | extern void random_init_pool(PlannerInfo *root, Pool *pool); |
33 | extern Chromosome *alloc_chromo(PlannerInfo *root, int string_length); |
34 | extern void free_chromo(PlannerInfo *root, Chromosome *chromo); |
35 | |
36 | extern void spread_chromo(PlannerInfo *root, Chromosome *chromo, Pool *pool); |
37 | |
38 | extern void sort_pool(PlannerInfo *root, Pool *pool); |
39 | |
40 | #endif /* GEQO_POOL_H */ |
41 | |