OpenMS
TVIdentificationViewController.h
Go to the documentation of this file.
1 // Copyright (c) 2002-2023, The OpenMS Team -- EKU Tuebingen, ETH Zurich, and FU Berlin
2 // SPDX-License-Identifier: BSD-3-Clause
3 //
4 // --------------------------------------------------------------------------
5 // $Maintainer: Timo Sachsenberg$
6 // $Authors: Timo Sachsenberg $
7 // --------------------------------------------------------------------------
8 
9 #pragma once
10 
14 #include <vector>
15 
16 namespace OpenMS
17 {
18  class Annotation1DItem;
19  class NASequence;
20  class SpectraIDViewTab;
21  class TOPPViewBase;
22 
27  : public TVControllerBase
28  {
29  Q_OBJECT
30 
31  public:
34 
35  public slots:
37  virtual void showSpectrumAsNew1D(int spectrum_index, int peptide_id_index, int peptide_hit_index);
38 
40  virtual void showSpectrumAsNew1D(int index);
41 
43  virtual void activate1DSpectrum(int spectrum_index, int peptide_id_index, int peptide_hit_index);
44 
46  virtual void activate1DSpectrum(int index);
47 
49  virtual void deactivate1DSpectrum(int index);
50 
52  void activateBehavior() override;
53 
55  void deactivateBehavior() override;
56 
57  void setVisibleArea1D(double l, double h);
58 
59  private:
61  void addPrecursorLabels1D_(const std::vector<Precursor>& pcs);
62 
64  void removeTemporaryAnnotations_(Size spectrum_index);
65 
68 
71 
74 
76  void removeGraphicalPeakAnnotations_(int spectrum_index);
77 
79  void addPeakAnnotations_(const std::vector<PeptideIdentification>& ph);
80 
82  String n_times(Size n, const String& input);
83 
85  void extractCoverageStrings(std::vector<PeptideHit::PeakAnnotation> frag_annotations, String& alpha_string, String& beta_string, Size alpha_size, Size beta_size);
86 
88  template <typename SeqType>
89  String generateSequenceDiagram_(const SeqType& seq, const std::vector<PeptideHit::PeakAnnotation>& annotations, const StringList& top_ions, const StringList& bottom_ions);
90 
92  void generateSequenceRow_(const AASequence& seq, std::vector<String>& row);
93 
95  void generateSequenceRow_(const NASequence& seq, std::vector<String>& row);
96 
98  String collapseStringVector(std::vector<String> strings);
99 
100  private:
104  std::vector<Annotation1DItem*> temporary_annotations_;
105  };
106 }
Representation of a peptide/protein sequence.
Definition: AASequence.h:86
Representation of a nucleic acid sequence.
Definition: NASequence.h:34
Representation of a peptide hit.
Definition: PeptideHit.h:31
Tabular visualization / selection of identified spectra.
Definition: SpectraIDViewTab.h:33
A more convenient string class.
Definition: String.h:34
Main window of TOPPView tool.
Definition: TOPPViewBase.h:103
Base behavior for different visualizaton modules in TOPPView.
Definition: TVControllerBase.h:23
Behavior of TOPPView in identification mode.
Definition: TVIdentificationViewController.h:28
void addPeakAnnotationsFromID_(const PeptideHit &hit)
Add peak annotatios from id data structure.
virtual void activate1DSpectrum(int spectrum_index, int peptide_id_index, int peptide_hit_index)
Behavior for activate1DSpectrum.
void addTheoreticalSpectrumLayer_(const PeptideHit &ph)
Adds a theoretical spectrum as set from the preferences dialog for the peptide hit.
void removeTheoreticalSpectrumLayer_()
removes all layer with theoretical spectrum generated in identification view
void removeGraphicalPeakAnnotations_(int spectrum_index)
remove all graphical peak annotations
TVIdentificationViewController(TOPPViewBase *parent, SpectraIDViewTab *spec_id_view_)
Construct the behaviour with its parent.
String n_times(Size n, const String &input)
Helper function for text formatting.
String generateSequenceDiagram_(const SeqType &seq, const std::vector< PeptideHit::PeakAnnotation > &annotations, const StringList &top_ions, const StringList &bottom_ions)
Generates HTML for showing the sequence with annotations of matched fragments.
void deactivateBehavior() override
Slot for behavior deactivation.
void extractCoverageStrings(std::vector< PeptideHit::PeakAnnotation > frag_annotations, String &alpha_string, String &beta_string, Size alpha_size, Size beta_size)
Helper function that turns fragment annotations into coverage Strings for visualization with the sequ...
virtual void activate1DSpectrum(int index)
select spectrum without selecting an identification
void removeTemporaryAnnotations_(Size spectrum_index)
Removes the precursor labels for from the specified 1D spectrum.
String collapseStringVector(std::vector< String > strings)
Helper function, that collapses a vector of Strings into one String.
void addPrecursorLabels1D_(const std::vector< Precursor > &pcs)
Adds labels for the provided precursors to the 1D spectrum.
void addPeakAnnotations_(const std::vector< PeptideIdentification > &ph)
Adds annotation (compound name, adducts, ppm error) to a peak in 1D spectra.
virtual void deactivate1DSpectrum(int index)
Behavior for deactivate1DSpectrum.
virtual void showSpectrumAsNew1D(int spectrum_index, int peptide_id_index, int peptide_hit_index)
Behavior for showSpectrumAsNew1D.
void activateBehavior() override
Slot for behavior activation.
SpectraIDViewTab * spec_id_view_
Definition: TVIdentificationViewController.h:101
void generateSequenceRow_(const AASequence &seq, std::vector< String > &row)
Helper function for generateSequenceDiagram_() - overload for peptides.
void generateSequenceRow_(const NASequence &seq, std::vector< String > &row)
Helper function for generateSequenceDiagram_() - overload for oligonucleotides.
void setVisibleArea1D(double l, double h)
virtual void showSpectrumAsNew1D(int index)
Show spectrum without selecting an identification.
std::vector< Annotation1DItem * > temporary_annotations_
Definition: TVIdentificationViewController.h:104
size_t Size
Size type e.g. used as variable which can hold result of size()
Definition: Types.h:101
std::vector< String > StringList
Vector of String.
Definition: ListUtils.h:44
const double h
Definition: Constants.h:141
Main OpenMS namespace.
Definition: FeatureDeconvolution.h:22