40 #ifndef _ANALYZEDLOCI_H_
41 #define _ANALYZEDLOCI_H_
50 #include "../LocusInfo.h"
51 #include "../GeneralExceptions.h"
The AlleleInfo interface.
std::vector< size_t > getNumberOfAlleles() const
Get the number of alleles at each locus.
size_t getNumberOfLoci() const
Get the number of loci.
unsigned int getPloidyByLocusName(const std::string &locus_name) const
Get the ploidy of a locus by name.
const LocusInfo & getLocusInfoByName(const std::string &locus_name) const
Get a LocusInfo by name.
AnalyzedLoci(size_t number_of_loci)
Build a void AnalyzedLoci with a specific number of loci.
const LocusInfo & getLocusInfoAtPosition(size_t locus_position) const
Get a LocusInfo by its position.
unsigned int getPloidyByLocusPosition(size_t locus_position) const
Get the ploidy of a locus by its position.
std::vector< LocusInfo * > loci_
~AnalyzedLoci()
Destroy the AnalyzedLoci.
void addAlleleInfoByLocusPosition(size_t locus_position, const AlleleInfo &allele)
Add an AlleleInfo to a LocusInfo by its position.
size_t getLocusInfoPosition(const std::string &locus_name) const
Get the position of a LocusInfo.
void addAlleleInfoByLocusName(const std::string &locus_name, const AlleleInfo &allele)
Add an AlleleInfo to a LocusInfo by LocusInfo name.
void setLocusInfo(size_t locus_position, const LocusInfo &locus)
Set a LocusInfo.