ProteoWizard
Diff.hpp
Go to the documentation of this file.
1 //
2 // $Id: Diff.hpp 1656 2009-12-30 20:54:17Z chambm $
3 //
4 //
5 // Original author: Matt Chambers <matt.chambers .@. vanderbilt.edu>
6 //
7 // Copyright 2009 Vanderbilt University - Nashville, TN 37232
8 //
9 // Licensed under the Apache License, Version 2.0 (the "License");
10 // you may not use this file except in compliance with the License.
11 // You may obtain a copy of the License at
12 //
13 // http://www.apache.org/licenses/LICENSE-2.0
14 //
15 // Unless required by applicable law or agreed to in writing, software
16 // distributed under the License is distributed on an "AS IS" BASIS,
17 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
18 // See the License for the specific language governing permissions and
19 // limitations under the License.
20 //
21 
22 
23 #ifndef _TRADATA_DIFF_HPP_
24 #define _TRADATA_DIFF_HPP_
25 
26 
28 #include "TraData.hpp"
29 
30 
31 namespace pwiz { namespace tradata { struct DiffConfig; } }
32 
33 
34 namespace pwiz {
35 namespace data {
36 namespace diff_impl {
37 
38 
39 using namespace tradata;
40 
41 
43 void diff(const Contact& a,
44  const Contact& b,
45  Contact& a_b,
46  Contact& b_a,
47  const DiffConfig& config);
48 
50 void diff(const Publication& a,
51  const Publication& b,
52  Publication& a_b,
53  Publication& b_a,
54  const DiffConfig& config);
55 
57 void diff(const RetentionTime& a,
58  const RetentionTime& b,
59  RetentionTime& a_b,
60  RetentionTime& b_a,
61  const DiffConfig& config);
62 
64 void diff(const Prediction& a,
65  const Prediction& b,
66  Prediction& a_b,
67  Prediction& b_a,
68  const DiffConfig& config);
69 
71 void diff(const Evidence& a,
72  const Evidence& b,
73  Evidence& a_b,
74  Evidence& b_a,
75  const DiffConfig& config);
76 
78 void diff(const Validation& a,
79  const Validation& b,
80  Validation& a_b,
81  Validation& b_a,
82  const DiffConfig& config);
83 
85 void diff(const Instrument& a,
86  const Instrument& b,
87  Instrument& a_b,
88  Instrument& b_a,
89  const DiffConfig& config);
90 
92 void diff(const Configuration& a,
93  const Configuration& b,
94  Configuration& a_b,
95  Configuration& b_a,
96  const DiffConfig& config);
97 
99 void diff(const Software& a,
100  const Software& b,
101  Software& a_b,
102  Software& b_a,
103  const DiffConfig& config);
104 
106 void diff(const Interpretation& a,
107  const Interpretation& b,
108  Interpretation& a_b,
109  Interpretation& b_a,
110  const DiffConfig& config);
111 
113 void diff(const Protein& a,
114  const Protein& b,
115  Protein& a_b,
116  Protein& b_a,
117  const DiffConfig& config);
118 
120 void diff(const Modification& a,
121  const Modification& b,
122  Modification& a_b,
123  Modification& b_a,
124  const DiffConfig& config);
125 
127 void diff(const Peptide& a,
128  const Peptide& b,
129  Peptide& a_b,
130  Peptide& b_a,
131  const DiffConfig& config);
132 
134 void diff(const Compound& a,
135  const Compound& b,
136  Compound& a_b,
137  Compound& b_a,
138  const DiffConfig& config);
139 
141 void diff(const Transition& a,
142  const Transition& b,
143  Transition& a_b,
144  Transition& b_a,
145  const DiffConfig& config);
146 
148 void diff(const Target& a,
149  const Target& b,
150  Target& a_b,
151  Target& b_a,
152  const DiffConfig& config);
153 
155 void diff(const TraData& a,
156  const TraData& b,
157  TraData& a_b,
158  TraData& b_a,
159  const DiffConfig& config);
160 
161 } // namespace diff_impl
162 } // namespace data
163 } // namespace pwiz
164 
165 
166 // this include must come after the above declarations or GCC won't see them
168 
169 
170 namespace pwiz {
171 namespace tradata {
172 
173 
174 /// configuration struct for diffs
176 {
178  : BaseDiffConfig(1e-6)
179  {}
180 };
181 
182 
183 PWIZ_API_DECL std::ostream& operator<<(std::ostream& os, const data::Diff<TraData, DiffConfig>& diff);
184 
185 } // namespace tradata
186 } // namespace pwiz
187 
188 
189 #endif // _TRADATA_DIFF_HPP_