OpenMS
MetaInfoInterface Class Reference

Interface for classes that can store arbitrary meta information (Type-Name-Value tuples). More...

#include <OpenMS/METADATA/MetaInfoInterface.h>

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

Public Member Functions

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

Static Public Member Functions

static MetaInfoRegistrymetaRegistry ()
 Returns a reference to the MetaInfoRegistry. More...
 

Protected Member Functions

void createIfNotExists_ ()
 Creates the MetaInfo object if it does not exist. More...
 

Protected Attributes

MetaInfometa_
 Pointer to the MetaInfo object (0 by default) More...
 

Detailed Description

Interface for classes that can store arbitrary meta information (Type-Name-Value tuples).

MetaInfoInterface is a base class for all classes that use one MetaInfo object as member. If you want to add meta information to a class, let it publicly inherit the MetaInfoInterface. Meta information is an array of Type-Name-Value tuples.

Constructor & Destructor Documentation

◆ MetaInfoInterface() [1/3]

Constructor.

◆ MetaInfoInterface() [2/3]

Copy constructor.

◆ MetaInfoInterface() [3/3]

Move constructor.

◆ ~MetaInfoInterface()

Destructor.

Member Function Documentation

◆ addMetaValues()

void addMetaValues ( const MetaInfoInterface from)

function to copy all meta values from one object to this one

Referenced by Observation::merge(), and ScoredProcessingResult::merge().

◆ clearMetaInfo()

void clearMetaInfo ( )

Removes all meta values.

◆ createIfNotExists_()

void createIfNotExists_ ( )
inlineprotected

Creates the MetaInfo object if it does not exist.

◆ getKeys() [1/2]

void getKeys ( std::vector< String > &  keys) const

Fills the given vector with a list of all keys for which a value is set.

◆ getKeys() [2/2]

void getKeys ( std::vector< UInt > &  keys) const

Fills the given vector with a list of all keys for which a value is set.

◆ getMetaValue() [1/4]

◆ getMetaValue() [2/4]

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.

◆ getMetaValue() [3/4]

const DataValue& getMetaValue ( UInt  index) const

Returns the value corresponding to the index, or DataValue::EMPTY if not found.

◆ getMetaValue() [4/4]

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.

◆ isMetaEmpty()

bool isMetaEmpty ( ) const

Returns if the MetaInfo is empty.

◆ metaRegistry()

static MetaInfoRegistry& metaRegistry ( )
static

Returns a reference to the MetaInfoRegistry.

◆ metaValueExists() [1/2]

◆ metaValueExists() [2/2]

bool metaValueExists ( UInt  index) const

Returns whether an entry with the given index exists.

◆ operator!=()

bool operator!= ( const MetaInfoInterface rhs) const

Equality operator.

◆ operator=() [1/2]

MetaInfoInterface& operator= ( const MetaInfoInterface rhs)

Assignment operator.

◆ operator=() [2/2]

MetaInfoInterface& operator= ( MetaInfoInterface &&  )
noexcept

Move assignment operator.

◆ operator==()

bool operator== ( const MetaInfoInterface rhs) const

Equality operator.

Referenced by RichPeak2D::operator==().

◆ removeMetaValue() [1/2]

void removeMetaValue ( const String name)

Removes the DataValue corresponding to name if it exists.

Referenced by MascotGenericFile::getNextSpectrum_().

◆ removeMetaValue() [2/2]

void removeMetaValue ( UInt  index)

Removes the DataValue corresponding to index if it exists.

◆ setMetaValue() [1/2]

◆ setMetaValue() [2/2]

void setMetaValue ( UInt  index,
const DataValue value 
)

Sets the DataValue corresponding to an index.

◆ swap()

void swap ( MetaInfoInterface rhs)

Swap contents.

Referenced by LinearResampler::raster().

Member Data Documentation

◆ meta_

MetaInfo* meta_
protected

Pointer to the MetaInfo object (0 by default)