36 #ifndef _POPULATIONCONFIGGENERATORIMPLEMENTATION_HPP_
37 #define _POPULATIONCONFIGGENERATORIMPLEMENTATION_HPP_
40 #include "PopulationConfigGenerator.hpp"
41 #include "Trajectory.hpp"
77 virtual size_t generation_count()
const;
78 virtual Population::Configs population_configs(
size_t generation_index)
const;
82 virtual std::string class_name()
const {
return "PopulationConfigGenerator_File";}
83 virtual Parameters parameters()
const;
84 virtual void configure(
const Parameters& parameters,
const Registry& registry);
88 std::string filename_;
89 std::vector<Population::Configs> population_configs_;
128 : PopulationConfigGenerator(
id)
131 virtual Population::Configs population_configs(
size_t generation_index)
const;
135 virtual std::string class_name()
const {
return "PopulationConfigGenerator_ConstantSize";}
136 virtual Parameters parameters()
const;
137 virtual void configure(
const Parameters& parameters,
const Registry& registry);
140 size_t population_size_;
151 size_t population_index_from;
152 size_t population_index_to;
153 TrajectoryPtr trajectory;
157 std::string configuration()
const;
161 typedef std::vector<MigrationRateTrajectoryInfo> MigrationRateTrajectoryInfos;
182 virtual Population::Configs population_configs(
size_t generation_index)
const;
186 virtual Parameters parameters()
const;
187 virtual void configure(
const Parameters& parameters,
const Registry& registry);
188 virtual void write_child_configurations(std::ostream& os, std::set<std::string>& ids_written)
const;
192 TrajectoryPtr population_size_trajectory_;
193 TrajectoryPtr migration_rate_trajectory_default_;
194 MigrationRateTrajectoryInfos migration_rate_trajectory_infos_;
196 typedef std::vector<TrajectoryPtrs> MigrationRateTrajectories;
197 MigrationRateTrajectories migration_rate_trajectories_;
199 virtual void initialize_default_trajectories() = 0;
203 void initialize_trajectories();
246 virtual std::string class_name()
const {
return "PopulationConfigGenerator_LinearSteppingStone";}
250 virtual void initialize_default_trajectories();
292 virtual std::string class_name()
const {
return "PopulationConfigGenerator_Island";}
296 virtual void initialize_default_trajectories();
300 #endif // _POPULATIONCONFIGGENERATORIMPLEMENTATION_HPP_