38 #include <OpenMS/VISUAL/OpenMS_GUIConfig.h>
56 #include <boost/shared_ptr.hpp>
65 class LayerStatistics;
143 static const std::string NamesOfLabelType[SIZE_OF_LABEL_TYPE];
206 return consensus_map_;
212 return consensus_map_;
258 return on_disc_peaks;
264 return chromatogram_map_;
270 return chromatogram_map_;
287 bool annotate(
const std::vector<PeptideIdentification>& identifications,
288 const std::vector<ProteinIdentification>& protein_identifications);
294 return annotations_1d[current_spectrum_idx_];
300 return annotations_1d[current_spectrum_idx_];
306 return annotations_1d[spectrum_index];
312 return annotations_1d[spectrum_index];
324 cached_spectrum_.sortByPosition();
333 return current_spectrum_idx_;
339 current_spectrum_idx_ = index;
350 getChromatogramData().get()->getNrChromatograms() == 0 ?
351 getPeakDataMuteable() :
352 getChromatogramData());
359 return this->getPeakData()->size() > 0 &&
360 this->getPeakData()->metaValueExists(
"is_ion_mobility") &&
361 this->getPeakData()->getMetaValue(
"is_ion_mobility").toBool();
366 peak_map_->setMetaValue(
"is_ion_mobility",
"true");
372 return this->getPeakData()->size() > 0 &&
373 this->getPeakData()->metaValueExists(
"is_dia_data") &&
374 this->getPeakData()->getMetaValue(
"is_dia_data").toBool();
380 peak_map_->setMetaValue(
"is_dia_data",
"true");
393 return this->getPeakData()->size() > 0 &&
394 this->getPeakData()->metaValueExists(
"is_chromatogram") &&
395 this->getPeakData()->getMetaValue(
"is_chromatogram").toBool();
401 peak_map_->setMetaValue(
"is_chromatogram",
"true");
407 if (this->chromatogram_flag_set())
409 peak_map_->removeMetaValue(
"is_chromatogram");
431 virtual std::unique_ptr<LayerStatistics>
getStats()
const = 0;
444 bool flipped =
false;
476 std::vector<Annotations1DContainer> annotations_1d = std::vector<Annotations1DContainer>(1);
482 bool modifiable =
false;
485 bool modified =
false;
491 int peptide_id_index = -1;
492 int peptide_hit_index = -1;
523 Size current_spectrum_idx_ = 0;
579 "Select peptide identification data", gui_lock)
596 "Select AccurateMassSearch's featureXML file", gui_lock)
613 "Select OpenSwath/pyProphet output file", gui_lock)
Container for annotations to content of Plot1DCanvas.
Definition: Annotations1DContainer.h:55
A container for consensus elements.
Definition: ConsensusMap.h:90
DataFilter array providing some convenience functions.
Definition: DataFilters.h:52
A container for features.
Definition: FeatureMap.h:106
holds a vector of known file types, e.g. as a way to specify supported input formats
Definition: FileTypes.h:150
Definition: LayerDataBase.h:592
virtual bool annotateWorker_(LayerDataBase &layer, const String &filename, LogWindow &log) const
LayerAnnotatorAMS(QWidget *gui_lock)
Definition: LayerDataBase.h:594
Definition: LayerDataBase.h:532
QWidget * gui_lock_
optional widget which will be locked when calling annotateWorker_() in child-classes
Definition: LayerDataBase.h:569
const FileTypeList supported_types_
Definition: LayerDataBase.h:567
static std::unique_ptr< LayerAnnotatorBase > getAnnotatorWhichSupports(const FileTypes::Type &type)
bool annotateWithFilename(LayerDataBase &layer, LogWindow &log, const String &filename) const
LayerAnnotatorBase(const FileTypeList &supported_types, const String &file_dialog_text, QWidget *gui_lock)
C'tor with params.
bool annotateWithFileDialog(LayerDataBase &layer, LogWindow &log, const String ¤t_path) const
static std::unique_ptr< LayerAnnotatorBase > getAnnotatorWhichSupports(const String &filename)
see getAnnotatorWhichSupports(const FileTypes::Type& type). File type is queried from filename
const String file_dialog_text_
Definition: LayerDataBase.h:568
virtual bool annotateWorker_(LayerDataBase &layer, const String &filename, LogWindow &log) const =0
Definition: LayerDataBase.h:609
LayerAnnotatorOSW(QWidget *gui_lock)
Definition: LayerDataBase.h:611
virtual bool annotateWorker_(LayerDataBase &layer, const String &filename, LogWindow &log) const
Definition: LayerDataBase.h:575
virtual bool annotateWorker_(LayerDataBase &layer, const String &filename, LogWindow &log) const
LayerAnnotatorPeptideID(QWidget *gui_lock)
Definition: LayerDataBase.h:577
Class that stores the data for one layer.
Definition: LayerDataBase.h:98
void remove_chromatogram_flag()
remove the chromatogram flag
Definition: LayerDataBase.h:405
boost::shared_ptr< ExperimentType > ExperimentSharedPtrType
SharedPtr on MSExperiment.
Definition: LayerDataBase.h:161
const OSWDataSharedPtrType & getChromatogramAnnotation() const
const Annotations1DContainer & getAnnotations(Size spectrum_index) const
Returns a const reference to the annotations of the current spectrum (1D view)
Definition: LayerDataBase.h:304
const ExperimentSharedPtrType & getChromatogramData() const
Returns a mutable reference to the current chromatogram data.
Definition: LayerDataBase.h:262
PeakMap ExperimentType
Main data type (experiment)
Definition: LayerDataBase.h:158
boost::shared_ptr< OnDiscMSExperiment > ODExperimentSharedPtrType
SharedPtr on On-Disc MSExperiment.
Definition: LayerDataBase.h:166
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.
Size getCurrentSpectrumIndex() const
Get the index of the current spectrum (1D view)
Definition: LayerDataBase.h:331
bool annotate(const std::vector< PeptideIdentification > &identifications, const std::vector< ProteinIdentification > &protein_identifications)
virtual std::unique_ptr< LayerStatistics > getStats() const =0
compute layer statistics (via visitor)
LabelType
Label used in visualization.
Definition: LayerDataBase.h:133
@ L_ID_ALL
All peptide hits of the first identification run are used.
Definition: LayerDataBase.h:138
@ L_ID
The best peptide hit of the first identification run is used.
Definition: LayerDataBase.h:137
@ L_NONE
No label is displayed.
Definition: LayerDataBase.h:134
@ L_META_LABEL
The 'label' meta information is used.
Definition: LayerDataBase.h:136
@ L_INDEX
The element number is used.
Definition: LayerDataBase.h:135
LayerDataBase & operator=(const LayerDataBase &ld)=delete
no assignment operator (should not be needed)
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.
LayerDataBase(const LayerDataBase &ld)=delete
no Copy-ctor (should not be needed)
void setCurrentSpectrumIndex(Size index)
Set the index of the current spectrum (1D view)
Definition: LayerDataBase.h:337
virtual std::unique_ptr< Painter1DBase > getPainter1D() const =0
virtual ~LayerDataBase()=default
D'tor.
boost::shared_ptr< FeatureMap > FeatureMapSharedPtrType
SharedPtr on feature map.
Definition: LayerDataBase.h:149
bool isDIAData() const
Check whether the current layer contains DIA (SWATH-MS) data.
Definition: LayerDataBase.h:370
void set_chromatogram_flag()
set the chromatogram flag
Definition: LayerDataBase.h:399
String name_
layer name
Definition: LayerDataBase.h:451
void setOnDiscPeakData(ODExperimentSharedPtrType p)
Set the current on-disc data.
Definition: LayerDataBase.h:250
void removePeakAnnotationsFromPeptideHit(const std::vector< Annotation1DItem * > &selected_annotations)
remove peak annotations in the given list from the currently active PeptideHit
const ConstExperimentSharedPtrType getPeakData() const
Returns a const reference to the current in-memory peak data.
bool isIonMobilityData() const
Check whether the current layer should be represented as ion mobility.
Definition: LayerDataBase.h:357
void setChromatogramAnnotation(OSWData &&data)
add annotation from an OSW sqlite file.
ConsensusMap ConsensusMapType
consensus features
Definition: LayerDataBase.h:152
virtual void updateRanges()=0
Update ranges of the underlying data.
const FeatureMapSharedPtrType & getFeatureMap() const
Returns a const reference to the current feature data.
Definition: LayerDataBase.h:192
OSWDataSharedPtrType & getChromatogramAnnotation()
DataFilters filters
Filters to apply before painting.
Definition: LayerDataBase.h:473
const ExperimentSharedPtrType & getPeakDataMuteable()
Returns a mutable reference to the current in-memory peak data.
Definition: LayerDataBase.h:235
bool chromatogram_flag_set() const
Check whether the current layer is a chromatogram.
Definition: LayerDataBase.h:391
void setPeakData(ExperimentSharedPtrType p)
Set the current in-memory peak data.
Definition: LayerDataBase.h:243
const ODExperimentSharedPtrType & getOnDiscPeakData() const
Returns a mutable reference to the on-disc data.
Definition: LayerDataBase.h:256
void labelAsIonMobilityData() const
Definition: LayerDataBase.h:364
const ConsensusMapSharedPtrType & getConsensusMap() const
Returns a const reference to the consensus feature data.
Definition: LayerDataBase.h:204
void sortCurrentSpectrumByPosition()
Definition: LayerDataBase.h:322
FeatureMapSharedPtrType & getFeatureMap()
Returns a const reference to the current feature data.
Definition: LayerDataBase.h:198
void synchronizePeakAnnotations()
std::bitset< SIZE_OF_FLAGS > flags
Actual state of each flag.
Definition: LayerDataBase.h:129
LayerDataBase()=delete
Default constructor.
boost::shared_ptr< const ExperimentType > ConstExperimentSharedPtrType
Definition: LayerDataBase.h:163
boost::shared_ptr< ConsensusMap > ConsensusMapSharedPtrType
SharedPtr on consensus features.
Definition: LayerDataBase.h:155
ExperimentSharedPtrType & getChromatogramData()
Returns a mutable reference to the current chromatogram data.
Definition: LayerDataBase.h:268
void updatePeptideHitAnnotations_(PeptideHit &hit)
updates the PeakAnnotations in the current PeptideHit with manually changed annotations
LayerDataBase(LayerDataBase &&ld)=default
move C'tor
Flags
Flags that determine which information is shown.
Definition: LayerDataBase.h:116
@ I_PEPTIDEMZ
Identifications: m/z source.
Definition: LayerDataBase.h:123
@ F_HULL
Features: Overall convex hull.
Definition: LayerDataBase.h:117
@ F_UNASSIGNED
Features: Unassigned peptide hits.
Definition: LayerDataBase.h:119
@ P_PRECURSORS
Peaks: Mark precursor peaks of MS/MS scans.
Definition: LayerDataBase.h:120
@ I_LABELS
Identifications: Show labels (not sequences)
Definition: LayerDataBase.h:124
@ P_PROJECTIONS
Peaks: Show projections.
Definition: LayerDataBase.h:121
@ C_ELEMENTS
Consensus features: Show elements.
Definition: LayerDataBase.h:122
@ F_HULLS
Features: Convex hulls of single mass traces.
Definition: LayerDataBase.h:118
LayerDataBase(const DataType type)
C'tor for child classes.
Definition: LayerDataBase.h:176
const String & getName() const
Definition: LayerDataBase.h:454
void updateCache_()
Update current cached spectrum for easy retrieval.
LayerDataBase & operator=(LayerDataBase &&ld)=default
move assignment
Annotations1DContainer & getCurrentAnnotations()
Returns a mutable reference to the annotations of the current spectrum (1D view)
Definition: LayerDataBase.h:298
ConsensusMapSharedPtrType & getConsensusMap()
Returns current consensus map (mutable)
Definition: LayerDataBase.h:210
virtual RangeAllType getRange() const =0
OSWDataSharedPtrType chrom_annotation_
Chromatogram annotation data.
Definition: LayerDataBase.h:520
const Annotations1DContainer & getCurrentAnnotations() const
Returns a const reference to the annotations of the current spectrum (1D view)
Definition: LayerDataBase.h:292
MultiGradient gradient
Gradient for 2D and 3D views.
Definition: LayerDataBase.h:470
Param param
Layer parameters.
Definition: LayerDataBase.h:467
DataType
Definition: LayerDataBase.h:105
@ DT_FEATURE
Feature data.
Definition: LayerDataBase.h:108
@ DT_PEAK
Spectrum profile or centroided data.
Definition: LayerDataBase.h:106
@ DT_CONSENSUS
Consensus feature data.
Definition: LayerDataBase.h:109
@ DT_CHROMATOGRAM
Chromatogram data.
Definition: LayerDataBase.h:107
@ DT_IDENT
Peptide identification data.
Definition: LayerDataBase.h:110
ExperimentSharedPtrType getFullChromData()
Definition: LayerDataBase.h:347
FeatureMap FeatureMapType
Features.
Definition: LayerDataBase.h:146
String filename
file name of the file the data comes from (if available)
Definition: LayerDataBase.h:464
boost::shared_ptr< OSWData > OSWDataSharedPtrType
SharedPtr on OSWData.
Definition: LayerDataBase.h:169
ExperimentType::SpectrumType cached_spectrum_
Current cached spectrum.
Definition: LayerDataBase.h:526
const ExperimentType::SpectrumType & getCurrentSpectrum() const
Returns a const reference to the current spectrum (1D view)
void setName(const String &new_name)
Definition: LayerDataBase.h:458
String getDecoratedName() const
get name augmented with attributes, e.g. [flipped], or '*' if modified
void labelAsDIAData()
Label the current layer as DIA (SWATH-MS) data.
Definition: LayerDataBase.h:378
Annotations1DContainer & getAnnotations(Size spectrum_index)
Returns a mutable reference to the annotations of the current spectrum (1D view)
Definition: LayerDataBase.h:310
std::vector< QColor > peak_colors_1d
Peak colors of the currently shown spectrum.
Definition: LayerDataBase.h:479
A log window (QTextEdit) with convenience functions.
Definition: LogWindow.h:55
In-Memory representation of a mass spectrometry run.
Definition: MSExperiment.h:72
The representation of a 1D spectrum.
Definition: MSSpectrum.h:70
A gradient of multiple colors and arbitrary distances between colors.
Definition: MultiGradient.h:68
Holds all or partial information from an OSW file.
Definition: OSWData.h:305
Representation of a mass spectrometry experiment on disk.
Definition: OnDiscMSExperiment.h:67
Management and storage of parameters / INI files.
Definition: Param.h:70
Representation of a peptide hit.
Definition: PeptideHit.h:57
A more convenient string class.
Definition: String.h:60
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:127
FLASHIda C++ to C# (or vice versa) bridge functions The functions here are called in C# to invoke fun...
Definition: FeatureDeconvolution.h:48
const FileTypeList supported_types({ FileTypes::MZML, FileTypes::MZXML, FileTypes::MZDATA, FileTypes::SQMASS, FileTypes::FEATUREXML, FileTypes::CONSENSUSXML, FileTypes::IDXML, FileTypes::DTA, FileTypes::DTA2D, FileTypes::MGF, FileTypes::MS2, FileTypes::MSP, FileTypes::BZ2, FileTypes::GZ })
supported types which can be opened with File–>Open
std::ostream & operator<<(std::ostream &os, const AccurateMassSearchResult &amsr)
Centralizes the file types recognized by FileHandler.
Definition: FileTypes.h:53
Type
Actual file types enum.
Definition: FileTypes.h:57
@ MZIDENTML
mzIdentML (HUPO PSI AnalysisXML followup format) (.mzid)
Definition: FileTypes.h:75
@ FEATUREXML
OpenMS feature file (.featureXML)
Definition: FileTypes.h:63
@ IDXML
OpenMS identification format (.idXML)
Definition: FileTypes.h:64
@ OSW
OpenSWATH OpenSWATH report (OSW) SQLite DB.
Definition: FileTypes.h:104