36 #ifndef _POPULATIONCONFIGGENERATORIMPLEMENTATION_HPP_
37 #define _POPULATIONCONFIGGENERATORIMPLEMENTATION_HPP_
40 #include "PopulationConfigGenerator.hpp"
41 #include "Trajectory.hpp"
77 virtual Population::Configs population_configs(
size_t generation_index)
const;
81 virtual std::string class_name()
const {
return "PopulationConfigGenerator_File";}
82 virtual Parameters parameters()
const;
83 virtual void configure(
const Parameters& parameters,
const Registry& registry);
87 std::string filename_;
88 std::vector<Population::Configs> population_configs_;
127 : PopulationConfigGenerator(
id)
130 virtual Population::Configs population_configs(
size_t generation_index)
const;
134 virtual std::string class_name()
const {
return "PopulationConfigGenerator_ConstantSize";}
135 virtual Parameters parameters()
const;
136 virtual void configure(
const Parameters& parameters,
const Registry& registry);
139 size_t population_size_;
150 size_t population_index_from;
151 size_t population_index_to;
152 TrajectoryPtr trajectory;
156 std::string configuration()
const;
160 typedef std::vector<MigrationRateTrajectoryInfo> MigrationRateTrajectoryInfos;
181 virtual Population::Configs population_configs(
size_t generation_index)
const;
185 virtual Parameters parameters()
const;
186 virtual void configure(
const Parameters& parameters,
const Registry& registry);
187 virtual void write_child_configurations(std::ostream& os, std::set<std::string>& ids_written)
const;
191 TrajectoryPtr population_size_trajectory_;
192 TrajectoryPtr migration_rate_trajectory_default_;
193 MigrationRateTrajectoryInfos migration_rate_trajectory_infos_;
195 typedef std::vector<TrajectoryPtrs> MigrationRateTrajectories;
196 MigrationRateTrajectories migration_rate_trajectories_;
198 virtual void initialize_default_trajectories() = 0;
202 void initialize_trajectories();
245 virtual std::string class_name()
const {
return "PopulationConfigGenerator_LinearSteppingStone";}
249 virtual void initialize_default_trajectories();
291 virtual std::string class_name()
const {
return "PopulationConfigGenerator_Island";}
295 virtual void initialize_default_trajectories();
299 #endif // _POPULATIONCONFIGGENERATORIMPLEMENTATION_HPP_