Home  · Classes  · Annotated Classes  · Modules  · Members  · Namespaces  · Related Pages
SpectrumCanvas.h
Go to the documentation of this file.
1 // --------------------------------------------------------------------------
2 // OpenMS -- Open-Source Mass Spectrometry
3 // --------------------------------------------------------------------------
4 // Copyright The OpenMS Team -- Eberhard Karls University Tuebingen,
5 // ETH Zurich, and Freie Universitaet Berlin 2002-2017.
6 //
7 // This software is released under a three-clause BSD license:
8 // * Redistributions of source code must retain the above copyright
9 // notice, this list of conditions and the following disclaimer.
10 // * Redistributions in binary form must reproduce the above copyright
11 // notice, this list of conditions and the following disclaimer in the
12 // documentation and/or other materials provided with the distribution.
13 // * Neither the name of any author or any participating institution
14 // may be used to endorse or promote products derived from this software
15 // without specific prior written permission.
16 // For a full list of authors, refer to the file AUTHORS.
17 // --------------------------------------------------------------------------
18 // THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS"
19 // AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
20 // IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
21 // ARE DISCLAIMED. IN NO EVENT SHALL ANY OF THE AUTHORS OR THE CONTRIBUTING
22 // INSTITUTIONS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
23 // EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
24 // PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS;
25 // OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
26 // WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR
27 // OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF
28 // ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
29 //
30 // --------------------------------------------------------------------------
31 // $Maintainer: Timo Sachsenberg $
32 // $Authors: Marc Sturm $
33 // --------------------------------------------------------------------------
34 
35 #ifndef OPENMS_VISUAL_SPECTRUMCANVAS_H
36 #define OPENMS_VISUAL_SPECTRUMCANVAS_H
37 
38 // OpenMS_GUI config
39 #include <OpenMS/VISUAL/OpenMS_GUIConfig.h>
40 
41 //OpenMS
42 #include <OpenMS/CONCEPT/Types.h>
47 
48 //QT
49 #include <QtGui/QWidget>
50 #include <QtGui/QRubberBand>
51 class QWheelEvent;
52 class QKeyEvent;
53 class QMouseEvent;
54 class QFocusEvent;
55 class QMenu;
56 
57 //STL
58 #include <stack>
59 #include <vector>
60 
61 namespace OpenMS
62 {
63  class SpectrumWidget;
64 
96  class OPENMS_GUI_DLLAPI SpectrumCanvas :
97  public QWidget,
98  public DefaultParamHandler
99  {
100  Q_OBJECT
101 
102 public:
105 
118 
127 
132 
133 
136  {
139  AM_MEASURE
140  };
141 
144  {
148  IM_LOG
149  };
150 
152 
154  SpectrumCanvas(const Param & preferences, QWidget * parent = 0);
155 
157  virtual ~SpectrumCanvas();
158 
166  inline void setSpectrumWidget(SpectrumWidget * widget)
167  {
168  spectrum_widget_ = widget;
169  }
170 
178  {
179  return spectrum_widget_;
180  }
181 
188  inline Int getActionMode() const
189  {
190  return action_mode_;
191  }
192 
201  {
202  return intensity_mode_;
203  }
204 
215  {
216  intensity_mode_ = mod;
217  intensityModeChange_();
218  }
219 
225  inline bool gridLinesShown() const
226  {
227  return show_grid_;
228  }
229 
231  inline const LayerData & getLayer(Size index) const
232  {
233  OPENMS_PRECONDITION(index < layers_.size(), "SpectrumCanvas::getLayer(index) index overflow");
234  return layers_[index];
235  }
236 
238  inline const LayerData & getCurrentLayer() const
239  {
240  OPENMS_PRECONDITION(current_layer_ < layers_.size(), "SpectrumCanvas::getCurrentLayer() index overflow");
241  return layers_[current_layer_];
242  }
243 
245  inline Size getCurrentLayerIndex() const
246  {
247  return current_layer_;
248  }
249 
252  {
253  OPENMS_PRECONDITION(current_layer_ < layers_.size(), "SpectrumCanvas::getCurrentLayer() index overflow");
254  return layers_[current_layer_];
255  }
256 
259  {
260  return getLayerFlag(current_layer_, f);
261  }
262 
264  void setLayerFlag(LayerData::Flags f, bool value)
265  {
266  setLayerFlag(current_layer_, f, value);
267  }
268 
270  bool getLayerFlag(Size layer, LayerData::Flags f) const
271  {
272  OPENMS_PRECONDITION(layer < layers_.size(), "SpectrumCanvas::getLayerFlag() index overflow");
273  return layers_[layer].flags.test(f);
274  }
275 
277  void setLayerFlag(Size layer, LayerData::Flags f, bool value)
278  {
279  //abort if there are no layers
280  if (layers_.empty()) return;
281 
282  OPENMS_PRECONDITION(layer < layers_.size(), "SpectrumCanvas::setLayerFlag() index overflow");
283 
284  layers_[layer].flags.set(f, value);
285  update_buffer_ = true;
286  update();
287  }
288 
289  inline void setLabel(LayerData::LabelType label)
290  {
291  //abort if there are no layers
292  if (layers_.empty()) return;
293 
294  OPENMS_PRECONDITION(current_layer_ < layers_.size(), "SpectrumCanvas::setLabel() index overflow");
295  layers_[current_layer_].label = label;
296 
297  update_buffer_ = true;
298  update();
299  }
300 
306  inline const AreaType & getVisibleArea() const
307  {
308  return visible_area_;
309  }
310 
314  virtual void setFilters(const DataFilters & filters);
315 
317  inline bool isMzToXAxis()
318  {
319  return mz_to_x_axis_;
320  }
321 
323  void mzToXAxis(bool mz_to_x_axis);
324 
331  inline Size getLayerCount() const
333  {
334  return layers_.size();
335  }
336 
338  Size activeLayerIndex() const;
340  virtual void activateLayer(Size layer_index) = 0;
342  virtual void removeLayer(Size layer_index) = 0;
353  bool addLayer(ExperimentSharedPtrType map, const String & filename = "");
354 
363  bool addLayer(FeatureMapSharedPtrType map, const String & filename = "");
364 
373  bool addLayer(ConsensusMapSharedPtrType map, const String & filename = "");
375 
384  bool addLayer(std::vector<PeptideIdentification> & peptides,
385  const String & filename = "");
386 
388  inline float getCurrentMinIntensity() const
389  {
390  if (getCurrentLayer().type == LayerData::DT_PEAK || getCurrentLayer().type == LayerData::DT_CHROMATOGRAM)
391  {
392  return getCurrentLayer().getPeakData()->getMinInt();
393  }
394  else if (getCurrentLayer().type == LayerData::DT_FEATURE)
395  {
396  return getCurrentLayer().getFeatureMap()->getMinInt();
397  }
398  else
399  {
400  return getCurrentLayer().getConsensusMap()->getMinInt();
401  }
402  }
403 
405  inline float getCurrentMaxIntensity() const
406  {
407  if (getCurrentLayer().type == LayerData::DT_PEAK || getCurrentLayer().type == LayerData::DT_CHROMATOGRAM)
408  {
409  return getCurrentLayer().getPeakData()->getMaxInt();
410  }
411  else if (getCurrentLayer().type == LayerData::DT_FEATURE)
412  {
413  return getCurrentLayer().getFeatureMap()->getMaxInt();
414  }
415  else
416  {
417  return getCurrentLayer().getConsensusMap()->getMaxInt();
418  }
419  }
420 
422  inline float getMinIntensity(Size index) const
423  {
424  if (getLayer(index).type == LayerData::DT_PEAK || getCurrentLayer().type == LayerData::DT_CHROMATOGRAM)
425  {
426  return getLayer(index).getPeakData()->getMinInt();
427  }
428  else if (getLayer(index).type == LayerData::DT_FEATURE)
429  {
430  return getLayer(index).getFeatureMap()->getMinInt();
431  }
432  else
433  {
434  return getLayer(index).getConsensusMap()->getMinInt();
435  }
436  }
437 
439  inline float getMaxIntensity(Size index) const
440  {
441  if (getLayer(index).type == LayerData::DT_PEAK || getCurrentLayer().type == LayerData::DT_CHROMATOGRAM)
442  {
443  return getLayer(index).getPeakData()->getMaxInt();
444  }
445  else if (getLayer(index).type == LayerData::DT_FEATURE)
446  {
447  return getLayer(index).getFeatureMap()->getMaxInt();
448  }
449  else
450  {
451  return getLayer(index).getConsensusMap()->getMaxInt();
452  }
453  }
454 
456  void setLayerName(Size i, const String & name);
457 
459  String getLayerName(Size i);
460 
462  inline void setCurrentLayerParameters(const Param & param)
463  {
464  getCurrentLayer_().param = param;
465  emit preferencesChange();
466  }
467 
473  const DRange<3> & getDataRange();
474 
480  double getSnapFactor();
481 
483  double getPercentageFactor();
484 
486  virtual void showCurrentLayerPreferences() = 0;
487 
494  virtual void showMetaData(bool modifiable = false, Int index = -1);
495 
501  virtual void saveCurrentLayer(bool visible) = 0;
502 
503 public slots:
504 
511  void changeVisibility(Size i, bool b);
512 
519  void changeLayerFilterState(Size i, bool b);
520 
527  void showGridLines(bool show);
528 
536  void resetZoom(bool repaint = true);
537 
544  void setVisibleArea(AreaType area);
545 
551  virtual void horizontalScrollBarChange(int value);
552 
558  virtual void verticalScrollBarChange(int value);
559 
561  void setAdditionalContextMenu(QMenu * menu);
562 
570  void getVisiblePeakData(ExperimentType & map) const;
571 
572 
580  void getVisibleFeatureData(FeatureMapType & map) const;
581 
589  void getVisibleConsensusData(ConsensusMapType & map) const;
590 
598  void getVisibleIdentifications(std::vector<PeptideIdentification> & peptides) const;
599 
601  virtual void updateLayer(Size i) = 0;
602 
603 signals:
604 
606  void layerModficationChange(Size layer, bool modified);
607 
609  void layerActivated(QWidget * w);
610 
612  void layerZoomChanged(QWidget * w);
613 
620  void visibleAreaChanged(DRange<2> area); //Do not change this to AreaType! QT needs the exact type...
621 
623  void sendCursorStatus(double mz = -1.0, double rt = -1.0);
624 
626  void sendStatusMessage(std::string message, OpenMS::UInt time);
627 
629  void recalculateAxes();
630 
632  void updateVScrollbar(float, float, float, float);
633 
635  void updateHScrollbar(float, float, float, float);
636 
638  void changeLegendVisibility();
639 
641  void actionModeChange();
642 
644  void preferencesChange();
645 
646 protected slots:
647 
649  void updateCursor_();
650 
651 protected:
652 
654  void drawText_(QPainter & painter, QStringList text);
655 
657  double getIdentificationMZ_(const Size layer_index,
658  const PeptideIdentification & peptide) const;
659 
661  virtual bool finishAdding_() = 0;
662 
664  inline LayerData & getLayer_(Size index)
665  {
666  OPENMS_PRECONDITION(index < layers_.size(), "SpectrumCanvas::getLayer_(index) index overflow");
667  return layers_[index];
668  }
669 
672  {
673  return getLayer_(current_layer_);
674  }
675 
677  inline ExperimentSharedPtrType currentPeakData_()
678  {
679  return getCurrentLayer_().getPeakData();
680  }
681 
683 
684  void resizeEvent(QResizeEvent * e);
685  void wheelEvent(QWheelEvent * e);
686  void keyPressEvent(QKeyEvent * e);
687  void keyReleaseEvent(QKeyEvent * e);
688  void focusOutEvent(QFocusEvent * e);
689  void leaveEvent(QEvent * e);
690  void enterEvent(QEvent * e);
692 
694  virtual void intensityModeChange_();
695 
706  virtual void changeVisibleArea_(const AreaType & new_area, bool repaint = true, bool add_to_stack = false);
707 
713  virtual void recalculateSnapFactor_();
714 
716 
717  virtual void zoom_(int x, int y, bool zoom_in);
720  void zoomBack_();
722  virtual void zoomForward_();
724  void zoomAdd_(const AreaType & area);
726  void zoomClear_();
728 
730 
731  virtual void translateLeft_(Qt::KeyboardModifiers m);
734  virtual void translateRight_(Qt::KeyboardModifiers m);
736  virtual void translateForward_();
738  virtual void translateBackward_();
740 
746  virtual void updateScrollbars_();
747 
748 
757  inline PointType widgetToData_(double x, double y)
758  {
759  if (!isMzToXAxis())
760  {
761  return PointType(
762  visible_area_.minX() + (height() - y) / height() * visible_area_.width(),
763  visible_area_.minY() + x / width() * visible_area_.height()
764  );
765  }
766  else
767  {
768  return PointType(
769  visible_area_.minX() + x / width() * visible_area_.width(),
770  visible_area_.minY() + (height() - y) / height() * visible_area_.height()
771  );
772  }
773  }
774 
776  inline PointType widgetToData_(const QPoint & pos)
777  {
778  return widgetToData_(pos.x(), pos.y());
779  }
780 
789  inline void dataToWidget_(double x, double y, QPoint & point)
790  {
791  if (!isMzToXAxis())
792  {
793 
794 
795  if (intensity_mode_ != SpectrumCanvas::IM_LOG)
796  {
797  point.setX(int((y - visible_area_.minY()) / visible_area_.height() * width()));
798  }
799  else // IM_LOG
800  {
801  point.setX(int(
802  std::log10((y - visible_area_.minY()) + 1) / std::log10(visible_area_.height() + 1) * width())
803  );
804  }
805 
806  point.setY(height() - int((x - visible_area_.minX()) / visible_area_.width() * height()));
807  }
808  else
809  {
810  point.setX(int((x - visible_area_.minX()) / visible_area_.width() * width()));
811 
812  if (intensity_mode_ != SpectrumCanvas::IM_LOG)
813  {
814  point.setY(height() - int((y - visible_area_.minY()) / visible_area_.height() * height()));
815  }
816  else // IM_LOG
817  {
818  point.setY(height() - int(
819  std::log10((y - visible_area_.minY()) + 1) / std::log10(visible_area_.height() + 1) * height()
820  ));
821  }
822  }
823  }
824 
826  virtual void paintGridLines_(QPainter & painter);
827 
829  QImage buffer_;
830 
833 
836 
838  std::vector<LayerData> layers_;
839 
842 
849  AreaType visible_area_;
850 
860  void recalculateRanges_(UInt mz_dim, UInt rt_dim, UInt it_dim);
861 
870 
873 
875  std::vector<AreaType> zoom_stack_;
877  std::vector<AreaType>::iterator zoom_pos_;
878 
888  virtual void update_(const char * caller_name);
889 
891  void modificationStatus_(Size layer_index, bool modified);
892 
895 
898 
900  void adjustBuffer_();
901 
904 
907 
914 
920  std::vector<double> snap_factors_;
921 
923  QRubberBand rubber_band_;
924 
926  QMenu * context_add_;
927 
930 
935 
938  {
939  std::set<DataProcessing::ProcessingAction> actions;
940  actions.insert(action);
941 
942  DataProcessingPtr p = boost::shared_ptr<DataProcessing>(new DataProcessing);
943  //actions
944  p->setProcessingActions(actions);
945  //software
946  p->getSoftware().setName("SpectrumCanvas");
947  //version
948  p->getSoftware().setVersion(VersionInfo::getVersion());
949  //time
950  p->setCompletionTime(DateTime::now());
951 
952  for (Size i = 0; i < map.size(); ++i)
953  {
954  map[i].getDataProcessing().push_back(p);
955  }
956  }
957 
958  };
959 }
960 
961 #endif
float getCurrentMaxIntensity() const
Returns the maximum intensity of the active layer.
Definition: SpectrumCanvas.h:405
Flags
Flags that determine which information is shown.
Definition: LayerData.h:79
Description of the applied preprocessing steps.
Definition: DataProcessing.h:52
bool show_grid_
Stores whether or not to show a grid.
Definition: SpectrumCanvas.h:872
bool update_buffer_
Whether to recalculate the data in the buffer when repainting.
Definition: SpectrumCanvas.h:894
LayerData::ExperimentSharedPtrType ExperimentSharedPtrType
Main managed data type (experiment)
Definition: SpectrumCanvas.h:109
float getMaxIntensity(Size index) const
Returns the maximum intensity of the layer with index index.
Definition: SpectrumCanvas.h:439
LayerData::FeatureMapType FeatureMapType
Main data type (features)
Definition: SpectrumCanvas.h:111
float getMinIntensity(Size index) const
Returns the minimum intensity of the layer with index index.
Definition: SpectrumCanvas.h:422
boost::shared_ptr< FeatureMap > FeatureMapSharedPtrType
SharedPtr on feature map.
Definition: LayerData.h:112
std::vector< AreaType >::iterator zoom_pos_
The current position in the zoom stack.
Definition: SpectrumCanvas.h:877
SpectrumType::ConstIterator SpectrumConstIteratorType
Spectrum iterator type (iterates over peaks)
Definition: SpectrumCanvas.h:122
A more convenient string class.
Definition: String.h:57
std::vector< double > snap_factors_
Intensity scaling factor for &#39;snap to maximum intensity mode&#39;.
Definition: SpectrumCanvas.h:920
DPosition< 2 > PointType
Type of the Points.
Definition: SpectrumCanvas.h:129
Shows intensities normalized by layer maximum: f(x)=x/max(x)*100.
Definition: SpectrumCanvas.h:146
const AreaType & getVisibleArea() const
Returns the currently visible area.
Definition: SpectrumCanvas.h:306
bool show_timing_
Flag that determines if timing data is printed to the command line.
Definition: SpectrumCanvas.h:929
std::vector< LayerData > layers_
Layer data.
Definition: SpectrumCanvas.h:838
SpectrumWidget * getSpectrumWidget() const
Returns the spectrum widget.
Definition: SpectrumCanvas.h:177
PointType widgetToData_(const QPoint &pos)
Calls widgetToData_ with x and y position of pos.
Definition: SpectrumCanvas.h:776
LayerData & getLayer_(Size index)
Returns the layer with index index.
Definition: SpectrumCanvas.h:664
LayerData::ConsensusMapType ConsensusMapType
Main data type (consensus features)
Definition: SpectrumCanvas.h:115
QImage buffer_
Buffer that stores the actual peak information.
Definition: SpectrumCanvas.h:829
bool getLayerFlag(Size layer, LayerData::Flags f) const
returns a layer flag of the layer layer
Definition: SpectrumCanvas.h:270
A container for features.
Definition: FeatureMap.h:94
#define OPENMS_PRECONDITION(condition, message)
Precondition macro.
Definition: openms/include/OpenMS/CONCEPT/Macros.h:107
unsigned int UInt
Unsigned integer type.
Definition: Types.h:95
DRange< 3 > overall_data_range_
Stores the data range (m/z, RT and intensity) of all layers.
Definition: SpectrumCanvas.h:869
ActionModes
Mouse action modes.
Definition: SpectrumCanvas.h:135
LayerData::ConsensusMapSharedPtrType ConsensusMapSharedPtrType
Main managed data type (consensus features)
Definition: SpectrumCanvas.h:117
ContainerType::const_iterator ConstIterator
Non-mutable iterator.
Definition: MSSpectrum.h:104
bool mz_to_x_axis_
Stores the mapping of m/z.
Definition: SpectrumCanvas.h:841
Base class for visualization canvas classes.
Definition: SpectrumCanvas.h:96
A container for consensus elements.
Definition: ConsensusMap.h:72
void addDataProcessing_(PeakMap &map, DataProcessing::ProcessingAction action) const
Data processing setter for peak maps.
Definition: SpectrumCanvas.h:937
void setLabel(LayerData::LabelType label)
Definition: SpectrumCanvas.h:289
zoom
Definition: SpectrumCanvas.h:138
bool gridLinesShown() const
Returns if the grid is currently shown.
Definition: SpectrumCanvas.h:225
Size size() const
Definition: MSExperiment.h:132
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:47
SpectrumType::PeakType PeakType
Peak type.
Definition: SpectrumCanvas.h:124
void setSpectrumWidget(SpectrumWidget *widget)
Sets the spectrum widget.
Definition: SpectrumCanvas.h:166
boost::shared_ptr< ExperimentType > ExperimentSharedPtrType
SharedPtr on MSExperiment.
Definition: LayerData.h:124
Chromatogram data.
Definition: LayerData.h:73
PeakIndex selected_peak_
selected peak
Definition: SpectrumCanvas.h:932
void setLayerFlag(LayerData::Flags f, bool value)
sets a layer flag of the current layer
Definition: SpectrumCanvas.h:264
Shows the maximum displayed intensity as if it was the overall maximum intensity. ...
Definition: SpectrumCanvas.h:147
Size current_layer_
Stores the index of the currently active layer.
Definition: SpectrumCanvas.h:897
The representation of a 1D spectrum.
Definition: MSSpectrum.h:67
ExperimentSharedPtrType currentPeakData_()
Returns the currently active layer (mutable)
Definition: SpectrumCanvas.h:677
LayerData & getCurrentLayer_()
Returns the currently active layer.
Definition: SpectrumCanvas.h:671
PeakIndex measurement_start_
start peak of measuring mode
Definition: SpectrumCanvas.h:934
Feature data.
Definition: LayerData.h:71
PointType widgetToData_(double x, double y)
Convert widget to chart coordinates.
Definition: SpectrumCanvas.h:757
void setIntensityMode(IntensityModes mod)
Sets the intensity mode.
Definition: SpectrumCanvas.h:214
ProcessingAction
Definition: DataProcessing.h:59
boost::shared_ptr< DataProcessing > DataProcessingPtr
Definition: DataProcessing.h:127
SpectrumWidget * spectrum_widget_
Back-pointer to the enclosing spectrum widget.
Definition: SpectrumCanvas.h:903
void dataToWidget_(double x, double y, QPoint &point)
Convert chart to widget coordinates.
Definition: SpectrumCanvas.h:789
boost::shared_ptr< ConsensusMap > ConsensusMapSharedPtrType
SharedPtr on consensus features.
Definition: LayerData.h:118
IntensityModes getIntensityMode() const
Returns the intensity mode.
Definition: SpectrumCanvas.h:200
A 1-dimensional raw data point or peak.
Definition: Peak1D.h:55
Base class for spectrum widgets.
Definition: SpectrumWidget.h:74
bool isMzToXAxis()
Returns the mapping of m/z to axes.
Definition: SpectrumCanvas.h:317
LayerData & getCurrentLayer()
returns the layer data of the active layer
Definition: SpectrumCanvas.h:251
float getCurrentMinIntensity() const
Returns the minimum intensity of the active layer.
Definition: SpectrumCanvas.h:388
An LC-MS feature.
Definition: Feature.h:70
bool getLayerFlag(LayerData::Flags f) const
returns a layer flag of the current layer
Definition: SpectrumCanvas.h:258
Logarithmic mode.
Definition: SpectrumCanvas.h:148
void setCurrentLayerParameters(const Param &param)
Sets the parameters of the current layer.
Definition: SpectrumCanvas.h:462
Management and storage of parameters / INI files.
Definition: Param.h:75
void setLayerFlag(Size layer, LayerData::Flags f, bool value)
sets a layer flag of the layer layer
Definition: SpectrumCanvas.h:277
In-Memory representation of a mass spectrometry experiment.
Definition: MSExperiment.h:82
QRubberBand rubber_band_
Rubber band for selected area.
Definition: SpectrumCanvas.h:923
double percentage_factor_
Intensity scaling factor for relative scale with multiple layers.
Definition: SpectrumCanvas.h:913
Normal mode: f(x)=x.
Definition: SpectrumCanvas.h:145
static String getVersion()
Return the version number of OpenMS.
DRange< 2 > AreaType
Types of Ranges/Areas.
Definition: SpectrumCanvas.h:131
Int getActionMode() const
Returns the action mode.
Definition: SpectrumCanvas.h:188
LayerData::FeatureMapSharedPtrType FeatureMapSharedPtrType
Main managed data type (features)
Definition: SpectrumCanvas.h:113
QMenu * context_add_
External context menu extension.
Definition: SpectrumCanvas.h:926
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:128
FeatureMapType::FeatureType FeatureType
Feature type.
Definition: SpectrumCanvas.h:126
translate
Definition: SpectrumCanvas.h:137
LabelType
Label used in visualization.
Definition: LayerData.h:95
IntensityModes intensity_mode_
Stores the used intensity mode function.
Definition: SpectrumCanvas.h:835
Spectrum profile or centroided data.
Definition: LayerData.h:70
Size getCurrentLayerIndex() const
returns the index of the active layer
Definition: SpectrumCanvas.h:245
A base class for all classes handling default parameters.
Definition: DefaultParamHandler.h:92
IntensityModes
Display modes of intensity.
Definition: SpectrumCanvas.h:143
static DateTime now()
Returns the current date and time.
DataFilter array providing some convenience functions.
Definition: DataFilters.h:51
LayerData::ExperimentType ExperimentType
Main data type (experiment)
Definition: SpectrumCanvas.h:107
ActionModes action_mode_
Stores the current action mode (Pick, Zoom, Translate)
Definition: SpectrumCanvas.h:832
AreaType visible_area_
Stores the currently visible area.
Definition: SpectrumCanvas.h:849
std::vector< AreaType > zoom_stack_
The zoom stack.
Definition: SpectrumCanvas.h:875
int Int
Signed integer type.
Definition: Types.h:103
const LayerData & getCurrentLayer() const
returns the layer data of the active layer
Definition: SpectrumCanvas.h:238
Class that stores the data for one layer.
Definition: LayerData.h:62
Index of a peak or feature.
Definition: PeakIndex.h:51
const LayerData & getLayer(Size index) const
returns the layer data with index index
Definition: SpectrumCanvas.h:231
QPoint last_mouse_pos_
start position of mouse actions
Definition: SpectrumCanvas.h:906
Represents the peptide hits for a spectrum.
Definition: PeptideIdentification.h:63
ExperimentType::SpectrumType SpectrumType
Spectrum type.
Definition: SpectrumCanvas.h:120

OpenMS / TOPP release 2.3.0 Documentation generated on Tue Jan 9 2018 18:22:04 using doxygen 1.8.13