OpenMS
|
Base class for Search Engine Adapters. More...
#include <OpenMS/APPLICATIONS/SearchEngineBase.h>
Public Member Functions | |
SearchEngineBase ()=delete | |
No default constructor. More... | |
SearchEngineBase (const SearchEngineBase &)=delete | |
No default copy constructor. More... | |
SearchEngineBase (const String &name, const String &description, bool official=true, const std::vector< Citation > &citations={}, bool toolhandler_test=true) | |
Constructor. More... | |
~SearchEngineBase () override | |
Destructor. More... | |
String | getRawfileName (int ms_level=2) const |
Reads the '-in' argument from internal parameters (usually an mzML file) and checks if MS2 spectra are present and are centroided. More... | |
String | getDBFilename (const String &db="") const |
Reads the '-database' argument from internal parameters (or from db ) and tries to find the db in search directories (if it cannot be found immediately). If not found, an exception is thrown. More... | |
virtual void | registerPeptideIndexingParameter_ (Param peptide_indexing_parameter) |
Adds option to reassociate peptides with proteins (and annotate target/decoy information) More... | |
virtual SearchEngineBase::ExitCodes | reindex_ (std::vector< ProteinIdentification > &protein_identifications, std::vector< PeptideIdentification > &peptide_identifications) const |
Reindex peptide to protein association. More... | |
Public Member Functions inherited from TOPPBase | |
TOPPBase ()=delete | |
No default constructor. More... | |
TOPPBase (const TOPPBase &)=delete | |
No default copy constructor. More... | |
TOPPBase (const String &name, const String &description, bool official=true, const std::vector< Citation > &citations={}, bool toolhandler_test=true) | |
Constructor. More... | |
virtual | ~TOPPBase () |
Destructor. More... | |
ExitCodes | main (int argc, const char **argv) |
Main routine of all TOPP applications. More... | |
String | getToolPrefix () const |
Returns the prefix used to identify the tool. More... | |
String | getDocumentationURL () const |
Returns a link to the documentation of the tool (accessible on our servers and only after inclusion in the nightly branch or a release). More... | |
Additional Inherited Members | |
Public Types inherited from TOPPBase | |
enum | ExitCodes { EXECUTION_OK , INPUT_FILE_NOT_FOUND , INPUT_FILE_NOT_READABLE , INPUT_FILE_CORRUPT , INPUT_FILE_EMPTY , CANNOT_WRITE_OUTPUT_FILE , ILLEGAL_PARAMETERS , MISSING_PARAMETERS , UNKNOWN_ERROR , EXTERNAL_PROGRAM_ERROR , PARSE_ERROR , INCOMPATIBLE_INPUT_DATA , INTERNAL_ERROR , UNEXPECTED_RESULT } |
Exit codes. More... | |
Static Public Member Functions inherited from TOPPBase | |
static void | setMaxNumberOfThreads (int num_threads) |
Sets the maximal number of usable threads. More... | |
Protected Member Functions inherited from TOPPBase | |
virtual void | registerOptionsAndFlags_ ()=0 |
Sets the valid command line options (with argument) and flags (without argument). More... | |
String | getParamArgument_ (const Param::ParamEntry &entry) const |
Utility function that determines a suitable argument value for the given Param::ParamEntry. More... | |
std::vector< ParameterInformation > | paramToParameterInformation_ (const Param ¶m) const |
Translates the given parameter object into a vector of ParameterInformation, that can be utilized for cl parsing. More... | |
ParameterInformation | paramEntryToParameterInformation_ (const Param::ParamEntry &entry, const String &argument="", const String &full_name="") const |
Transforms a ParamEntry object to command line parameter (ParameterInformation). More... | |
void | registerParamSubsectionsAsTOPPSubsections_ (const Param ¶m) |
void | registerFullParam_ (const Param ¶m) |
Register command line parameters for all entries in a Param object. More... | |
void | registerStringOption_ (const String &name, const String &argument, const String &default_value, const String &description, bool required=true, bool advanced=false) |
Registers a string option. More... | |
void | setValidStrings_ (const String &name, const std::vector< String > &strings) |
Sets the valid strings for a string option or a whole string list. More... | |
void | setValidStrings_ (const String &name, const std::string vstrings[], int count) |
Sets the valid strings for a string option or a whole string list. More... | |
void | registerInputFile_ (const String &name, const String &argument, const String &default_value, const String &description, bool required=true, bool advanced=false, const StringList &tags=StringList()) |
Registers an input file option. More... | |
void | registerOutputFile_ (const String &name, const String &argument, const String &default_value, const String &description, bool required=true, bool advanced=false) |
Registers an output file option. More... | |
void | registerOutputPrefix_ (const String &name, const String &argument, const String &default_value, const String &description, bool required=true, bool advanced=false) |
Registers an output file prefix used for tools with multiple file output. More... | |
void | setValidFormats_ (const String &name, const std::vector< String > &formats, const bool force_OpenMS_format=true) |
Sets the formats for a input/output file option or for all members of an input/output file lists. More... | |
void | registerDoubleOption_ (const String &name, const String &argument, double default_value, const String &description, bool required=true, bool advanced=false) |
Registers a double option. More... | |
void | setMinInt_ (const String &name, Int min) |
Sets the minimum value for the integer parameter(can be a list of integers,too) name . More... | |
void | setMaxInt_ (const String &name, Int max) |
Sets the maximum value for the integer parameter(can be a list of integers,too) name . More... | |
void | setMinFloat_ (const String &name, double min) |
Sets the minimum value for the floating point parameter(can be a list of floating points,too) name . More... | |
void | setMaxFloat_ (const String &name, double max) |
Sets the maximum value for the floating point parameter(can be a list of floating points,too) name . More... | |
void | registerIntOption_ (const String &name, const String &argument, Int default_value, const String &description, bool required=true, bool advanced=false) |
Registers an integer option. More... | |
void | registerIntList_ (const String &name, const String &argument, const IntList &default_value, const String &description, bool required=true, bool advanced=false) |
Registers a list of integers option. More... | |
void | registerDoubleList_ (const String &name, const String &argument, const DoubleList &default_value, const String &description, bool required=true, bool advanced=false) |
Registers a list of doubles option. More... | |
void | registerStringList_ (const String &name, const String &argument, const StringList &default_value, const String &description, bool required=true, bool advanced=false) |
Registers a list of strings option. More... | |
void | registerInputFileList_ (const String &name, const String &argument, const StringList &default_value, const String &description, bool required=true, bool advanced=false, const StringList &tags=StringList()) |
Registers a list of input files option. More... | |
void | registerOutputFileList_ (const String &name, const String &argument, const StringList &default_value, const String &description, bool required=true, bool advanced=false) |
Registers a list of output files option. More... | |
void | registerFlag_ (const String &name, const String &description, bool advanced=false) |
Registers a flag. More... | |
void | registerSubsection_ (const String &name, const String &description) |
Registers an allowed subsection in the INI file (usually from OpenMS algorithms). More... | |
void | registerTOPPSubsection_ (const String &name, const String &description) |
Registers an allowed subsection in the INI file originating from the TOPP tool itself. More... | |
void | addEmptyLine_ () |
Adds an empty line between registered variables in the documentation. More... | |
String | getStringOption_ (const String &name) const |
Returns the value of a previously registered string option. More... | |
double | getDoubleOption_ (const String &name) const |
Returns the value of a previously registered double option. More... | |
Int | getIntOption_ (const String &name) const |
Returns the value of a previously registered integer option. More... | |
StringList | getStringList_ (const String &name) const |
Returns the value of a previously registered StringList. More... | |
IntList | getIntList_ (const String &name) const |
Returns the value of a previously registered IntList. More... | |
DoubleList | getDoubleList_ (const String &name) const |
Returns the value of a previously registered DoubleList. More... | |
bool | getFlag_ (const String &name) const |
Returns the value of a previously registered flag. More... | |
const ParameterInformation & | findEntry_ (const String &name) const |
Finds the entry in the parameters_ array that has the name name . More... | |
Param const & | getParam_ () const |
Return all parameters relevant to this TOPP tool. More... | |
void | checkParam_ (const Param ¶m, const String &filename, const String &location) const |
Checks top-level entries of param according to the information during registration. More... | |
void | fileParamValidityCheck_ (const StringList ¶m_value, const String ¶m_name, const ParameterInformation &p) const |
checks if files of an input file list exist More... | |
void | fileParamValidityCheck_ (String ¶m_value, const String ¶m_name, const ParameterInformation &p) const |
checks if an input file exists (respecting the flags) More... | |
void | checkIfIniParametersAreApplicable_ (const Param &ini_params) |
Checks if the parameters of the provided ini file are applicable to this tool. More... | |
void | printUsage_ () |
Prints the tool-specific command line options and appends the common options. More... | |
virtual ExitCodes | main_ (int argc, const char **argv)=0 |
The actual "main" method. main_() is invoked by main(). More... | |
void | writeLogInfo_ (const String &text) const |
Writes a string to the log file and to OPENMS_LOG_INFO. More... | |
void | writeLogWarn_ (const String &text) const |
Writes a string to the log file and to OPENMS_LOG_WARN. More... | |
void | writeLogError_ (const String &text) const |
Writes a string to the log file and to OPENMS_LOG_ERROR. More... | |
void | writeDebug_ (const String &text, UInt min_level) const |
Writes a string to the log file and to OPENMS_LOG_DEBUG if the debug level is at least min_level . More... | |
void | writeDebug_ (const String &text, const Param ¶m, UInt min_level) const |
Writes a String followed by a Param to the log file and to OPENMS_LOG_DEBUG if the debug level is at least min_level . More... | |
ExitCodes | runExternalProcess_ (const QString &executable, const QStringList &arguments, const QString &workdir="") const |
Runs an external process via ExternalProcess and prints its stderr output on failure or if debug_level > 4. More... | |
ExitCodes | runExternalProcess_ (const QString &executable, const QStringList &arguments, String &proc_stdout, String &proc_stderr, const QString &workdir="") const |
const String & | getIniLocation_ () const |
Returns the location of the ini file where parameters are taken from. E.g. if the command line was TOPPTool -instance 17 , then this will be "TOPPTool:17:" . Note the ':' at the end. More... | |
const String & | toolName_ () const |
Returns the tool name. More... | |
void | inputFileReadable_ (const String &filename, const String ¶m_name) const |
Checks if an input file exists, is readable and is not empty. More... | |
void | outputFileWritable_ (const String &filename, const String ¶m_name) const |
Checks if an output file is writable. More... | |
bool | parseRange_ (const String &text, double &low, double &high) const |
Parses a range string ([a]:[b]) into two variables (doubles) More... | |
bool | parseRange_ (const String &text, Int &low, Int &high) const |
Parses a range string ([a]:[b]) into two variables (integers) More... | |
void | addDataProcessing_ (ConsensusMap &map, const DataProcessing &dp) const |
Data processing setter for consensus maps. More... | |
void | addDataProcessing_ (FeatureMap &map, const DataProcessing &dp) const |
Data processing setter for feature maps. More... | |
void | addDataProcessing_ (PeakMap &map, const DataProcessing &dp) const |
Data processing setter for peak maps. More... | |
DataProcessing | getProcessingInfo_ (DataProcessing::ProcessingAction action) const |
Returns the data processing information. More... | |
DataProcessing | getProcessingInfo_ (const std::set< DataProcessing::ProcessingAction > &actions) const |
Returns the data processing information. More... | |
template<typename Writer > | |
void | writeToolDescription_ (Writer &writer, std::string write_type, std::string fileExtension) |
Helper function avoiding repeated code between CTD, JSON and CWL. More... | |
Protected Attributes inherited from TOPPBase | |
String | version_ |
Version string (if empty, the OpenMS/TOPP version is printed) More... | |
String | verboseVersion_ |
Version string including additional revision/date time information. Note: This differs from version_ only if not provided by the user. More... | |
bool | official_ |
Flag indicating if this an official TOPP tool. More... | |
std::vector< Citation > | citations_ |
Papers, specific for this tool (will be shown in '–help') More... | |
bool | toolhandler_test_ |
Enable the ToolHandler tests. More... | |
ProgressLogger::LogType | log_type_ |
Type of progress logging. More... | |
bool | test_mode_ |
Test mode. More... | |
Int | debug_level_ |
Debug level set by -debug. More... | |
Static Protected Attributes inherited from TOPPBase | |
static String | topp_ini_file_ |
.TOPP.ini file for storing system default parameters More... | |
static const Citation | cite_openms_ |
The OpenMS citation. More... | |
Base class for Search Engine Adapters.
It is build on top of TOPPBase and provides convenience functions for regular tasks in SearchEngines.
This base class enforces a common parameter scheme upon each adapter. E.g. '-database' and '-in'. This might be extended/changed in the future.
|
delete |
No default constructor.
|
delete |
No default copy constructor.
SearchEngineBase | ( | const String & | name, |
const String & | description, | ||
bool | official = true , |
||
const std::vector< Citation > & | citations = {} , |
||
bool | toolhandler_test = true |
||
) |
Constructor.
Must match TOPPBase' Ctor!
name | Tool name. |
description | Short description of the tool (one line). |
official | If this is an official TOPP tool contained in the OpenMS/TOPP release. If true the tool name is checked against the list of TOPP tools and a warning printed if missing. |
citations | Add one or more citations if they are associated specifically to this TOPP tool; they will be printed during --help |
toolhandler_test | Check if this tool is registered with the ToolHandler (disable for unit tests only) |
|
override |
Destructor.
Reads the '-database' argument from internal parameters (or from db
) and tries to find the db in search directories (if it cannot be found immediately). If not found, an exception is thrown.
db | [Optional] Instead of reading the '-database', you can provide a custom name here (might be required for special db formats, see OMSSA) |
OpenMS::Exception::FileNotFound | if database name could not be resolved |
String getRawfileName | ( | int | ms_level = 2 | ) | const |
Reads the '-in' argument from internal parameters (usually an mzML file) and checks if MS2 spectra are present and are centroided.
If the file is an mzML file, the spectra annotation can be checked. If no MS2 or profile MS2 data is found, an exception is thrown. If the file is any other format, the overhead of reading in the file is too large and we just issue a general warning that centroided data should be used.
ms_level | The MS level to check for their type (centroided/profile) |
OpenMS::Exception::FileEmpty | if no spectra are found (mzML only) |
OpenMS::Exception::IllegalArgument | if spectra are not centroided (mzML only) |
|
virtual |
Adds option to reassociate peptides with proteins (and annotate target/decoy information)
peptide_indexing_parameter | peptide indexer settings. May be modified to enable search engine specific defaults (e.g., not-tryptic etc.). |
|
virtual |
Reindex peptide to protein association.