36 #ifndef _MUTATIONGENERATORIMPLEMENTATION_HPP_
37 #define _MUTATIONGENERATORIMPLEMENTATION_HPP_
40 #include "MutationGenerator.hpp"
41 #include "Trajectory.hpp"
81 : MutationGenerator(
id), locus_(locus), mu_(mu)
84 virtual MutationInfos generate_mutations(
const Population& population,
85 size_t generation_index,
86 size_t population_index)
const;
89 virtual std::string class_name()
const {
return "MutationGenerator_SingleLocus";}
90 virtual Parameters parameters()
const;
91 virtual void configure(
const Parameters& parameters,
const Registry& registry);
92 virtual void write_child_configurations(std::ostream& os, std::set<std::string>& ids_written)
const;
131 TrajectoryPtr mutation_rate;
135 TrajectoryPtr _mutation_rate = TrajectoryPtr())
136 : locus(_locus), length(_length), mutation_rate(_mutation_rate)
139 std::string configuration()
const;
142 typedef std::vector<RegionInfo> RegionInfos;
145 const RegionInfos& region_infos = RegionInfos())
146 : MutationGenerator(id), region_infos_(region_infos)
149 virtual MutationInfos generate_mutations(
const Population& population,
150 size_t generation_index,
151 size_t population_index)
const;
154 virtual std::string class_name()
const {
return "MutationGenerator_Regions";}
155 virtual Parameters parameters()
const;
156 virtual void configure(
const Parameters& parameters,
const Registry& registry);
157 virtual void write_child_configurations(std::ostream& os, std::set<std::string>& ids_written)
const;
161 RegionInfos region_infos_;
165 #endif // _MUTATIONGENERATORIMPLEMENTATION_HPP_