OpenMS  2.4.0
Public Member Functions | Private Member Functions | Private Attributes | List of all members
IDMergerAlgorithm Class Reference

#include <OpenMS/ANALYSIS/ID/IDMergerAlgorithm.h>

Inheritance diagram for IDMergerAlgorithm:
DefaultParamHandler ProgressLogger

Public Member Functions

 IDMergerAlgorithm (const String &runIdentifier="merged")
 
void insertRun (std::vector< ProteinIdentification > &prots, std::vector< PeptideIdentification > &peps)
 
void returnResultsAndClear (ProteinIdentification &prots, std::vector< PeptideIdentification > &peps)
 Return the merged results and reset/clear all internal data. More...
 
- Public Member Functions inherited from DefaultParamHandler
 DefaultParamHandler (const String &name)
 Constructor with name that is displayed in error messages. More...
 
 DefaultParamHandler (const DefaultParamHandler &rhs)
 Copy constructor. More...
 
virtual ~DefaultParamHandler ()
 Destructor. More...
 
virtual DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator. More...
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator. More...
 
void setParameters (const Param &param)
 Sets the parameters. More...
 
const ParamgetParameters () const
 Non-mutable access to the parameters. More...
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters. More...
 
const StringgetName () const
 Non-mutable access to the name. More...
 
void setName (const String &name)
 Mutable access to the name. More...
 
const std::vector< String > & getSubsections () const
 Non-mutable access to the registered subsections. More...
 
- Public Member Functions inherited from ProgressLogger
 ProgressLogger ()
 Constructor. More...
 
 ~ProgressLogger ()
 Destructor. More...
 
 ProgressLogger (const ProgressLogger &other)
 Copy constructor. More...
 
ProgressLoggeroperator= (const ProgressLogger &other)
 Assignment Operator. More...
 
void setLogType (LogType type) const
 Sets the progress log that should be used. The default type is NONE! More...
 
LogType getLogType () const
 Returns the type of progress log being used. More...
 
void startProgress (SignedSize begin, SignedSize end, const String &label) const
 Initializes the progress display. More...
 
void setProgress (SignedSize value) const
 Sets the current progress. More...
 
void endProgress () const
 Ends the progress display. More...
 
void nextProgress () const
 increment progress by 1 (according to range begin-end) More...
 

Private Member Functions

String getNewIdentifier_ () const
 
void copySearchParams_ (ProteinIdentification &from, ProteinIdentification &to)
 
bool checkOldRunConsistency_ (const std::vector< ProteinIdentification > &protRuns, const String &experiment_type) const
 
bool checkOldRunConsistency_ (const std::vector< ProteinIdentification > &protRuns, const ProteinIdentification &ref, const String &experiment_type) const
 
void movePepIDsAndRefProteinsToResult_ (std::vector< PeptideIdentification > &pepIDs, std::vector< ProteinIdentification > &oldProtRuns)
 

Private Attributes

ProteinIdentification protResult
 
std::vector< PeptideIdentificationpepResult
 
std::unordered_set< std::string > proteinsCollected
 
bool filled = false
 
std::map< String, SizefileOriginToIdx
 
String id
 

Additional Inherited Members

- Public Types inherited from ProgressLogger
enum  LogType { CMD, GUI, NONE }
 Possible log types. More...
 
- Protected Member Functions inherited from DefaultParamHandler
virtual void updateMembers_ ()
 This method is used to update extra member variables at the end of the setParameters() method. More...
 
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor. More...
 
- Static Protected Member Functions inherited from ProgressLogger
static String logTypeToFactoryName_ (LogType type)
 Return the name of the factory product used for this log type. More...
 
- Protected Attributes inherited from DefaultParamHandler
Param param_
 Container for current parameters. More...
 
Param defaults_
 Container for default parameters. This member should be filled in the constructor of derived classes! More...
 
std::vector< Stringsubsections_
 Container for registered subsections. This member should be filled in the constructor of derived classes! More...
 
String error_name_
 Name that is displayed in error messages during the parameter checking. More...
 
bool check_defaults_
 If this member is set to false no checking if parameters in done;. More...
 
bool warn_empty_defaults_
 If this member is set to false no warning is emitted when defaults are empty;. More...
 
- Protected Attributes inherited from ProgressLogger
LogType type_
 
time_t last_invoke_
 
ProgressLoggerImplcurrent_logger_
 
- Static Protected Attributes inherited from ProgressLogger
static int recursion_depth_
 

Constructor & Destructor Documentation

◆ IDMergerAlgorithm()

IDMergerAlgorithm ( const String runIdentifier = "merged")
explicit

Member Function Documentation

◆ checkOldRunConsistency_() [1/2]

bool checkOldRunConsistency_ ( const std::vector< ProteinIdentification > &  protRuns,
const String experiment_type 
) const
private

Checks consistency of search engines and settings across runs before merging.

Parameters
protRunsThe runs to check (first = implicit reference)
experiment_typeallow some mismatches in case of other experiment types (e.g. SILAC)
Returns
all same? TODO: a merged RunDescription about what to put in the new runs (e.g. for SILAC)
Exceptions
BaseExceptionfor disagreeing settings

◆ checkOldRunConsistency_() [2/2]

bool checkOldRunConsistency_ ( const std::vector< ProteinIdentification > &  protRuns,
const ProteinIdentification ref,
const String experiment_type 
) const
private

Same as above, if you want to use a specific reference

Parameters
protRunsThe runs to check (first = reference)
refA possibly external protein run reference
experiment_typeallow some mismatches in case of other experiment types (e.g. SILAC)
Returns
all same? TODO: a merged RunDescription about what to put in the new runs (e.g. for SILAC)
Exceptions
BaseExceptionfor disagreeing settings

◆ copySearchParams_()

void copySearchParams_ ( ProteinIdentification from,
ProteinIdentification to 
)
private

◆ getNewIdentifier_()

String getNewIdentifier_ ( ) const
private

◆ insertRun()

void insertRun ( std::vector< ProteinIdentification > &  prots,
std::vector< PeptideIdentification > &  peps 
)

Insert (=move and clear) a run with its peptide IDs into the internal merged data structures, based on the initial mapping from fileorigins to new run

◆ movePepIDsAndRefProteinsToResult_()

void movePepIDsAndRefProteinsToResult_ ( std::vector< PeptideIdentification > &  pepIDs,
std::vector< ProteinIdentification > &  oldProtRuns 
)
private

◆ returnResultsAndClear()

void returnResultsAndClear ( ProteinIdentification prots,
std::vector< PeptideIdentification > &  peps 
)

Return the merged results and reset/clear all internal data.

Member Data Documentation

◆ fileOriginToIdx

std::map<String, Size> fileOriginToIdx
private

◆ filled

bool filled = false
private

◆ id

String id
private

◆ pepResult

std::vector<PeptideIdentification> pepResult
private

◆ proteinsCollected

std::unordered_set<std::string> proteinsCollected
private

◆ protResult

ProteinIdentification protResult
private