Raw content of Bio::ClusterI
# $Id: ClusterI.pm,v 1.3 2002/10/25 01:29:37 lapp Exp $
#
# BioPerl module for Bio::ClusterI
#
# Cared for by Shawn Hoon
#
# Copyright Shawn Hoon
#
# You may distribute this module under the same terms as perl itself
# POD documentation - main docs before the code
=head1 NAME
Bio::ClusterI - Cluster Interface
=head1 SYNOPSIS
# see the implementations of this interface for details but
# basically
my $cluster= $cluster->new(-description=>"POLYUBIQUITIN",
-members =>[$seq1,$seq2]);
my @members = $cluster->get_members();
my @sub_members = $cluster->get_members(-species=>"homo sapiens");
=head1 DESCRIPTION
This interface is the basic structure for a cluster of bioperl objects.
In this case it is up to the implementer to check arguments
and initialize whatever new object the implementing class is designed for.
=head1 FEEDBACK
=head2 Mailing Lists
User feedback is an integral part of the evolution of this and other
Bioperl modules. Send your comments and suggestions preferably to
the Bioperl mailing list. Your participation is much appreciated.
bioperl-l@bioperl.org - General discussion
http://bioperl.org/MailList.shtml - About the mailing lists
=head2 Reporting Bugs
Report bugs to the Bioperl bug tracking system to help us keep track
of the bugs and their resolution. Bug reports can be submitted via
email or the web:
bioperl-bugs@bioperl.org
http://bugzilla.bioperl.org/
=head1 AUTHOR - Shawn Hoon
Email shawnh@fugu-sg.org
=head1 CONTRIBUTORS
Additional contributors names and emails here
=head1 APPENDIX
The rest of the documentation details each of the object methods.
Internal methods are usually preceded with a _
=cut
# Let the code begin...
package Bio::ClusterI;
use vars qw(@ISA);
use strict;
use Bio::Root::RootI;
@ISA = qw(Bio::Root::RootI);
=head1 Implementation Specific Functions
These functions are the ones that a specific implementation must
define.
=head2 new
We dont mandate but encourage implementors to support at least the
following named parameters upon object initialization.
Argument Description
-------- -----------
-display_id the display ID or name for the cluster
-description the consensus description or name of the cluster
-members the array of objects belonging to the family
=cut
=head2 display_id
Title : display_id
Usage :
Function: Get the display name or identifier for the cluster
Returns : a string
Args :
=cut
sub display_id{
shift->throw_not_implemented();
}
=head2 description
Title : description
Usage : Bio::ClusterI->description("POLYUBIQUITIN")
Function: get/set for the consensus description of the cluster
Returns : the description string
Args : Optional the description string
=cut
sub description{
shift->throw_not_implemented();
}
=head2 size
Title : size
Usage : Bio::ClusterI->size();
Function: get/set for the size of the family,
calculated from the number of members
Returns : the size of the family
Args :
=cut
sub size {
shift->throw_not_implemented();
}
=head2 cluster_score
Title : cluster_score
Usage : $cluster ->cluster_score(100);
Function: get/set for cluster_score which
represent the score in which the clustering
algorithm assigns to this cluster.
Returns : a number
=cut
sub cluster_score{
shift->throw_not_implemented();
}
=head2 get_members
Title : get_members
Usage : Bio::ClusterI->get_members(($seq1, $seq2));
Function: retrieve the members of the family by some criteria, for
example :
$cluster->get_members(-species => 'homo sapiens');
Will return all members if no criteria are provided.
Returns : the array of members
Args :
=cut
sub get_members {
shift->throw_not_implemented();
}
1;