OpenMS
|
Database of ribonucleotides (modified and unmodified) More...
#include <OpenMS/CHEMISTRY/RibonucleotideDB.h>
Public Types | |
using | ConstRibonucleotidePtr = const Ribonucleotide * |
typedef std::vector< std::unique_ptr< Ribonucleotide > >::const_iterator | ConstIterator |
const iterator type definition More... | |
Public Member Functions | |
~RibonucleotideDB ()=default | |
destructor More... | |
RibonucleotideDB (const RibonucleotideDB &other)=delete | |
copy constructor not available More... | |
RibonucleotideDB & | operator= (const RibonucleotideDB &other)=delete |
assignment operator not available More... | |
ConstIterator | begin () const |
Const iterator to beginning of database. More... | |
ConstIterator | end () const |
Const iterator to end of database. More... | |
ConstRibonucleotidePtr | getRibonucleotide (const std::string &code) |
Get a ribonucleotide by its code (short name) More... | |
ConstRibonucleotidePtr | getRibonucleotidePrefix (const std::string &seq) |
Get the ribonucleotide with the longest code that matches a prefix of seq . More... | |
std::pair< ConstRibonucleotidePtr, ConstRibonucleotidePtr > | getRibonucleotideAlternatives (const std::string &code) |
Get the alternatives for an ambiguous modification code. More... | |
Static Public Member Functions | |
static RibonucleotideDB * | getInstance () |
replacement for constructor (singleton pattern) More... | |
Protected Member Functions | |
RibonucleotideDB () | |
default constructor More... | |
void | readFromFile_ (const std::string &path) |
read (modified) nucleotides from input file More... | |
void | readFromJSON_ (const std::string &path) |
read from a newer version of Modomics that uses a JSON file More... | |
const std::unique_ptr< Ribonucleotide > | parseRow_ (const std::string &row, Size line_count) |
create a (modified) nucleotide from an input row More... | |
Protected Attributes | |
std::vector< std::unique_ptr< Ribonucleotide > > | ribonucleotides_ |
list of known (modified) nucleotides More... | |
std::unordered_map< std::string, Size > | code_map_ |
mapping of codes (short names) to indexes into ribonucleotides_ More... | |
std::map< std::string, std::pair< ConstRibonucleotidePtr, ConstRibonucleotidePtr > > | ambiguity_map_ |
mapping of ambiguity codes to the alternatives they represent More... | |
Size | max_code_length_ |
Database of ribonucleotides (modified and unmodified)
The information in this class comes primarily from the Modomics database (http://modomics.genesilico.pl/modifications/) and is read from a tab-separated text file in data/CHEMISTRY/Modomics.tsv
. In addition, OpenMS-specific (as well as potentially user-supplied) modification definitions are read from the file data/CHEMISTRY/Custom_RNA_modifications.tsv
.
typedef std::vector<std::unique_ptr<Ribonucleotide> >::const_iterator ConstIterator |
const iterator type definition
using ConstRibonucleotidePtr = const Ribonucleotide * |
|
default |
destructor
|
delete |
copy constructor not available
|
protected |
default constructor
|
inline |
Const iterator to beginning of database.
|
inline |
Const iterator to end of database.
|
static |
replacement for constructor (singleton pattern)
Referenced by NucleicAcidSearchEngine::getModifications_(), NucleicAcidSearchEngine::registerOptionsAndFlags_(), and NucleicAcidSearchEngine::resolveAmbiguousMods_().
ConstRibonucleotidePtr getRibonucleotide | ( | const std::string & | code | ) |
Get a ribonucleotide by its code (short name)
Exception::ElementNotFound | if nothing was found |
std::pair<ConstRibonucleotidePtr, ConstRibonucleotidePtr> getRibonucleotideAlternatives | ( | const std::string & | code | ) |
Get the alternatives for an ambiguous modification code.
Exception::ElementNotFound | if nothing was found |
ConstRibonucleotidePtr getRibonucleotidePrefix | ( | const std::string & | seq | ) |
Get the ribonucleotide with the longest code that matches a prefix of seq
.
Exception::ElementNotFound | if nothing was found |
|
delete |
assignment operator not available
|
protected |
create a (modified) nucleotide from an input row
|
protected |
read (modified) nucleotides from input file
|
protected |
read from a newer version of Modomics that uses a JSON file
|
protected |
mapping of ambiguity codes to the alternatives they represent
|
protected |
mapping of codes (short names) to indexes into ribonucleotides_
|
protected |
|
protected |
list of known (modified) nucleotides