fn() translatetranslate sequences of Dna or Rna into amino acid alphabet, optionally with frames
translate sequences of Dna or Rna into amino acid alphabet, optionally with frames
Defined in | <seqan/translation.h> |
---|---|
Signature |
int translate(target, source[, frames][, geneticCode][, TParallelism])
int translate(target, source[, frames][, geneticCodeSpec][, TParallelism])
|
Parameters
target
|
The amino acid sequence(s). StringSet of AminoAcid or String of AminoAcid if source is a single string and frames is SINGLE_FRAME. |
---|---|
source
|
Source sequences String or StringSet. If the value type is not Dna, Dna5, Rna, Rna5 then it is converted to Dna5. |
frame
|
The TranslationFrames, defaults to SINGLE_FRAME. |
geneticCode
|
The GeneticCode to use, defaults to GeneticCode<CANONICAL> (use to specify GeneticCode at compile-time) |
geneticCodeSpec
|
The GeneticCodeSpec to use (use to specify GenetiCode at run-time) |
TParallelism
|
Whether to use SMP or not, see ParallelismTags . |
Return Values
int |
0 on success, and -1 on incompatible parameters (e.g. multiple frames but target type not StringSet). |
---|
Detailed Description
If OpenMP is supported by platform and TParallelism is not specified as "Serial", translation will be parallelized. The only exception is when doing single-frame translation of a single string -- which is never parallelized.
The translation process is fastest when using ConcatDirect-StringSets for both input and output StringSets and when not having to convert the alphabet of the source, i.e. feeding AminoAcid-Strings, not CharStrings (although the latter is possible).
Please note that specifying the GeneticCode at compile time avoids having unrequired conversion tables in memory. The implementation profits slightly from having SEQAN_CXX11_STANDARD defined.
Example
StringSet<Dna5String> dnaSeqs; // do something that fills up dnaSeqs, e.g. read from file or assign StringSet<String<AminoAcid>, Owner<ConcatDirect<> > > aaSeqs; translate(aaSeqs, dnaSeqs, SIX_FRAME); // do something with the aaSeqs