1 | /*------------------------------------------------------------------------- |
2 | * |
3 | * geqo_gene.h |
4 | * genome 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_gene.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_GENE_H |
24 | #define GEQO_GENE_H |
25 | |
26 | #include "nodes/nodes.h" |
27 | |
28 | /* we presume that int instead of Relid |
29 | is o.k. for Gene; so don't change it! */ |
30 | typedef int Gene; |
31 | |
32 | typedef struct Chromosome |
33 | { |
34 | Gene *string; |
35 | Cost worth; |
36 | } Chromosome; |
37 | |
38 | typedef struct Pool |
39 | { |
40 | Chromosome *data; |
41 | int size; |
42 | int string_length; |
43 | } Pool; |
44 | |
45 | #endif /* GEQO_GENE_H */ |
46 | |