Program Listing for File debug.hpp¶
↰ Return to documentation for file (fwdpp/debug.hpp)
#ifndef FWDPP_DEBUG_HPP
#define FWDPP_DEBUG_HPP
#include <algorithm>
#include <numeric>
#include <fwdpp/forward_types.hpp>
#include <fwdpp/type_traits.hpp>
#include "internal/debug_details.hpp"
namespace fwdpp
{
namespace debug
{
template <typename GenomeContainerType>
void
validate_sum_haploid_genome_counts(const GenomeContainerType &haploid_genomes,
const uint_t expected_sum)
{
detail::validate_sum_haploid_genome_counts(haploid_genomes, expected_sum);
}
template <typename MutationContainerType, typename iterator>
void
validate_mutation_key_ranges(const MutationContainerType &mutations,
const iterator beg, const iterator end)
{
detail::validate_mutation_key_ranges(mutations, beg, end);
}
template <typename HaploidGenomeType>
void
haploid_genome_is_extant(const HaploidGenomeType &haploid_genome)
{
detail::haploid_genome_is_extant(haploid_genome);
}
template <typename HaploidGenomeType, typename MutationContainerType>
void
haploid_genome_is_sorted(const HaploidGenomeType &g,
const MutationContainerType &mutations)
{
detail::haploid_genome_is_sorted(g, mutations);
}
template <typename HaploidGenomeType, typename MutationContainerType>
void
haploid_genome_data_valid(const HaploidGenomeType &g,
const MutationContainerType &mutations,
const std::vector<uint_t> &mutcounts)
{
detail::haploid_genome_data_valid(g, mutations, mutcounts);
}
template <typename PopulationType>
void
validate_pop_data(const PopulationType &pop)
{
detail::validate_pop_data(pop);
}
template <typename MutationType>
void
check_mutation_neutrality(const MutationType &mutation,
const bool expected_neutrality)
{
detail::check_mutation_neutrality(mutation, expected_neutrality);
}
template <typename PopulationType>
void
all_haploid_genomes_extant(const PopulationType &pop)
{
detail::all_haploid_genomes_extant(pop,
typename PopulationType::popmodel_t());
}
} // namespace debug
} // namespace fwdpp
#endif