OpenMS
FeatureGroupingAlgorithm Class Referenceabstract

Base class for all feature grouping algorithms. More...

#include <OpenMS/ANALYSIS/MAPMATCHING/FeatureGroupingAlgorithm.h>

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

Public Member Functions

 FeatureGroupingAlgorithm ()
 Default constructor. More...
 
 ~FeatureGroupingAlgorithm () override
 Destructor. More...
 
virtual void group (const std::vector< FeatureMap > &maps, ConsensusMap &out)=0
 Applies the algorithm. The features in the input maps are grouped and the output is written to the consensus map out. More...
 
virtual void group (const std::vector< ConsensusMap > &maps, ConsensusMap &out)
 
void transferSubelements (const std::vector< ConsensusMap > &maps, ConsensusMap &out) const
 Transfers subelements (grouped features) from input consensus maps to the result consensus map. 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...
 
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...
 

Static Public Member Functions

static void registerChildren ()
 Register all derived classes in this method. More...
 
- Static Public Member Functions inherited from DefaultParamHandler
static void writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const String &key_prefix="")
 Writes all parameters to meta values. More...
 

Protected Member Functions

template<class MapType >
void postprocess_ (const std::vector< MapType > &maps, ConsensusMap &out)
 
- 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...
 

Private Member Functions

 FeatureGroupingAlgorithm (const FeatureGroupingAlgorithm &)
 Copy constructor is not implemented -> private. More...
 
FeatureGroupingAlgorithmoperator= (const FeatureGroupingAlgorithm &)
 Assignment operator is not implemented -> private. More...
 

Additional Inherited Members

- 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...
 

Detailed Description

Base class for all feature grouping algorithms.

These algorithms group corresponding features in one map or across maps.

Constructor & Destructor Documentation

◆ FeatureGroupingAlgorithm() [1/2]

Default constructor.

◆ ~FeatureGroupingAlgorithm()

~FeatureGroupingAlgorithm ( )
override

Destructor.

◆ FeatureGroupingAlgorithm() [2/2]

Copy constructor is not implemented -> private.

Member Function Documentation

◆ group() [1/2]

virtual void group ( const std::vector< ConsensusMap > &  maps,
ConsensusMap out 
)
virtual

Applies the algorithm. The consensus features in the input maps are grouped and the output is written to the consensus map out Algorithms not supporting ConsensusMap input should simply not override this method, as the base implementation will forward the data to the FeatureMap version of group()

Reimplemented in FeatureGroupingAlgorithmQT, and FeatureGroupingAlgorithmKD.

◆ group() [2/2]

virtual void group ( const std::vector< FeatureMap > &  maps,
ConsensusMap out 
)
pure virtual

Applies the algorithm. The features in the input maps are grouped and the output is written to the consensus map out.

Implemented in FeatureGroupingAlgorithmUnlabeled, FeatureGroupingAlgorithmQT, FeatureGroupingAlgorithmLabeled, and FeatureGroupingAlgorithmKD.

◆ operator=()

FeatureGroupingAlgorithm& operator= ( const FeatureGroupingAlgorithm )
private

Assignment operator is not implemented -> private.

◆ postprocess_()

void postprocess_ ( const std::vector< MapType > &  maps,
ConsensusMap out 
)
inlineprotected

after grouping by the subclasses, postprocess unassigned IDs, protein IDs and sort results in a consistent way

References ConsensusMap::getProteinIdentifications(), ConsensusMap::getUnassignedPeptideIdentifications(), ConsensusMap::sortByMaps(), ConsensusMap::sortByQuality(), and ConsensusMap::sortBySize().

◆ registerChildren()

static void registerChildren ( )
static

Register all derived classes in this method.

◆ transferSubelements()

void transferSubelements ( const std::vector< ConsensusMap > &  maps,
ConsensusMap out 
) const

Transfers subelements (grouped features) from input consensus maps to the result consensus map.