OpenMS  2.4.0
MockObjects.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-2018.
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: Hannes Roest $
32 // $Authors: Hannes Roest $
33 // --------------------------------------------------------------------------
34 
35 #pragma once
36 
37 #include <OpenMS/OPENSWATHALGO/OpenSwathAlgoConfig.h>
39 
40 #include <boost/shared_ptr.hpp>
41 #include <map>
42 #include <vector>
43 
44 namespace OpenSwath
45 {
46 
50  class OPENSWATHALGO_DLLAPI MockFeature :
51  public OpenSwath::IFeature
52  {
53 public:
54 
55  MockFeature();
56 
57  ~MockFeature() override;
58 
59  void getRT(std::vector<double>& rt) const override;
60 
61  void getIntensity(std::vector<double>& intens) const override;
62 
63  float getIntensity() const override;
64 
65  double getRT() const override;
66 
67  std::vector<double> m_rt_vec;
68  std::vector<double> m_intensity_vec;
69  float m_intensity;
70  double m_rt;
71  };
72 
76  class OPENSWATHALGO_DLLAPI MockMRMFeature :
78  {
79 public:
80 
82 
83  ~MockMRMFeature() override;
84 
85  boost::shared_ptr<OpenSwath::IFeature> getFeature(std::string nativeID) override;
86 
87  boost::shared_ptr<OpenSwath::IFeature> getPrecursorFeature(std::string nativeID) override;
88 
89  std::vector<std::string> getNativeIDs() const override;
90 
91  std::vector<std::string> getPrecursorIDs() const override;
92 
93  float getIntensity() const override;
94 
95  double getRT() const override;
96 
97  size_t size() const override;
98 
99  std::map<std::string, boost::shared_ptr<MockFeature> > m_features;
100  std::map<std::string, boost::shared_ptr<MockFeature> > m_precursor_features;
101  float m_intensity;
102  double m_rt;
103  };
104 
108  class OPENSWATHALGO_DLLAPI MockTransitionGroup :
110  {
111 public:
112 
114 
115  ~MockTransitionGroup() override;
116 
117  std::size_t size() const override;
118 
119  std::vector<std::string> getNativeIDs() const override;
120 
121  void getLibraryIntensities(std::vector<double>& intensities) const override;
122 
123  std::size_t m_size;
124  std::vector<std::string> m_native_ids;
125  std::vector<double> m_library_intensities;
126  };
127 
128 
132  class OPENSWATHALGO_DLLAPI MockSignalToNoise :
134  {
135 public:
137 
138  double getValueAtRT(double /* RT */) override;
139 
140  double m_sn_value;
141  };
142 
143 } //end namespace OpenMS
144 
std::vector< double > m_intensity_vec
Definition: MockObjects.h:68
std::vector< std::string > m_native_ids
Definition: MockObjects.h:124
Mock object implementing IMRMFeature.
Definition: MockObjects.h:76
std::map< std::string, boost::shared_ptr< MockFeature > > m_precursor_features
Definition: MockObjects.h:100
Mock object implementing IFeature.
Definition: MockObjects.h:50
Definition: ITransition.h:68
float m_intensity
Definition: MockObjects.h:69
double m_sn_value
Definition: MockObjects.h:140
std::map< std::string, boost::shared_ptr< MockFeature > > m_features
Definition: MockObjects.h:99
Definition: ITransition.h:45
std::vector< double > m_library_intensities
Definition: MockObjects.h:125
Definition: MRMScoring.h:50
std::size_t m_size
Definition: MockObjects.h:123
double m_rt
Definition: MockObjects.h:70
Mock object implementing ITransitionGroup.
Definition: MockObjects.h:108
float m_intensity
Definition: MockObjects.h:101
Definition: ITransition.h:55
std::vector< double > m_rt_vec
Definition: MockObjects.h:67
double m_rt
Definition: MockObjects.h:102
Mock object implementing ISignalToNoise.
Definition: MockObjects.h:132
Definition: ITransition.h:76