The AlleleInfo interface.
static unsigned int UNKNOWN
unsigned int getPloidy() const
Get the ploidy of the locus.
LocusInfo(const std::string &name, const unsigned int ploidy=DIPLOID)
Build a new LocusInfo object.
virtual ~LocusInfo()
Destroy the LocusInfo.
size_t getNumberOfAlleles() const
Get the number of alleles at this locus.
void clear()
Delete all alleles from the locus.
unsigned int getAlleleInfoKey(const std::string &id) const
Get the position of an AlleleInfo.
static unsigned int DIPLOID
const AlleleInfo & getAlleleInfoByKey(size_t key) const
Retrieve an AlleleInfo object of the LocusInfo.
static unsigned int HAPLOID
void addAlleleInfo(const AlleleInfo &allele)
Add an AlleleInfo to the LocusInfo.
static unsigned int HAPLODIPLOID
const AlleleInfo & getAlleleInfoById(const std::string &id) const
Retrieve an AlleleInfo object of the LocusInfo.
std::vector< AlleleInfo * > alleles_
const std::string & getName() const
Get the name of the locus.