nexml.t: Added a missing XML::Twig requirement.
[bioperl-live.git] / Bio / PopGen / GenotypeI.pm
blob589591950b7ade88e6e1d166efb07a41f6735ef3
1 # $Id $
3 # BioPerl module for Bio::PopGen::GenotypeI
5 # Please direct questions and support issues to <bioperl-l@bioperl.org>
7 # Cared for by Jason Stajich <jason-at-bioperl.org>
9 # Copyright Jason Stajich
11 # You may distribute this module under the same terms as perl itself
13 # POD documentation - main docs before the code
15 =head1 NAME
17 Bio::PopGen::GenotypeI - A marker and alleles for a specific individual
19 =head1 SYNOPSIS
21 Give standard usage here
23 =head1 DESCRIPTION
25 Describe the interface here
27 =head1 FEEDBACK
29 =head2 Mailing Lists
31 User feedback is an integral part of the evolution of this and other
32 Bioperl modules. Send your comments and suggestions preferably to
33 the Bioperl mailing list. Your participation is much appreciated.
35 bioperl-l@bioperl.org - General discussion
36 http://bioperl.org/wiki/Mailing_lists - About the mailing lists
38 =head2 Support
40 Please direct usage questions or support issues to the mailing list:
42 I<bioperl-l@bioperl.org>
44 rather than to the module maintainer directly. Many experienced and
45 reponsive experts will be able look at the problem and quickly
46 address it. Please include a thorough description of the problem
47 with code and data examples if at all possible.
49 =head2 Reporting Bugs
51 Report bugs to the Bioperl bug tracking system to help us keep track
52 of the bugs and their resolution. Bug reports can be submitted via
53 email or the web:
55 https://github.com/bioperl/bioperl-live/issues
57 =head1 AUTHOR - Jason Stajich
59 Email jason-at-bioperl.org
61 =head1 APPENDIX
63 The rest of the documentation details each of the object methods.
64 Internal methods are usually preceded with a _
66 =cut
69 # Let the code begin...
72 package Bio::PopGen::GenotypeI;
73 use strict;
76 use base qw(Bio::Root::RootI);
78 =head2 marker_name
80 Title : marker_name
81 Usage : my $name = $genotype->marker_name();
82 Function: Get the marker name for a genotype result
83 Returns : string
84 Args : none
87 =cut
89 sub marker_name{
90 my ($self) = @_;
91 $self->throw_not_implemented();
94 =head2 individual_id
96 Title : individual_id
97 Usage : my $indid = $genotype->individual_id();
98 Function: Gets the individual id associated with a genotype
99 This is effectively a back reference since we will typically
100 associate a genotype with an individual with an
101 individual HAS-A genotype relationship.
102 Returns : unique id string for an individual
103 Args : none
106 =cut
108 sub individual_id{
109 my ($self) = @_;
110 $self->throw_not_implemented();
114 =head2 annotation
116 Title : annotation
117 Usage : my $annotation_collection = $genotype->annotation;
118 Function: Get/set a Bio::AnnotationCollectionI for this genotype
119 Returns : Bio::AnnotationCollectionI object
120 Args : [optional set] Bio::AnnotationCollectionI object
123 =cut
125 sub annotation{
126 my ($self) = @_;
127 $self->throw_not_implemented();
130 =head2 get_Alleles
132 Title : get_Alleles
133 Usage : my @alleles = $genotype->get_Alleles();
134 Function: Get the alleles for a given marker and individual
135 Returns : array of alleles (strings in many implementations)
136 Args : none
139 =cut
141 sub get_Alleles{
142 my ($self) = @_;
143 $self->throw_not_implemented();