$Bio::EnsEMBL::IdMapping::InternalIdMapper::EnsemblGeneGeneric::VERSION
=
'112.0.0'
;
no
warnings
'uninitialized'
;
our
@ISA
=
qw(Bio::EnsEMBL::IdMapping::InternalIdMapper::BaseMapper)
;
sub
init_basic {
my
$self
=
shift
;
my
$num
=
shift
;
my
$gsb
=
shift
;
my
$mappings
=
shift
;
my
$gene_scores
=
shift
;
$self
->logger->info(
"Basic gene mapping...\n"
, 0,
'stamped'
);
$mappings
=
$self
->basic_mapping(
$gene_scores
,
"gene_mappings$num"
);
$num
++;
my
$new_scores
=
$gsb
->create_shrinked_matrix(
$gene_scores
,
$mappings
,
"gene_matrix$num"
);
return
(
$new_scores
,
$mappings
);
}
sub
synteny {
my
$self
=
shift
;
my
$num
=
shift
;
my
$gsb
=
shift
;
my
$mappings
=
shift
;
my
$gene_scores
=
shift
;
unless
(
$gene_scores
->loaded) {
$self
->logger->info(
"Synteny Framework building...\n"
, 0,
'stamped'
);
my
$dump_path
= path_append(
$self
->conf->param(
'basedir'
),
'mapping'
);
my
$sf
= Bio::EnsEMBL::IdMapping::SyntenyFramework->new(
-DUMP_PATH
=>
$dump_path
,
-CACHE_FILE
=>
'synteny_framework.ser'
,
-LOGGER
=>
$self
->logger,
-CONF
=>
$self
->conf,
-CACHE
=>
$self
->cache,
);
$sf
->build_synteny(
$mappings
);
$self
->logger->info(
"\nSynteny assisted mapping...\n"
, 0,
'stamped'
);
$gene_scores
=
$sf
->rescore_gene_matrix_lsf(
$gene_scores
);
$gene_scores
->write_to_file;
}
my
$new_mappings
=
$self
->basic_mapping(
$gene_scores
,
"gene_mappings$num"
);
$num
++;
my
$new_scores
=
$gsb
->create_shrinked_matrix(
$gene_scores
,
$new_mappings
,
"gene_matrix$num"
);
return
(
$new_scores
,
$new_mappings
);
}
sub
best_transcript {
my
$self
=
shift
;
my
$num
=
shift
;
my
$gsb
=
shift
;
my
$mappings
=
shift
;
my
$gene_scores
=
shift
;
my
$transcript_scores
=
shift
;
$self
->logger->info(
"Retry with simple best transcript score...\n"
, 0,
'stamped'
);
unless
(
$gene_scores
->loaded) {
$gsb
->simple_gene_rescore(
$gene_scores
,
$transcript_scores
);
$gene_scores
->write_to_file;
}
my
$new_mappings
=
$self
->basic_mapping(
$gene_scores
,
"gene_mappings$num"
);
$num
++;
my
$new_scores
=
$gsb
->create_shrinked_matrix(
$gene_scores
,
$new_mappings
,
"gene_matrix$num"
);
return
(
$new_scores
,
$new_mappings
);
}
sub
biotype {
my
$self
=
shift
;
my
$num
=
shift
;
my
$gsb
=
shift
;
my
$mappings
=
shift
;
my
$gene_scores
=
shift
;
$self
->logger->info(
"Retry with biotype disambiguation...\n"
, 0,
'stamped'
);
unless
(
$gene_scores
->loaded) {
$gsb
->biotype_gene_rescore(
$gene_scores
);
$gene_scores
->write_to_file;
}
my
$new_mappings
=
$self
->basic_mapping(
$gene_scores
,
"gene_mappings$num"
);
$num
++;
my
$new_scores
=
$gsb
->create_shrinked_matrix(
$gene_scores
,
$new_mappings
,
"gene_matrix$num"
);
return
(
$new_scores
,
$new_mappings
);
}
sub
location {
my
$self
=
shift
;
my
$num
=
shift
;
my
$gsb
=
shift
;
my
$mappings
=
shift
;
my
$gene_scores
=
shift
;
$self
->logger->info(
"Retry with location disambiguation...\n"
, 0,
'stamped'
);
unless
(
$gene_scores
->loaded) {
$gsb
->location_gene_rescore(
$gene_scores
);
$gene_scores
->write_to_file;
}
my
$new_mappings
=
$self
->basic_mapping(
$gene_scores
,
"gene_mappings$num"
);
$num
++;
my
$new_scores
=
$gsb
->create_shrinked_matrix(
$gene_scores
,
$new_mappings
,
"gene_matrix$num"
);
return
(
$new_scores
,
$new_mappings
);
}
sub
internal_id {
my
$self
=
shift
;
my
$num
=
shift
;
my
$gsb
=
shift
;
my
$mappings
=
shift
;
my
$gene_scores
=
shift
;
$self
->logger->info(
"Retry with internalID disambiguation...\n"
, 0,
'stamped'
);
unless
(
$gene_scores
->loaded) {
$gsb
->internal_id_rescore(
$gene_scores
);
$gene_scores
->write_to_file;
}
my
$new_mappings
=
$self
->basic_mapping(
$gene_scores
,
"gene_mappings$num"
);
$num
++;
my
$new_scores
=
$gsb
->create_shrinked_matrix(
$gene_scores
,
$new_mappings
,
"gene_matrix$num"
);
return
(
$new_scores
,
$new_mappings
);
}
1;