OpenMS
ProForma Class Reference

#include <OpenMS/CHEMISTRY/ProForma.h>

Collaboration diagram for ProForma:
[legend]

Public Member Functions

 ProForma (const AASequence &seq)
 
AASequence fromProFormaString (const std::string &proforma_str)
 
std::string toProFormaString () const
 
void addModification (size_t start_pos, size_t end_pos, const std::string &mod_id, double mass_shift)
 
void removeModification (size_t position)
 

Private Member Functions

void parseCVModificationNames (const std::string &modString, size_t &pos, size_t residue_pos)
 
void parseStandardModification (const std::string &modString, size_t &pos, size_t residue_pos)
 
void parseDeltaMassNotation (const std::string &modString, size_t &pos, size_t residue_pos)
 
void parseNTerminalModification (const std::string &modString, size_t &pos)
 
void parseCTerminalModification (const std::string &modString, size_t &pos)
 
void parseRangeModification (const std::string &modString, size_t &pos)
 
void throwParseError (const std::string &message) const
 
void validateCVModification (const std::string &modification)
 

Private Attributes

AASequence sequence_
 
std::unordered_map< size_t, ModificationAttributesmodifications_
 
std::unordered_set< std::string > supported_cvs_ {"UNIMOD", "MOD", "RESID", "XLMOD", "GNO"}
 

Constructor & Destructor Documentation

◆ ProForma()

ProForma ( const AASequence seq)
explicit

Member Function Documentation

◆ addModification()

void addModification ( size_t  start_pos,
size_t  end_pos,
const std::string &  mod_id,
double  mass_shift 
)

◆ fromProFormaString()

AASequence fromProFormaString ( const std::string &  proforma_str)

◆ parseCTerminalModification()

void parseCTerminalModification ( const std::string &  modString,
size_t &  pos 
)
private

◆ parseCVModificationNames()

void parseCVModificationNames ( const std::string &  modString,
size_t &  pos,
size_t  residue_pos 
)
private

◆ parseDeltaMassNotation()

void parseDeltaMassNotation ( const std::string &  modString,
size_t &  pos,
size_t  residue_pos 
)
private

◆ parseNTerminalModification()

void parseNTerminalModification ( const std::string &  modString,
size_t &  pos 
)
private

◆ parseRangeModification()

void parseRangeModification ( const std::string &  modString,
size_t &  pos 
)
private

◆ parseStandardModification()

void parseStandardModification ( const std::string &  modString,
size_t &  pos,
size_t  residue_pos 
)
private

◆ removeModification()

void removeModification ( size_t  position)

◆ throwParseError()

void throwParseError ( const std::string &  message) const
private

◆ toProFormaString()

std::string toProFormaString ( ) const

◆ validateCVModification()

void validateCVModification ( const std::string &  modification)
private

Member Data Documentation

◆ modifications_

std::unordered_map<size_t, ModificationAttributes> modifications_
private

◆ sequence_

AASequence sequence_
private

◆ supported_cvs_

std::unordered_set<std::string> supported_cvs_ {"UNIMOD", "MOD", "RESID", "XLMOD", "GNO"}
private