OpenMS
2.8.0
|
Class that stores the data for one layer. More...
#include <OpenMS/VISUAL/LayerDataBase.h>
Type definitions | |
enum | DataType { DT_PEAK , DT_CHROMATOGRAM , DT_FEATURE , DT_CONSENSUS , DT_IDENT , DT_UNKNOWN } |
enum | Flags { F_HULL , F_HULLS , F_UNASSIGNED , P_PRECURSORS , P_PROJECTIONS , C_ELEMENTS , I_PEPTIDEMZ , I_LABELS , SIZE_OF_FLAGS } |
Flags that determine which information is shown. More... | |
enum | LabelType { L_NONE , L_INDEX , L_META_LABEL , L_ID , L_ID_ALL , SIZE_OF_LABEL_TYPE } |
Label used in visualization. More... | |
typedef FeatureMap | FeatureMapType |
Features. More... | |
typedef boost::shared_ptr< FeatureMap > | FeatureMapSharedPtrType |
SharedPtr on feature map. More... | |
typedef ConsensusMap | ConsensusMapType |
consensus features More... | |
typedef boost::shared_ptr< ConsensusMap > | ConsensusMapSharedPtrType |
SharedPtr on consensus features. More... | |
typedef PeakMap | ExperimentType |
Main data type (experiment) More... | |
typedef boost::shared_ptr< ExperimentType > | ExperimentSharedPtrType |
SharedPtr on MSExperiment. More... | |
typedef boost::shared_ptr< const ExperimentType > | ConstExperimentSharedPtrType |
typedef boost::shared_ptr< OnDiscMSExperiment > | ODExperimentSharedPtrType |
SharedPtr on On-Disc MSExperiment. More... | |
typedef boost::shared_ptr< OSWData > | OSWDataSharedPtrType |
SharedPtr on OSWData. More... | |
using | RangeAllType = RangeManager< RangeRT, RangeMZ, RangeIntensity, RangeMobility > |
std::bitset< SIZE_OF_FLAGS > | flags |
Actual state of each flag. More... | |
bool | visible = true |
if this layer is visible More... | |
bool | flipped = false |
if this layer is flipped (1d mirror view) More... | |
DataType | type = DT_UNKNOWN |
data type (peak or feature data) More... | |
String | filename |
file name of the file the data comes from (if available) More... | |
Param | param |
Layer parameters. More... | |
MultiGradient | gradient |
Gradient for 2D and 3D views. More... | |
DataFilters | filters |
Filters to apply before painting. More... | |
std::vector< Annotations1DContainer > | annotations_1d = std::vector<Annotations1DContainer>(1) |
Annotations of all spectra of the experiment (1D view) More... | |
std::vector< QColor > | peak_colors_1d |
Peak colors of the currently shown spectrum. More... | |
bool | modifiable = false |
Flag that indicates if the layer data can be modified (so far used for features only) More... | |
bool | modified = false |
Flag that indicates that the layer data was modified since loading it. More... | |
LabelType | label = L_NONE |
Label type. More... | |
int | peptide_id_index = -1 |
Selected peptide id and hit index (-1 if none is selected) More... | |
int | peptide_hit_index = -1 |
static const std::string | NamesOfLabelType [SIZE_OF_LABEL_TYPE] |
Label names. More... | |
String | name_ |
layer name More... | |
FeatureMapSharedPtrType | features_ = FeatureMapSharedPtrType(new FeatureMapType()) |
feature data More... | |
ConsensusMapSharedPtrType | consensus_map_ = ConsensusMapSharedPtrType(new ConsensusMapType()) |
consensus feature data More... | |
ExperimentSharedPtrType | peak_map_ = ExperimentSharedPtrType(new ExperimentType()) |
peak data More... | |
ODExperimentSharedPtrType | on_disc_peaks = ODExperimentSharedPtrType(new OnDiscMSExperiment()) |
on disc peak data More... | |
ExperimentSharedPtrType | chromatogram_map_ = ExperimentSharedPtrType(new ExperimentType()) |
chromatogram data More... | |
OSWDataSharedPtrType | chrom_annotation_ |
Chromatogram annotation data. More... | |
Size | current_spectrum_idx_ = 0 |
Index of the current spectrum. More... | |
ExperimentType::SpectrumType | cached_spectrum_ |
Current cached spectrum. More... | |
LayerDataBase ()=delete | |
Default constructor. More... | |
LayerDataBase (const DataType type) | |
C'tor for child classes. More... | |
LayerDataBase (const LayerDataBase &ld)=delete | |
no Copy-ctor (should not be needed) More... | |
LayerDataBase & | operator= (const LayerDataBase &ld)=delete |
no assignment operator (should not be needed) More... | |
LayerDataBase (LayerDataBase &&ld)=default | |
move C'tor More... | |
LayerDataBase & | operator= (LayerDataBase &&ld)=default |
move assignment More... | |
virtual | ~LayerDataBase ()=default |
D'tor. More... | |
virtual std::unique_ptr< Painter1DBase > | getPainter1D () const =0 |
const FeatureMapSharedPtrType & | getFeatureMap () const |
Returns a const reference to the current feature data. More... | |
FeatureMapSharedPtrType & | getFeatureMap () |
Returns a const reference to the current feature data. More... | |
const ConsensusMapSharedPtrType & | getConsensusMap () const |
Returns a const reference to the consensus feature data. More... | |
ConsensusMapSharedPtrType & | getConsensusMap () |
Returns current consensus map (mutable) More... | |
const ConstExperimentSharedPtrType | getPeakData () const |
Returns a const reference to the current in-memory peak data. More... | |
const ExperimentSharedPtrType & | getPeakDataMuteable () |
Returns a mutable reference to the current in-memory peak data. More... | |
void | setPeakData (ExperimentSharedPtrType p) |
Set the current in-memory peak data. More... | |
void | setOnDiscPeakData (ODExperimentSharedPtrType p) |
Set the current on-disc data. More... | |
const ODExperimentSharedPtrType & | getOnDiscPeakData () const |
Returns a mutable reference to the on-disc data. More... | |
const ExperimentSharedPtrType & | getChromatogramData () const |
Returns a mutable reference to the current chromatogram data. More... | |
ExperimentSharedPtrType & | getChromatogramData () |
Returns a mutable reference to the current chromatogram data. More... | |
OSWDataSharedPtrType & | getChromatogramAnnotation () |
const OSWDataSharedPtrType & | getChromatogramAnnotation () const |
void | setChromatogramAnnotation (OSWData &&data) |
add annotation from an OSW sqlite file. More... | |
bool | annotate (const std::vector< PeptideIdentification > &identifications, const std::vector< ProteinIdentification > &protein_identifications) |
const Annotations1DContainer & | getCurrentAnnotations () const |
Returns a const reference to the annotations of the current spectrum (1D view) More... | |
Annotations1DContainer & | getCurrentAnnotations () |
Returns a mutable reference to the annotations of the current spectrum (1D view) More... | |
const Annotations1DContainer & | getAnnotations (Size spectrum_index) const |
Returns a const reference to the annotations of the current spectrum (1D view) More... | |
Annotations1DContainer & | getAnnotations (Size spectrum_index) |
Returns a mutable reference to the annotations of the current spectrum (1D view) More... | |
const ExperimentType::SpectrumType & | getCurrentSpectrum () const |
Returns a const reference to the current spectrum (1D view) More... | |
void | sortCurrentSpectrumByPosition () |
const ExperimentType::SpectrumType | getSpectrum (Size spectrum_idx) const |
Returns a const-copy of the required spectrum which is guaranteed to be populated with raw data. More... | |
Size | getCurrentSpectrumIndex () const |
Get the index of the current spectrum (1D view) More... | |
void | setCurrentSpectrumIndex (Size index) |
Set the index of the current spectrum (1D view) More... | |
ExperimentSharedPtrType | getFullChromData () |
bool | isIonMobilityData () const |
Check whether the current layer should be represented as ion mobility. More... | |
void | labelAsIonMobilityData () const |
bool | isDIAData () const |
Check whether the current layer contains DIA (SWATH-MS) data. More... | |
void | labelAsDIAData () |
Label the current layer as DIA (SWATH-MS) data. More... | |
bool | chromatogram_flag_set () const |
Check whether the current layer is a chromatogram. More... | |
void | set_chromatogram_flag () |
set the chromatogram flag More... | |
void | remove_chromatogram_flag () |
remove the chromatogram flag More... | |
virtual void | updateRanges ()=0 |
Update ranges of the underlying data. More... | |
float | getMinIntensity () const |
Returns the minimum intensity of the internal data, depending on type. More... | |
float | getMaxIntensity () const |
Returns the maximum intensity of the internal data, depending on type. More... | |
virtual RangeAllType | getRange () const =0 |
virtual std::unique_ptr< LayerStatistics > | getStats () const =0 |
compute layer statistics (via visitor) More... | |
void | synchronizePeakAnnotations () |
void | removePeakAnnotationsFromPeptideHit (const std::vector< Annotation1DItem * > &selected_annotations) |
remove peak annotations in the given list from the currently active PeptideHit More... | |
const String & | getName () const |
void | setName (const String &new_name) |
String | getDecoratedName () const |
get name augmented with attributes, e.g. [flipped], or '*' if modified More... | |
void | updateCache_ () |
Update current cached spectrum for easy retrieval. More... | |
void | updatePeptideHitAnnotations_ (PeptideHit &hit) |
updates the PeakAnnotations in the current PeptideHit with manually changed annotations More... | |
Class that stores the data for one layer.
The data for a layer can be peak data, feature data (feature, consensus), chromatogram or peptide identification data.
For 2D and 3D data, the data is generally accessible through getPeakData() while features are accessible through getFeatureMap() and getConsensusMap(). For 1D data, the current spectrum must be accessed through getCurrentSpectrum().
Peak data is stored using a shared pointer to an MSExperiment data structure as well as a shared pointer to a OnDiscMSExperiment data structure. Note that the actual data may not be in memory as this is not efficient for large files and therefore may have to be retrieved from disk on-demand.
typedef boost::shared_ptr<ConsensusMap> ConsensusMapSharedPtrType |
SharedPtr on consensus features.
typedef ConsensusMap ConsensusMapType |
consensus features
typedef boost::shared_ptr<const ExperimentType> ConstExperimentSharedPtrType |
typedef boost::shared_ptr<ExperimentType> ExperimentSharedPtrType |
SharedPtr on MSExperiment.
typedef PeakMap ExperimentType |
Main data type (experiment)
typedef boost::shared_ptr<FeatureMap> FeatureMapSharedPtrType |
SharedPtr on feature map.
typedef FeatureMap FeatureMapType |
Features.
typedef boost::shared_ptr<OnDiscMSExperiment> ODExperimentSharedPtrType |
SharedPtr on On-Disc MSExperiment.
typedef boost::shared_ptr<OSWData> OSWDataSharedPtrType |
SharedPtr on OSWData.
using RangeAllType = RangeManager<RangeRT, RangeMZ, RangeIntensity, RangeMobility> |
enum DataType |
Dataset types. Order in the enum determines the order in which layer types are drawn.
Enumerator | |
---|---|
DT_PEAK | Spectrum profile or centroided data. |
DT_CHROMATOGRAM | Chromatogram data. |
DT_FEATURE | Feature data. |
DT_CONSENSUS | Consensus feature data. |
DT_IDENT | Peptide identification data. |
DT_UNKNOWN | Undefined data type indicating an error. |
enum Flags |
Flags that determine which information is shown.
enum LabelType |
Label used in visualization.
|
delete |
Default constructor.
|
inline |
C'tor for child classes.
|
delete |
no Copy-ctor (should not be needed)
|
default |
move C'tor
|
virtualdefault |
D'tor.
bool annotate | ( | const std::vector< PeptideIdentification > & | identifications, |
const std::vector< ProteinIdentification > & | protein_identifications | ||
) |
add peptide identifications to the layer Only supported for DT_PEAK, DT_FEATURE and DT_CONSENSUS. Will return false otherwise.
|
inline |
Check whether the current layer is a chromatogram.
This is needed because type will *not* distinguish properly between chromatogram and spectra data. This is due to the fact that we store chromatograms for display in 1D in a data layer using MSSpectrum and so the layer looks like PEAK data to tools.
Referenced by TOPPViewBase::layerZoomChanged(), and TOPPViewBase::runTOPPTool_().
|
inline |
Returns a mutable reference to the annotations of the current spectrum (1D view)
|
inline |
Returns a const reference to the annotations of the current spectrum (1D view)
OSWDataSharedPtrType& getChromatogramAnnotation | ( | ) |
get annotation (e.g. to build a hierarchical ID View) Not const, because we might have incomplete data, which needs to be loaded from sql source
const OSWDataSharedPtrType& getChromatogramAnnotation | ( | ) | const |
get annotation (e.g. to build a hierarchical ID View) Not actually const (only the pointer, not the data), because we might have incomplete data, which needs to be loaded from sql source
|
inline |
Returns a mutable reference to the current chromatogram data.
|
inline |
Returns a mutable reference to the current chromatogram data.
Referenced by TOPPViewBase::updateMenu().
|
inline |
Returns current consensus map (mutable)
|
inline |
Returns a const reference to the consensus feature data.
Referenced by TOPPViewBase::copyLayer(), TOPPViewBase::fileChanged_(), and TOPPViewBase::runTOPPTool_().
|
inline |
Returns a mutable reference to the annotations of the current spectrum (1D view)
|
inline |
Returns a const reference to the annotations of the current spectrum (1D view)
const ExperimentType::SpectrumType& getCurrentSpectrum | ( | ) | const |
Returns a const reference to the current spectrum (1D view)
Referenced by TOPPViewBase::showCurrentPeaksAsDIA(), and TOPPViewBase::showCurrentPeaksAsIonMobility().
|
inline |
Get the index of the current spectrum (1D view)
Referenced by TOPPViewBase::runTOPPTool_(), and TOPPViewBase::showCurrentPeaksAsIonMobility().
String getDecoratedName | ( | ) | const |
get name augmented with attributes, e.g. [flipped], or '*' if modified
|
inline |
Returns a const reference to the current feature data.
|
inline |
Returns a const reference to the current feature data.
Referenced by TOPPViewBase::copyLayer(), TOPPViewBase::fileChanged_(), and TOPPViewBase::runTOPPTool_().
|
inline |
get the full chromExperiment Could be backed up in layer.getChromatogramData() (if layer.getPeakDataMuteable() shows converted chroms already) ... or layer.getChromatogramData() is empty and thus layer.getPeakDataMuteable() is the original chrom data
float getMaxIntensity | ( | ) | const |
Returns the maximum intensity of the internal data, depending on type.
float getMinIntensity | ( | ) | const |
Returns the minimum intensity of the internal data, depending on type.
|
inline |
|
inline |
Returns a mutable reference to the on-disc data.
Referenced by TOPPViewBase::copyLayer(), TOPPViewBase::showCurrentPeaksAs2D(), and TOPPViewBase::showCurrentPeaksAsDIA().
|
pure virtual |
Implemented in LayerDataPeak, LayerDataIdent, LayerDataFeature, LayerDataConsensus, and LayerDataChrom.
const ConstExperimentSharedPtrType getPeakData | ( | ) | const |
Returns a const reference to the current in-memory peak data.
Referenced by TOPPViewBase::addData(), TOPPViewBase::runTOPPTool_(), and TOPPViewBase::showCurrentPeaksAsDIA().
|
inline |
Returns a mutable reference to the current in-memory peak data.
Referenced by TOPPViewBase::copyLayer(), TOPPViewBase::fileChanged_(), TOPPViewBase::showCurrentPeaksAs2D(), and TOPPViewBase::showCurrentPeaksAs3D().
|
pure virtual |
Returns the data range in all known dimensions. If a layer does not support the dimension (or the layer is empty) the dimension will be empty
Implemented in LayerDataPeak, LayerDataIdent, LayerDataFeature, LayerDataConsensus, and LayerDataChrom.
const ExperimentType::SpectrumType getSpectrum | ( | Size | spectrum_idx | ) | const |
Returns a const-copy of the required spectrum which is guaranteed to be populated with raw data.
|
pure virtual |
compute layer statistics (via visitor)
Implemented in LayerDataPeak, LayerDataIdent, LayerDataFeature, LayerDataConsensus, and LayerDataChrom.
|
inline |
Check whether the current layer contains DIA (SWATH-MS) data.
Referenced by TOPPViewBase::showCurrentPeaksAsDIA().
|
inline |
Check whether the current layer should be represented as ion mobility.
Referenced by TOPPViewBase::showCurrentPeaksAs3D().
|
inline |
Label the current layer as DIA (SWATH-MS) data.
|
inline |
|
delete |
no assignment operator (should not be needed)
|
default |
move assignment
|
inline |
remove the chromatogram flag
Referenced by TOPPViewBase::runTOPPTool_().
void removePeakAnnotationsFromPeptideHit | ( | const std::vector< Annotation1DItem * > & | selected_annotations | ) |
remove peak annotations in the given list from the currently active PeptideHit
|
inline |
set the chromatogram flag
void setChromatogramAnnotation | ( | OSWData && | data | ) |
add annotation from an OSW sqlite file.
|
inline |
Set the index of the current spectrum (1D view)
|
inline |
|
inline |
Set the current on-disc data.
|
inline |
Set the current in-memory peak data.
|
inline |
void synchronizePeakAnnotations | ( | ) |
updates the PeakAnnotations in the current PeptideHit with manually changed annotations if no PeptideIdentification or PeptideHit for the spectrum exist, it is generated
|
protected |
Update current cached spectrum for easy retrieval.
|
protected |
updates the PeakAnnotations in the current PeptideHit with manually changed annotations
|
pure virtual |
Update ranges of the underlying data.
Implemented in LayerDataPeak, LayerDataIdent, LayerDataFeature, LayerDataConsensus, and LayerDataChrom.
std::vector<Annotations1DContainer> annotations_1d = std::vector<Annotations1DContainer>(1) |
Annotations of all spectra of the experiment (1D view)
|
protected |
Current cached spectrum.
|
protected |
Chromatogram annotation data.
|
protected |
chromatogram data
|
protected |
consensus feature data
|
protected |
feature data
String filename |
file name of the file the data comes from (if available)
Referenced by TOPPViewBase::copyLayer(), TOPPViewBase::fileChanged_(), TOPPViewBase::showCurrentPeaksAs2D(), TOPPViewBase::showCurrentPeaksAs3D(), TOPPViewBase::showCurrentPeaksAsDIA(), and TOPPViewBase::showCurrentPeaksAsIonMobility().
DataFilters filters |
Filters to apply before painting.
std::bitset<SIZE_OF_FLAGS> flags |
Actual state of each flag.
bool flipped = false |
if this layer is flipped (1d mirror view)
MultiGradient gradient |
Gradient for 2D and 3D views.
Label type.
Referenced by TOPPViewBase::updateToolBar().
bool modifiable = false |
Flag that indicates if the layer data can be modified (so far used for features only)
bool modified = false |
Flag that indicates that the layer data was modified since loading it.
|
private |
layer name
|
static |
Label names.
Referenced by TOPPViewBase::changeLabel(), and TOPPViewBase::TOPPViewBase().
|
protected |
on disc peak data
Param param |
Layer parameters.
Referenced by TOPPViewBase::loadFiles().
std::vector<QColor> peak_colors_1d |
Peak colors of the currently shown spectrum.
|
protected |
peak data
int peptide_hit_index = -1 |
int peptide_id_index = -1 |
Selected peptide id and hit index (-1 if none is selected)
DataType type = DT_UNKNOWN |
data type (peak or feature data)
Referenced by TOPPViewBase::addData(), TOPPViewBase::copyLayer(), TOPPViewBase::fileChanged_(), TOPPViewBase::layerZoomChanged(), TOPPViewBase::runTOPPTool_(), TOPPViewBase::showCurrentPeaksAs3D(), TOPPViewBase::showTOPPDialog_(), TOPPViewBase::updateMenu(), and TOPPViewBase::updateToolBar().
bool visible = true |
if this layer is visible
Referenced by TOPPViewBase::editMetadata(), TOPPViewBase::rerunTOPPTool(), and TOPPViewBase::showTOPPDialog_().