Bio-MUST-Apps-TwoScalp

 view release on metacpan or  search on metacpan

lib/Bio/MUST/Apps/TwoScalp/Profile2Profile.pm  view on Meta::CPAN

package Bio::MUST::Apps::TwoScalp::Profile2Profile;
# ABSTRACT: internal class for two-scalp tool
# CONTRIBUTOR: Amandine BERTRAND <amandine.bertrand@doct.uliege.be>
# CONTRIBUTOR: Valerian LUPO <valerian.lupo@doct.uliege.be>
$Bio::MUST::Apps::TwoScalp::Profile2Profile::VERSION = '0.243240';
use Moose;
use namespace::autoclean;

use autodie;
use feature qw(say);

use Smart::Comments '###';

use Carp;
use List::AllUtils qw(part);

use Bio::MUST::Core;
use Bio::MUST::Core::Constants qw(:gaps);
use Bio::MUST::Core::Utils qw(secure_outfile);

use aliased 'Bio::MUST::Core::Ali';
use aliased 'Bio::MUST::Core::Seq';
use aliased 'Bio::MUST::Core::SeqId';
use aliased 'Bio::MUST::Core::SeqMask';
use aliased 'Bio::MUST::Drivers::Blast::Database::Temporary';
use aliased 'Bio::MUST::Drivers::Mafft';
use aliased 'Bio::MUST::Drivers::ClustalO';
use aliased 'Bio::MUST::Apps::SlaveAligner::Local';
use aliased 'Bio::MUST::Core::IdList';


has 'file1' => (
    is       => 'ro',
    isa      => 'Bio::MUST::Core::Ali',
    required => 1,
    coerce   => 1,
);

has 'file2' => (
    is       => 'ro',
    isa      => 'Bio::MUST::Core::Ali',
    required => 1,
    coerce   => 1,
);

has 'ali' => (
    is       => 'ro',
    isa      => 'Bio::MUST::Core::Ali',
    init_arg => undef,
    writer   => '_set_ali',
    handles  => qr{.*}xms,
);

has 'options' => (
    traits   => ['Hash'],
    is       => 'ro',
    isa      => 'HashRef',
    default  => sub { {} },
);


sub BUILD {
    my $self = shift;

    # idealize to avoid shared gapped for ClustalO
    my $ali1 = $self->file1->idealize;
    my $ali2 = $self->file2->idealize;



( run in 0.651 second using v1.01-cache-2.11-cpan-75ffa21a3d4 )