[Bioperl-l] Passing/Storing "Bio::SeqIO" object to a function

Abhishek Pratap abhishek.vit at gmail.com
Thu Jun 24 14:20:22 UTC 2010


Hi All

I may be hitting a problem which probably hints at my grip of the language.
I am trying to store Bio::SeqIO object in a hash. I have creates couple of
Bio::SeqIO objects in a method and storing them as a hash reference. The
goal is to use them in another subroutine for writing out data to each file.
The script is trying to bin data into different files.


Any idea how I could achieve creating file handles  thru "Bio::SeqIO" object
in one routine and pass them to another for writing.


Thanks!
-Abhi

foreach my $bin (keys %{ $indexes->{$lane} })
 {
my $sample_name = $indexes->{$lane}->{$bin}->{'sample'};
 my $path="$outpath".'/'."$sample_name";
mkpath( $path, { verbose => 1, mode => 0711 });
        my $out = Bio::SeqIO->new(-format=>'fastq-illumina', -file =>
">$outpath/$sample_name/$fastQFile");
$indexes->{$lane}->{$bin}->{'file_handle'}=$out;
 }
}



More information about the Bioperl-l mailing list