OpenMS
ScoredProcessingResult Struct Reference

Base class for ID data with scores and processing steps (and meta info) More...

#include <OpenMS/METADATA/ID/ScoredProcessingResult.h>

Inheritance diagram for ScoredProcessingResult:
[legend]
Collaboration diagram for ScoredProcessingResult:
[legend]

Public Member Functions

AppliedProcessingSteps::nth_index< 1 >::type & getStepsAndScoresByStep ()
 Return the applied processing steps (incl. scores) as a set ordered by processing step reference (option) More...
 
const AppliedProcessingSteps::nth_index< 1 >::type & getStepsAndScoresByStep () const
 Return the applied processing steps (incl. scores) as a set ordered by processing step reference (option) - const variant. More...
 
void addProcessingStep (const AppliedProcessingStep &step)
 Add an applied processing step. More...
 
void addProcessingStep (ProcessingStepRef step_ref, const std::map< ScoreTypeRef, double > &scores=std::map< ScoreTypeRef, double >())
 Add a processing step (and associated scores, if any) More...
 
void addScore (ScoreTypeRef score_type, double score, const std::optional< ProcessingStepRef > &processing_step_opt=std::nullopt)
 Add a score (possibly connected to a processing step) More...
 
ScoredProcessingResultmerge (const ScoredProcessingResult &other)
 Merge in data from another object. More...
 
std::pair< double, bool > getScore (ScoreTypeRef score_ref) const
 Look up a score by score type. More...
 
std::pair< double, bool > getScore (ScoreTypeRef score_ref, std::optional< ProcessingStepRef > processing_step_opt) const
 Look up a score by score type and processing step. More...
 
std::tuple< double, std::optional< ProcessingStepRef >, bool > getScoreAndStep (ScoreTypeRef score_ref) const
 Look up a score and associated processing step by score type. More...
 
std::tuple< double, std::optional< ScoreTypeRef >, bool > getMostRecentScore () const
 Get the (primary) score from the most recent processing step. More...
 
Size getNumberOfScores () const
 Return the number of scores associated with this result. More...
 
- Public Member Functions inherited from MetaInfoInterface
 MetaInfoInterface ()
 Constructor. More...
 
 MetaInfoInterface (const MetaInfoInterface &rhs)
 Copy constructor. More...
 
 MetaInfoInterface (MetaInfoInterface &&) noexcept
 Move constructor. More...
 
 ~MetaInfoInterface ()
 Destructor. More...
 
MetaInfoInterfaceoperator= (const MetaInfoInterface &rhs)
 Assignment operator. More...
 
MetaInfoInterfaceoperator= (MetaInfoInterface &&) noexcept
 Move assignment operator. More...
 
void swap (MetaInfoInterface &rhs)
 Swap contents. More...
 
bool operator== (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
bool operator!= (const MetaInfoInterface &rhs) const
 Equality operator. More...
 
const DataValuegetMetaValue (const String &name) const
 Returns the value corresponding to a string, or DataValue::EMPTY if not found. More...
 
DataValue getMetaValue (const String &name, const DataValue &default_value) const
 Returns the value corresponding to a string, or a default value (e.g.: DataValue::EMPTY) if not found
More...
 
const DataValuegetMetaValue (UInt index) const
 Returns the value corresponding to the index, or DataValue::EMPTY if not found. More...
 
DataValue getMetaValue (UInt index, const DataValue &default_value) const
 Returns the value corresponding to the index, or a default value (e.g.: DataValue::EMPTY) if not found
More...
 
bool metaValueExists (const String &name) const
 Returns whether an entry with the given name exists. More...
 
bool metaValueExists (UInt index) const
 Returns whether an entry with the given index exists. More...
 
void setMetaValue (const String &name, const DataValue &value)
 Sets the DataValue corresponding to a name. More...
 
void setMetaValue (UInt index, const DataValue &value)
 Sets the DataValue corresponding to an index. More...
 
void removeMetaValue (const String &name)
 Removes the DataValue corresponding to name if it exists. More...
 
void removeMetaValue (UInt index)
 Removes the DataValue corresponding to index if it exists. More...
 
void addMetaValues (const MetaInfoInterface &from)
 function to copy all meta values from one object to this one More...
 
void getKeys (std::vector< String > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
void getKeys (std::vector< UInt > &keys) const
 Fills the given vector with a list of all keys for which a value is set. More...
 
bool isMetaEmpty () const
 Returns if the MetaInfo is empty. More...
 
void clearMetaInfo ()
 Removes all meta values. More...
 

Public Attributes

AppliedProcessingSteps steps_and_scores
 

Protected Member Functions

 ScoredProcessingResult (const AppliedProcessingSteps &steps_and_scores=AppliedProcessingSteps())
 Constructor. More...
 
 ScoredProcessingResult (const ScoredProcessingResult &)=default
 Copy c'tor. More...
 
- Protected Member Functions inherited from MetaInfoInterface
void createIfNotExists_ ()
 Creates the MetaInfo object if it does not exist. More...
 

Additional Inherited Members

- Static Public Member Functions inherited from MetaInfoInterface
static MetaInfoRegistrymetaRegistry ()
 Returns a reference to the MetaInfoRegistry. More...
 
- Protected Attributes inherited from MetaInfoInterface
MetaInfometa_
 Pointer to the MetaInfo object (0 by default) More...
 

Detailed Description

Base class for ID data with scores and processing steps (and meta info)

Constructor & Destructor Documentation

◆ ScoredProcessingResult() [1/2]

ScoredProcessingResult ( const AppliedProcessingSteps steps_and_scores = AppliedProcessingSteps())
inlineexplicitprotected

Constructor.

◆ ScoredProcessingResult() [2/2]

ScoredProcessingResult ( const ScoredProcessingResult )
protecteddefault

Copy c'tor.

Member Function Documentation

◆ addProcessingStep() [1/2]

void addProcessingStep ( const AppliedProcessingStep step)
inline

◆ addProcessingStep() [2/2]

void addProcessingStep ( ProcessingStepRef  step_ref,
const std::map< ScoreTypeRef, double > &  scores = std::map<ScoreTypeRef, double>() 
)
inline

Add a processing step (and associated scores, if any)

References ScoredProcessingResult::addProcessingStep().

◆ addScore()

void addScore ( ScoreTypeRef  score_type,
double  score,
const std::optional< ProcessingStepRef > &  processing_step_opt = std::nullopt 
)
inline

Add a score (possibly connected to a processing step)

References ScoredProcessingResult::addProcessingStep(), and AppliedProcessingStep::scores.

Referenced by NucleicAcidSearchEngine::postProcessHits_().

◆ getMostRecentScore()

std::tuple<double, std::optional<ScoreTypeRef>, bool> getMostRecentScore ( ) const
inline

Get the (primary) score from the most recent processing step.

This will fail if no scores have been assigned.

Returns
A tuple: score (or NaN), score type reference (option), success indicator

References OpenMS::StringUtils::reverse(), and ScoredProcessingResult::steps_and_scores.

◆ getNumberOfScores()

Size getNumberOfScores ( ) const
inline

Return the number of scores associated with this result.

References ScoredProcessingResult::steps_and_scores.

◆ getScore() [1/2]

std::pair<double, bool> getScore ( ScoreTypeRef  score_ref) const
inline

Look up a score by score type.

All processing steps are considered, in "most recent first" order.

Returns
A pair: score (or NaN), success indicator

References ScoredProcessingResult::getScoreAndStep().

◆ getScore() [2/2]

std::pair<double, bool> getScore ( ScoreTypeRef  score_ref,
std::optional< ProcessingStepRef processing_step_opt 
) const
inline

Look up a score by score type and processing step.

Returns
A pair: score (or NaN), success indicator

References ScoredProcessingResult::steps_and_scores.

◆ getScoreAndStep()

std::tuple<double, std::optional<ProcessingStepRef>, bool> getScoreAndStep ( ScoreTypeRef  score_ref) const
inline

Look up a score and associated processing step by score type.

All processing steps are considered, in "most recent first" order.

Returns
A tuple: score (or NaN), processing step reference (option), success indicator

References OpenMS::StringUtils::reverse(), and ScoredProcessingResult::steps_and_scores.

Referenced by ScoredProcessingResult::getScore().

◆ getStepsAndScoresByStep() [1/2]

AppliedProcessingSteps::nth_index<1>::type& getStepsAndScoresByStep ( )
inline

Return the applied processing steps (incl. scores) as a set ordered by processing step reference (option)

References ScoredProcessingResult::steps_and_scores.

◆ getStepsAndScoresByStep() [2/2]

const AppliedProcessingSteps::nth_index<1>::type& getStepsAndScoresByStep ( ) const
inline

Return the applied processing steps (incl. scores) as a set ordered by processing step reference (option) - const variant.

References ScoredProcessingResult::steps_and_scores.

◆ merge()

Member Data Documentation

◆ steps_and_scores