Antkeeper  0.0.1
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
phenome.hpp
Go to the documentation of this file.
1 /*
2  * Copyright (C) 2023 Christopher J. Howard
3  *
4  * This file is part of Antkeeper source code.
5  *
6  * Antkeeper source code is free software: you can redistribute it and/or modify
7  * it under the terms of the GNU General Public License as published by
8  * the Free Software Foundation, either version 3 of the License, or
9  * (at your option) any later version.
10  *
11  * Antkeeper source code is distributed in the hope that it will be useful,
12  * but WITHOUT ANY WARRANTY; without even the implied warranty of
13  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14  * GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License
17  * along with Antkeeper source code. If not, see <http://www.gnu.org/licenses/>.
18  */
19 
20 #ifndef ANTKEEPER_GAME_ANT_PHENOME_HPP
21 #define ANTKEEPER_GAME_ANT_PHENOME_HPP
22 
26 #include "game/ant/phene/diet.hpp"
27 #include "game/ant/phene/egg.hpp"
28 #include "game/ant/phene/eyes.hpp"
32 #include "game/ant/phene/head.hpp"
33 #include "game/ant/phene/larva.hpp"
34 #include "game/ant/phene/legs.hpp"
42 #include "game/ant/phene/sting.hpp"
43 #include "game/ant/phene/waist.hpp"
44 #include "game/ant/phene/wings.hpp"
45 #include "game/ant/genome.hpp"
46 #include "game/ant/caste.hpp"
47 
48 namespace ant {
49 
53 struct phenome
54 {
61  phenome(const genome& genome, caste caste);
62 
64  phenome();
65 
69  const phene::diet* diet;
70  const phene::egg* egg;
71  const phene::eyes* eyes;
75  const phene::head* head;
77  const phene::legs* legs;
88 };
89 
90 } // namespace ant
91 
92 #endif // ANTKEEPER_GAME_ANT_PHENOME_HPP
nest_site
Colony nest site phene.
founding_mode
Colony founding mode phene.
Definition: caste.hpp:25
caste
Ant caste enumerations.
Definition: caste.hpp:33
Complete set of ant genes.
Definition: genome.hpp:52
Ant antennae phene.
Ant body size phene.
Ant cocoon phene.
Ant diet phene.
Definition: phene/diet.hpp:30
Ant egg phene.
Definition: phene/egg.hpp:32
Ant eyes phene.
Definition: phene/eyes.hpp:34
Ant foraging time phene.
Ant gaster phene.
Ant head phene.
Definition: phene/head.hpp:35
Ant larva phene.
Definition: phene/larva.hpp:32
Ant legs phene.
Definition: phene/legs.hpp:34
Ant mandibles phene.
Ant mesosoma phene.
Ant ocelli phene.
Ant pigmentation phene.
Ant pilosity phene.
Ant surface sculpturing phene.
Trait that describes the sting of an ant.
Definition: phene/sting.hpp:32
Trait that describes the waist (petiole plus postpetiole) of an ant.
Definition: phene/waist.hpp:34
Ant wings phene.
Definition: phene/wings.hpp:32
Complete set of ant phenes.
Definition: phenome.hpp:54
phenome()
Constructs an empty phenome.
Definition: phenome.cpp:88
const phene::legs * legs
Definition: phenome.hpp:77
const phene::egg * egg
Definition: phenome.hpp:70
const phene::mandibles * mandibles
Definition: phenome.hpp:78
const phene::pigmentation * pigmentation
Definition: phenome.hpp:82
const phene::body_size * body_size
Definition: phenome.hpp:67
const phene::founding_mode * founding_mode
Definition: phenome.hpp:73
const phene::pilosity * pilosity
Definition: phenome.hpp:83
const phene::sting * sting
Definition: phenome.hpp:85
const phene::foraging_time * foraging_time
Definition: phenome.hpp:72
const phene::eyes * eyes
Definition: phenome.hpp:71
const phene::mesosoma * mesosoma
Definition: phenome.hpp:79
const phene::diet * diet
Definition: phenome.hpp:69
const phene::cocoon * cocoon
Definition: phenome.hpp:68
const phene::antennae * antennae
Definition: phenome.hpp:66
const phene::nest_site * nest_site
Definition: phenome.hpp:80
const phene::head * head
Definition: phenome.hpp:75
const phene::ocelli * ocelli
Definition: phenome.hpp:81
const phene::sculpturing * sculpturing
Definition: phenome.hpp:84
const phene::waist * waist
Definition: phenome.hpp:86
const phene::gaster * gaster
Definition: phenome.hpp:74
const phene::larva * larva
Definition: phenome.hpp:76
const phene::wings * wings
Definition: phenome.hpp:87