NAME - EEDB::Feature
SYNOPSIS
DESCRIPTION
CONTACT
Jessica Severin <severin@gsc.riken.jp>
LICENSE
* Software License Agreement (BSD License)
* EdgeExpressDB [eeDB] system
* copyright (c) 2007-2009 Jessica Severin RIKEN OSC
* All rights reserved.
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions are met:
* * Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* * Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* * Neither the name of Jessica Severin RIKEN OSC nor the
* names of its contributors may be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS ''AS IS'' AND ANY
* EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL COPYRIGHT HOLDERS BE LIABLE FOR ANY
* DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
* ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
APPENDIX
The rest of the documentation details each of the object methods. Internal methods are usually preceded with a _
fetch_all_by_chrom
Description : uses an EEDB::Chrom object to stream all features in sorted order by chrom start,end
Parameter[1] : EEDB::Chrom object with database connection
Parameter[2...] : optional EEDB::FeatureSource(s) to limit the feature stream
Returntype : array reference of EEDB::Feature objects
Exceptions : die if anything other than EEDB::FeatureSource(s) are passed in the optional parameter list
stream_all
Description: stream all features out of database with a given set of source filters
Arg (1) : $database (MQdb::Database)
Arg (2...) : hash named filter parameters.
sources=>[$fsrc1, $fsrc2,$fsrc3], instances of EEDB::FeatureSource
Returntype : a DBStream instance
Exceptions : none
stream_by_chrom
Description : uses an EEDB::Chrom object to stream all features in sorted order by chrom start,end
Useful for feeding features into EEDB::Tools::OverlapCompare2
Arg [1] : EEDB::Chrom object with database connection
Arg (2...) : hash named filter parameters.
sources=>[$fsrc1, $fsrc2,$fsrc3], instances of EEDB::FeatureSource
Returntype : MQdb::DBStream object
Exceptions : die if anything other than EEDB::FeatureSource(s) are passed in the optional parameter list
Example :
my $chroms = EEDB::Chrom->fetch_all_by_assembly($assembly);
foreach my $chrom (@$chroms) {
my $stream = EEDB::Feature->stream_by_chrom($chrom, sources=>[$fsrc1, $fsrc2]);
my $feature1 = $stream1->next_in_stream;
while($feature1) {
#do something
$feature1 = $stream1->next_in_stream;
}
}
stream_by_named_region
Description: stream all features from a specific region on a genome
with a given set of source filters
Arg (1) : $database (MQdb::Database)
Arg (2) : $assembly_name (string)
Arg (3) : $chrom_name (string)
Arg (4) : $chrom_start (integer)
Arg (5) : $chrom_end (integer)
Arg (6...) : hash named filter parameters.
sources=>[$fsrc1, $fsrc2,$fsrc3], instances of EEDB::FeatureSource
Returntype : a DBStream instance
Exceptions : none
stream_all_by_source
Description: stream all features from a single FeatureSource
Arg (1) : $sourcedatabase (EEDB::FeatureSource with database)
Returntype : a DBStream instance
Exceptions : none
Comments : this is an older API method and despite being simple and fast
the stream_all() method now replaces this call. It may be
deprecated in the near future.