49 #include <OpenMS/OpenMSConfig.h>
56 class PeptideIdentification;
58 class ProteinIdentification;
81 private std::vector<ConsensusFeature>,
91 typedef std::vector<ConsensusFeature>
privvec;
94 using privvec::value_type;
95 using privvec::iterator;
96 using privvec::const_iterator;
97 using privvec::size_type;
98 using privvec::pointer;
99 using privvec::reference;
100 using privvec::const_reference;
101 using privvec::difference_type;
104 using privvec::begin;
108 using privvec::resize;
109 using privvec::empty;
110 using privvec::reserve;
111 using privvec::operator[];
114 using privvec::push_back;
115 using privvec::emplace_back;
116 using privvec::erase;
152 return static_cast<unsigned int>(
getMetaValue(
"channel_id")) + 1;
156 if (experiment_type !=
"label-free")
160 OPENMS_LOG_WARN <<
"No channel id annotated in labelled consensusXML. Assuming only a single channel was used." << std::endl;
170 typedef std::vector<ConsensusFeature>
Base;
174 typedef std::vector<ConsensusFeature>::iterator
Iterator;
224 OPENMS_DLLAPI
void clear(
bool clear_meta_data =
true);
338 template <
typename Type>
341 Size assignments = 0;
342 assignments += ((*this).*member_function)();
343 for (
Iterator iter = this->begin(); iter != this->end(); ++iter)
345 assignments += ((*iter).*member_function)();
351 template <
typename Type>
354 Size assignments = 0;
355 assignments += ((*this).*member_function)();
356 for (
ConstIterator iter = this->begin(); iter != this->end(); ++iter)
358 assignments += ((*iter).*member_function)();
#define OPENMS_LOG_WARN
Macro if a warning, a piece of information which should be read by the user, should be logged.
Definition: LogStream.h:460
A consensus feature spanning multiple LC-MS/MS experiments.
Definition: ConsensusFeature.h:71
A container for consensus elements.
Definition: ConsensusMap.h:88
RangeManager< 2 > RangeManagerType
Definition: ConsensusMap.h:171
SplitMeta
Definition: ConsensusMap.h:119
@ COPY_FIRST
copy all meta values to first feature map
@ COPY_ALL
copy all meta values to all feature maps
@ DISCARD
do not copy any meta values
String experiment_type_
type of experiment (label-free, labeled_MS1, labeled_MS2)
Definition: ConsensusMap.h:398
void sortByRT()
Sorts the peaks to RT position.
const std::vector< DataProcessing > & getDataProcessing() const
returns a const reference to the description of the applied data processing
std::vector< PeptideIdentification > & getUnassignedPeptideIdentifications()
mutable access to the unassigned peptide identifications
Size applyMemberFunction(Size(Type::*member_function)())
Applies a member function of Type to the container itself and all consensus features....
Definition: ConsensusMap.h:339
ConsensusMap & operator=(const ConsensusMap &source)
Assignment operator.
std::vector< ConsensusFeature > Base
Definition: ConsensusMap.h:170
void setUnassignedPeptideIdentifications(const std::vector< PeptideIdentification > &unassigned_peptide_identifications)
sets the unassigned peptide identifications
std::vector< ConsensusFeature >::iterator Iterator
Mutable iterator.
Definition: ConsensusMap.h:174
void setPrimaryMSRunPath(const StringList &s)
set the file paths to the primary MS run (stored in ColumnHeaders)
void sortByMaps()
Sorts with respect to the sets of maps covered by the consensus features (lexicographically).
bool isMapConsistent(Logger::LogStream *stream=nullptr) const
checks if the given maps are unique and all FeatureHandles actually refer to a registered map
std::vector< DataProcessing > data_processing_
applied data processing
Definition: ConsensusMap.h:407
ConsensusMap & appendColumns(const ConsensusMap &rhs)
Add consensus map entries as new columns.
void sortPeptideIdentificationsByMapIndex()
Sorts PeptideIdentifications of consensus features with respect to their map index.
void sortByMZ()
Sorts the peaks to m/z position.
std::vector< ProteinIdentification > & getProteinIdentifications()
mutable access to the protein identifications
bool operator!=(const ConsensusMap &rhs) const
Equality operator.
void setProteinIdentifications(const std::vector< ProteinIdentification > &protein_identifications)
sets the protein identifications
std::vector< ConsensusFeature >::const_reverse_iterator ConstReverseIterator
Non-mutable reverse iterator.
Definition: ConsensusMap.h:180
const ColumnHeaders & getColumnHeaders() const
Non-mutable access to the file descriptions.
bool operator==(const ConsensusMap &rhs) const
Equality operator.
void sortBySize()
Sorts with respect to the size (number of elements)
ConsensusFeature FeatureType
Definition: ConsensusMap.h:169
void clear(bool clear_meta_data=true)
Clears all data and meta data.
ConsensusMap()
Default constructor.
std::vector< FeatureMap > split(SplitMeta mode=SplitMeta::DISCARD) const
splits ConsensusMap into its original FeatureMaps
void setProteinIdentifications(std::vector< ProteinIdentification > &&protein_identifications)
sets the protein identifications by moving
void sortByPosition()
Lexicographically sorts the peaks by their position (First RT then m/z).
const String & getExperimentType() const
Non-mutable access to the experiment type.
void setDataProcessing(const std::vector< DataProcessing > &processing_method)
sets the description of the applied data processing
void sortByIntensity(bool reverse=false)
Sorts the peaks according to ascending intensity.
std::vector< DataProcessing > & getDataProcessing()
returns a mutable reference to the description of the applied data processing
void getPrimaryMSRunPath(StringList &toFill) const
returns the MS run path (stored in ColumnHeaders)
std::vector< ConsensusFeature >::const_iterator ConstIterator
Non-mutable iterator.
Definition: ConsensusMap.h:176
ConsensusMap(Base::size_type n)
Creates a ConsensusMap with n elements.
std::map< UInt64, ColumnHeader > ColumnHeaders
Definition: ConsensusMap.h:172
ConsensusMap & appendRows(const ConsensusMap &rhs)
Add consensus map entries as new rows.
std::vector< PeptideIdentification > unassigned_peptide_identifications_
unassigned peptide identifications (without feature)
Definition: ConsensusMap.h:404
~ConsensusMap() override
Destructor.
const std::vector< ProteinIdentification > & getProteinIdentifications() const
non-mutable access to the protein identifications
const std::vector< PeptideIdentification > & getUnassignedPeptideIdentifications() const
non-mutable access to the unassigned peptide identifications
void setColumnHeaders(const ColumnHeaders &column_description)
Mutable access to the file descriptions.
std::vector< ConsensusFeature >::reverse_iterator ReverseIterator
Mutable reverse iterator.
Definition: ConsensusMap.h:178
void sortByQuality(bool reverse=false)
Sorts the peaks according to ascending quality.
ColumnHeaders column_description_
Map from index to file description.
Definition: ConsensusMap.h:395
void swap(ConsensusMap &from)
Swaps the content of this map with the content of from.
std::vector< ProteinIdentification > protein_identifications_
protein identifications
Definition: ConsensusMap.h:401
ColumnHeaders & getColumnHeaders()
Mutable access to the file descriptions.
ConsensusMap(const ConsensusMap &source)
Copy constructor.
void updateRanges() override
Updates minimum and maximum position/intensity.
void setPrimaryMSRunPath(const StringList &s, MSExperiment &e)
std::vector< ConsensusFeature > privvec
Definition: ConsensusMap.h:91
void setExperimentType(const String &experiment_type)
Mutable access to the experiment type.
Size applyMemberFunction(Size(Type::*member_function)() const) const
The "const" variant.
Definition: ConsensusMap.h:352
Manage source document information.
Definition: DocumentIdentifier.h:56
Log Stream Class.
Definition: LogStream.h:313
In-Memory representation of a mass spectrometry experiment.
Definition: MSExperiment.h:80
Utilities for Feature and ConsensusMap.
Definition: MapUtilities.h:50
Handles the management of a position and intensity range.
Definition: RangeManager.h:48
A more convenient string class.
Definition: String.h:61
A base class for random access containers for classes derived from UniqueIdInterface that adds functi...
Definition: UniqueIdIndexer.h:64
A base class defining a common interface for all classes having a unique id.
Definition: UniqueIdInterface.h:52
@ INVALID
Definition: UniqueIdInterface.h:61
OPENMS_UINT64_TYPE UInt64
Unsigned integer type (64bit)
Definition: Types.h:77
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
std::vector< String > StringList
Vector of String.
Definition: ListUtils.h:70
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
std::ostream & operator<<(std::ostream &os, const AccurateMassSearchResult &amsr)
Description of the columns in a consensus map.
Definition: ConsensusMap.h:128
ColumnHeader & operator=(const ColumnHeader &)=default
Copy assignment.
ColumnHeader()=default
Default constructor.
ColumnHeader(const ColumnHeader &)=default
Copy constructor.
unsigned getLabelAsUInt(const String &experiment_type) const
Definition: ConsensusMap.h:148
String filename
File name of the mzML file.
Definition: ConsensusMap.h:139
String label
Label e.g. 'heavy' and 'light' for ICAT, or 'sample1' and 'sample2' for label-free quantitation.
Definition: ConsensusMap.h:141