OpenMS
Loading...
Searching...
No Matches
IsobaricQuantitationMethod Class Referenceabstract

Abstract base class describing an isobaric quantitation method in terms of the used channels and an isotope correction matrix. More...

#include <OpenMS/ANALYSIS/QUANTITATION/IsobaricQuantitationMethod.h>

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

Classes

struct  IsobaricChannelInformation
 Summary of an isobaric quantitation channel. More...
 

Public Types

enum class  MethodType {
  UNKNOWN = 0 , TMT_6PLEX , TMT_10PLEX , TMT_11PLEX ,
  TMT_16PLEX , TMT_18PLEX , TMT_32PLEX , TMT_35PLEX ,
  ITRAQ_4PLEX , ITRAQ_8PLEX , SIZE_OF_METHODTYPE
}
 Identifies a concrete isobaric quantitation method. UNKNOWN is used as a sentinel (disabled/none). More...
 
typedef std::vector< IsobaricChannelInformationIsobaricChannelList
 

Public Member Functions

 IsobaricQuantitationMethod ()=delete
 Default c'tor is deleted: a concrete method must be constructed with its MethodType (see the protected c'tor).
 
 ~IsobaricQuantitationMethod () override
 d'tor
 
const std::string & getMethodName () const
 Returns a unique name for the quantitation method (its canonical identifier, e.g. "tmt6plex").
 
MethodType getMethodType () const
 Returns the MethodType enum value of this quantitation method.
 
virtual const IsobaricChannelListgetChannelInformation () const =0
 Returns information on the different channels used by the quantitation method.
 
virtual Size getNumberOfChannels () const =0
 Gives the number of channels available for this quantitation method.
 
virtual Matrix< double > getIsotopeCorrectionMatrix () const =0
 Returns an isotope correction matrix suitable for the given quantitation method.
 
virtual Size getReferenceChannel () const =0
 Returns the index of the reference channel in the IsobaricChannelList (see IsobaricQuantitationMethod::getChannelInformation()).
 
- Public Member Functions inherited from DefaultParamHandler
 DefaultParamHandler (const std::string &name)
 Constructor with name that is displayed in error messages.
 
 DefaultParamHandler (const DefaultParamHandler &rhs)
 Copy constructor.
 
virtual ~DefaultParamHandler ()
 Destructor.
 
DefaultParamHandleroperator= (const DefaultParamHandler &rhs)
 Assignment operator.
 
virtual bool operator== (const DefaultParamHandler &rhs) const
 Equality operator.
 
void setParameters (const Param &param)
 Sets the parameters.
 
const ParamgetParameters () const
 Non-mutable access to the parameters.
 
const ParamgetDefaults () const
 Non-mutable access to the default parameters.
 
const std::string & getName () const
 Non-mutable access to the name.
 
void setName (const std::string &name)
 Mutable access to the name.
 
const std::vector< std::string > & getSubsections () const
 Non-mutable access to the registered subsections.
 

Static Public Member Functions

static std::string_view methodTypeName (MethodType mt)
 
static std::string_view methodDisplayName (MethodType mt)
 
static MethodType methodTypeFromName (std::string_view name)
 Returns the MethodType corresponding to name (canonical identifier as returned by methodTypeName()), or MethodType::UNKNOWN if not found.
 
static std::unique_ptr< IsobaricQuantitationMethodcreate (MethodType mt)
 Factory: creates a new instance of the concrete quantitation method identified by mt.
 
- Static Public Member Functions inherited from DefaultParamHandler
static void writeParametersToMetaValues (const Param &write_this, MetaInfoInterface &write_here, const std::string &key_prefix="")
 Writes all parameters to meta values.
 

Protected Member Functions

 IsobaricQuantitationMethod (MethodType method_type)
 c'tor for derived classes: sets the underlying param-handler name and records the concrete method_type.
 
Matrix< double > stringListToIsotopeCorrectionMatrix_ (const std::vector< std::string > &stringlist) const
 Helper function to convert a string list containing an isotope correction matrix into a Matrix<double>.
 
- 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.
 
void defaultsToParam_ ()
 Updates the parameters after the defaults have been set in the constructor.
 

Private Attributes

MethodType iso_method_
 The concrete isobaric method this instance represents; set by the c'tor and returned by getMethodType()/getMethodName().
 

Additional Inherited Members

- Protected Attributes inherited from DefaultParamHandler
Param param_
 Container for current parameters.
 
Param defaults_
 Container for default parameters. This member should be filled in the constructor of derived classes!
 
std::vector< std::string > subsections_
 Container for registered subsections. This member should be filled in the constructor of derived classes!
 
std::string error_name_
 Name that is displayed in error messages during the parameter checking.
 
bool check_defaults_
 If this member is set to false no checking if parameters in done;.
 
bool warn_empty_defaults_
 If this member is set to false no warning is emitted when defaults are empty;.
 

Detailed Description

Abstract base class describing an isobaric quantitation method in terms of the used channels and an isotope correction matrix.

Member Typedef Documentation

◆ IsobaricChannelList

Member Enumeration Documentation

◆ MethodType

enum class MethodType
strong

Identifies a concrete isobaric quantitation method. UNKNOWN is used as a sentinel (disabled/none).

Enumerator
UNKNOWN 
TMT_6PLEX 
TMT_10PLEX 
TMT_11PLEX 
TMT_16PLEX 
TMT_18PLEX 
TMT_32PLEX 
TMT_35PLEX 
ITRAQ_4PLEX 
ITRAQ_8PLEX 
SIZE_OF_METHODTYPE 

keep last

Constructor & Destructor Documentation

◆ IsobaricQuantitationMethod() [1/2]

Default c'tor is deleted: a concrete method must be constructed with its MethodType (see the protected c'tor).

◆ ~IsobaricQuantitationMethod()

d'tor

◆ IsobaricQuantitationMethod() [2/2]

IsobaricQuantitationMethod ( MethodType  method_type)
explicitprotected

c'tor for derived classes: sets the underlying param-handler name and records the concrete method_type.

Member Function Documentation

◆ create()

static std::unique_ptr< IsobaricQuantitationMethod > create ( MethodType  mt)
static

Factory: creates a new instance of the concrete quantitation method identified by mt.

Parameters
mtThe quantitation method to instantiate.
Returns
An owning pointer to the newly created method, or nullptr if mt is MethodType::UNKNOWN (the disabled/none sentinel).
Exceptions
Exception::IllegalArgumentif mt is not a concrete method, i.e. MethodType::SIZE_OF_METHODTYPE or any value outside the enum range.

◆ getChannelInformation()

virtual const IsobaricChannelList & getChannelInformation ( ) const
pure virtual

Returns information on the different channels used by the quantitation method.

Returns
A std::vector containing the channel information for this quantitation method.

Implemented in ItraqEightPlexQuantitationMethod, ItraqFourPlexQuantitationMethod, TMTEighteenPlexQuantitationMethod, TMTElevenPlexQuantitationMethod, TMTSixPlexQuantitationMethod, TMTSixteenPlexQuantitationMethod, TMTTenPlexQuantitationMethod, TMTThirtyFivePlexQuantitationMethod, and TMTThirtyTwoPlexQuantitationMethod.

◆ getIsotopeCorrectionMatrix()

◆ getMethodName()

const std::string & getMethodName ( ) const

Returns a unique name for the quantitation method (its canonical identifier, e.g. "tmt6plex").

Returns
The unique name or identifier of the quantitation method.

◆ getMethodType()

MethodType getMethodType ( ) const
inline

Returns the MethodType enum value of this quantitation method.

◆ getNumberOfChannels()

virtual Size getNumberOfChannels ( ) const
pure virtual

◆ getReferenceChannel()

◆ methodDisplayName()

static std::string_view methodDisplayName ( MethodType  mt)
static

Returns a human-readable display name for a given MethodType (e.g. "TMT 6-plex"); "none" for MethodType::UNKNOWN.

Exceptions
Exception::IllegalArgumentfor an out-of-range value (MethodType::SIZE_OF_METHODTYPE or beyond).

◆ methodTypeFromName()

static MethodType methodTypeFromName ( std::string_view  name)
static

Returns the MethodType corresponding to name (canonical identifier as returned by methodTypeName()), or MethodType::UNKNOWN if not found.

◆ methodTypeName()

static std::string_view methodTypeName ( MethodType  mt)
static

Returns the canonical string identifier for a given MethodType (e.g. "tmt6plex"); "unknown" for MethodType::UNKNOWN.

Exceptions
Exception::IllegalArgumentfor an out-of-range value (MethodType::SIZE_OF_METHODTYPE or beyond).

◆ stringListToIsotopeCorrectionMatrix_()

Matrix< double > stringListToIsotopeCorrectionMatrix_ ( const std::vector< std::string > &  stringlist) const
protected

Helper function to convert a string list containing an isotope correction matrix into a Matrix<double>.

Parameters
[in]stringlistThe StringList to convert.
Returns
An isotope correction matrix as Matrix<double>.

Member Data Documentation

◆ iso_method_

MethodType iso_method_
private

The concrete isobaric method this instance represents; set by the c'tor and returned by getMethodType()/getMethodName().