ProteoWizard
Diff.hpp
Go to the documentation of this file.
1 //
2 // $Id$
3 //
4 //
5 // Original author: Robert Burke <robert.burke@proteowizard.org>
6 //
7 // Copyright 2009 Spielberg Family Center for Applied Proteomics
8 // University of Southern California, Los Angeles, California 90033
9 //
10 // Licensed under the Apache License, Version 2.0 (the "License");
11 // you may not use this file except in compliance with the License.
12 // You may obtain a copy of the License at
13 //
14 // http://www.apache.org/licenses/LICENSE-2.0
15 //
16 // Unless required by applicable law or agreed to in writing, software
17 // distributed under the License is distributed on an "AS IS" BASIS,
18 // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
19 // See the License for the specific language governing permissions and
20 // limitations under the License.
21 //
22 
23 
24 #ifndef _MSIDDATA_DIFF_HPP_
25 #define _MSIDDATA_DIFF_HPP_
26 
28 #include "IdentData.hpp"
29 
30 namespace pwiz { namespace identdata { struct DiffConfig; } }
31 
32 
33 namespace pwiz {
34 namespace data {
35 namespace diff_impl {
36 
37 using namespace identdata;
38 
40 void diff(const FragmentArray& a,
41  const FragmentArray& b,
42  FragmentArray& a_b,
43  FragmentArray& b_a,
44  const DiffConfig& config);
45 
47 void diff(const IonType& a,
48  const IonType& b,
49  IonType& a_b,
50  IonType& b_a,
51  const DiffConfig& config);
52 
54 void diff(const Measure& a,
55  const Measure& b,
56  Measure& a_b,
57  Measure& b_a,
58  const DiffConfig& config);
59 
61 void diff(const PeptideEvidence& a,
62  const PeptideEvidence& b,
63  PeptideEvidence& a_b,
64  PeptideEvidence& b_a,
65  const DiffConfig& config);
66 
69  const ProteinAmbiguityGroup& b,
72  const DiffConfig& config);
73 
75 void diff(const PeptideHypothesis& a,
76  const PeptideHypothesis& b,
77  PeptideHypothesis& a_b,
78  PeptideHypothesis& b_a,
79  const DiffConfig& config);
80 
86  const DiffConfig& config);
87 
89 void diff(const DataCollection& a,
90  const DataCollection& b,
91  DataCollection& a_b,
92  DataCollection& b_a,
93  const DiffConfig& config);
94 
96 void diff(const SpectrumIdentificationListPtr a,
97  const SpectrumIdentificationListPtr b,
98  SpectrumIdentificationListPtr a_b,
99  SpectrumIdentificationListPtr b_a,
100  const DiffConfig& config);
101 
107  const DiffConfig& config);
108 
111  const ProteinDetectionList& b,
114  const DiffConfig& config);
115 
117 void diff(const AnalysisData& a,
118  const AnalysisData& b,
119  AnalysisData& a_b,
120  AnalysisData& b_a,
121  const DiffConfig& config);
122 
124 void diff(const SearchDatabase& a,
125  const SearchDatabase& b,
126  SearchDatabase& a_b,
127  SearchDatabase& b_a,
128  const DiffConfig& config);
129 
131 void diff(const SpectraData& a,
132  const SpectraData& b,
133  SpectraData& a_b,
134  SpectraData& b_a,
135  const DiffConfig& config);
136 
138 void diff(const SourceFile& a,
139  const SourceFile& b,
140  SourceFile& a_b,
141  SourceFile& b_a,
142  const DiffConfig& config);
143 
145 void diff(const Inputs& a,
146  const Inputs& b,
147  Inputs& a_b,
148  Inputs& b_a,
149  const DiffConfig& config);
150 
152 void diff(const Enzyme& a,
153  const Enzyme& b,
154  Enzyme& a_b,
155  Enzyme& b_a,
156  const DiffConfig& config);
157 
159 void diff(const Enzymes& a,
160  const Enzymes& b,
161  Enzymes& a_b,
162  Enzymes& b_a,
163  const DiffConfig& config);
164 
166 void diff(const MassTable& a,
167  const MassTable& b,
168  MassTable& a_b,
169  MassTable& b_a,
170  const DiffConfig& config);
171 
173 void diff(const Residue& a,
174  const Residue& b,
175  Residue& a_b,
176  Residue& b_a,
177  const DiffConfig& config);
178 
180 void diff(const AmbiguousResidue& a,
181  const AmbiguousResidue& b,
182  AmbiguousResidue& a_b,
183  AmbiguousResidue& b_a,
184  const DiffConfig& config);
185 
187 void diff(const Filter& a,
188  const Filter& b,
189  Filter& a_b,
190  Filter& b_a,
191  const DiffConfig& config);
192 
194 void diff(const DatabaseTranslation& a,
195  const DatabaseTranslation& b,
196  DatabaseTranslation& a_b,
197  DatabaseTranslation& b_a,
198  const DiffConfig& config);
199 
205  const DiffConfig& config);
206 
209  const ProteinDetectionProtocol& b,
212  const DiffConfig& config);
213 
219  const DiffConfig& config);
220 
222 void diff(const Contact& a,
223  const Contact& b,
224  Contact& a_b,
225  Contact& b_a,
226  const DiffConfig& config);
227 
229 void diff(const Person& a,
230  const Person& b,
231  Person& a_b,
232  Person& b_a,
233  const DiffConfig& config);
234 
236 void diff(const Organization& a,
237  const Organization& b,
238  Organization& a_b,
239  Organization& b_a,
240  const DiffConfig& config);
241 
244  const BibliographicReference& b,
247  const DiffConfig& config);
248 
250 void diff(const ProteinDetection& a,
251  const ProteinDetection& b,
252  ProteinDetection& a_b,
253  ProteinDetection& b_a,
254  const DiffConfig& config);
255 
258  const SpectrumIdentification& b,
261  const DiffConfig& config);
262 
264 void diff(const AnalysisCollection& a,
265  const AnalysisCollection& b,
266  AnalysisCollection& a_b,
267  AnalysisCollection& b_a,
268  const DiffConfig& config);
269 
271 void diff(const DBSequence& a,
272  const DBSequence& b,
273  DBSequence& a_b,
274  DBSequence& b_a,
275  const DiffConfig& config);
276 
278 void diff(const Modification& a,
279  const Modification& b,
280  Modification& a_b,
281  Modification& b_a,
282  const DiffConfig& config);
283 
286  const SubstitutionModification& b,
289  const DiffConfig& config);
290 
292 void diff(const Peptide& a,
293  const Peptide& b,
294  Peptide& a_b,
295  Peptide& b_a,
296  const DiffConfig& config);
297 
299 void diff(const SequenceCollection& a,
300  const SequenceCollection& b,
301  SequenceCollection& a_b,
302  SequenceCollection& b_a,
303  const DiffConfig& config);
304 
306 void diff(const Sample& a,
307  const Sample& b,
308  Sample& a_b,
309  Sample& b_a,
310  const DiffConfig& config);
311 
313 void diff(const SearchModification& a,
314  const SearchModification& b,
315  SearchModification& a_b,
316  SearchModification& b_a,
317  const DiffConfig& config);
318 
324  const DiffConfig& config);
325 
331  const DiffConfig& config);
332 
335  const AnalysisSampleCollection& b,
338  const DiffConfig& config);
339 
341 void diff(const Provider& a,
342  const Provider& b,
343  Provider& a_b,
344  Provider& b_a,
345  const DiffConfig& config);
346 
348 void diff(const ContactRole& a,
349  const ContactRole& b,
350  ContactRole& a_b,
351  ContactRole& b_a,
352  const DiffConfig& config);
353 
355 void diff(const AnalysisSoftware& a,
356  const AnalysisSoftware& b,
357  AnalysisSoftware& a_b,
358  AnalysisSoftware& b_a,
359  const DiffConfig& config);
360 
362 void diff(const IdentData& a,
363  const IdentData& b,
364  IdentData& a_b,
365  IdentData& b_a,
366  const DiffConfig& config);
367 
369 void diff(const Identifiable& a,
370  const Identifiable& b,
371  Identifiable& a_b,
372  Identifiable& b_a,
373  const DiffConfig& config);
374 
380  const DiffConfig& config);
381 
382 } // namespace diff_impl
383 } // namespace data
384 } // namespace pwiz
385 
386 
387 
388 // this include must come after the above declarations or GCC won't see them
390 
391 
392 namespace pwiz {
393 namespace identdata {
394 
396 {
398  : BaseDiffConfig(1.2e-6) // Hack to make the maxdiff work
399  {}
400 };
401 
402 
403 PWIZ_API_DECL std::ostream& operator<<(std::ostream& os, const data::Diff<IdentData, DiffConfig>& diff);
404 
405 } // namespace identdata
406 } // namespace pwiz
407 
408 #endif // _MSIDDATA_DIFF_HPP_
pwiz::identdata::SpectrumIdentificationItem
Implementation of SpectrumIdentificationItemType from the mzIdentML schema.
Definition: IdentData.hpp:670
pwiz::identdata::Person
Implementation of PersonType from the mzIdentML schema.
Definition: IdentData.hpp:153
pwiz::identdata::PeptideEvidence
Implementation of PeptideEvidenceType from the mzIdentML schema.
Definition: IdentData.hpp:627
pwiz::data::BaseDiffConfig
Definition: diff_std.hpp:42
pwiz::identdata::DiffConfig
Definition: Diff.hpp:396
pwiz::identdata::Residue
Implementation of ResidueType from the mzIdentML schema.
Definition: IdentData.hpp:446
pwiz
Definition: ChromatogramList_Filter.hpp:36
pwiz::identdata::AmbiguousResidue
Implementation of AmbiguousResidueType from the mzIdentML schema.
Definition: IdentData.hpp:464
pwiz::identdata::SpectrumIdentificationResult
Implementation of SpectrumIdentificationResultType from the mzIdentML schema.
Definition: IdentData.hpp:723
pwiz::identdata::ProteinDetectionHypothesis
Implementation of ProteinDetectionHypothesisType from the mzIdentML schema.
Definition: IdentData.hpp:820
pwiz::identdata::SpectraData
Implementation of SpectraDataType from the mzIdentML schema.
Definition: IdentData.hpp:698
pwiz::identdata::Provider
Implementation of ProviderType from the mzIdentML schema.
Definition: IdentData.hpp:235
pwiz::identdata::SubstitutionModification
Implementation of SubstitutionModificationType from the mzIdentML schema.
Definition: IdentData.hpp:350
pwiz::identdata::Contact
Implementation of ContactType from mzIdentML.
Definition: IdentData.hpp:118
pwiz::identdata::SourceFile
Implementation of SourceFileType from the mzIdentML schema.
Definition: IdentData.hpp:924
PWIZ_API_DECL
#define PWIZ_API_DECL
Definition: Export.hpp:32
pwiz::identdata::Organization
Implementation of AbstractOrganizationType from the mzIdentML schema.
Definition: IdentData.hpp:136
pwiz::identdata::IonType
Implementation of IonTypeType from the mzIdentML schema.
Definition: IdentData.hpp:608
pwiz::identdata::ProteinDetection
Implementation of ProteinDetectionType from the mzIdentML schema.
Definition: IdentData.hpp:873
pwiz::identdata::Enzyme
Implementation of EnzymeType from the mzIdentML schema.
Definition: IdentData.hpp:409
pwiz::data::diff_impl::diff
PWIZ_API_DECL void diff(const std::string &a, const std::string &b, std::string &a_b, std::string &b_a, const BaseDiffConfig &config)
Export.hpp
pwiz::identdata::Identifiable
Parent class representing extensions of the IdentifiableType from the mzIdentML schema.
Definition: IdentData.hpp:65
pwiz::identdata::BibliographicReference
Implementation for the BibliographicReferenceType tag in the mzIdentML schema.
Definition: IdentData.hpp:96
pwiz::data::Diff
Calculate diffs of objects in a ProteoWizard data model hierarchy.
Definition: diff_std.hpp:143
pwiz::identdata::PeptideHypothesis
Implementation of PeptideHypothesisType from the mzIdentML schema.
Definition: IdentData.hpp:807
pwiz::identdata::Modification
Implementation of ModificationType from the mzIdentML schema.
Definition: IdentData.hpp:330
pwiz::identdata::DatabaseTranslation
Implementation of DatabaseTranslationType from the mzIdentML schema.
Definition: IdentData.hpp:531
pwiz::identdata::ProteinDetectionList
Implementation of ProteinDetectionListType from the mzIdentML schema.
Definition: IdentData.hpp:856
pwiz::identdata::Inputs
Implementation of the InputsType from the mzIdentML schema.
Definition: IdentData.hpp:944
pwiz::identdata::FragmentArray
Implementation of FragmentArrayType from the mzIdentML schema.
Definition: IdentData.hpp:590
pwiz::identdata::AnalysisProtocolCollection
Implementation of AnalysisProtocolCollectionType from the mzIdentML schema.
Definition: IdentData.hpp:910
pwiz::identdata::ProteinDetectionProtocol
Implementation of ProteinDetectionProtocolType from the mzIdentML schema.
Definition: IdentData.hpp:787
pwiz::identdata::AnalysisCollection
Implementation of AnalysisCollectionType from the mzIdentML schema.
Definition: IdentData.hpp:896
pwiz::identdata::Peptide
Implementation of PeptideType from the mzIdentML schema.
Definition: IdentData.hpp:369
pwiz::identdata::SpectrumIdentificationProtocol
Implementation of SpectrumIdentificationProtocolType from the mzIdentML schema.
Definition: IdentData.hpp:546
pwiz::identdata::DiffConfig::DiffConfig
DiffConfig()
Definition: Diff.hpp:397
IdentData.hpp
pwiz::identdata::SearchModification
Implementation of SearchModificationType from the mzIdentML schema.
Definition: IdentData.hpp:389
pwiz::identdata::SequenceCollection
Implementation of SequenceCollectionType from the mzIdentML schema.
Definition: IdentData.hpp:653
pwiz::identdata::ContactRole
Implementation of ContactRoleType from the mzIdentML schema.
Definition: IdentData.hpp:176
pwiz::identdata::MassTable
Implementation of MassTableType from the mzIdentML schema.
Definition: IdentData.hpp:481
diff
void diff(const string &filename1, const string &filename2)
Definition: FrequencyDataTest.cpp:40
pwiz::identdata::DataCollection
Implementation of DataCollectionType from the mzIdentML schema.
Definition: IdentData.hpp:975
pwiz::identdata::SearchDatabase
Implementation of SearchDatabaseType from the mzIdentML schema.
Definition: IdentData.hpp:271
pwiz::identdata::IdentData
Implementation of the MzIdentMLType from the mzIdentML schema.
Definition: IdentData.hpp:994
pwiz::identdata::Sample
Implementation of the SampleType from the mzIdentML schema.
Definition: IdentData.hpp:196
pwiz::identdata::AnalysisData
Implementation of AnalysisDataType from the mzIdentML schema.
Definition: IdentData.hpp:961
pwiz::identdata::Measure
Implementation of MeasureType from the mzIdentML schema.
Definition: IdentData.hpp:574
pwiz::identdata::DBSequence
Implementation of DBSequenceType from the mzIdentML schema.
Definition: IdentData.hpp:297
pwiz::identdata::AnalysisSoftware
Implementation of AnalysisSoftwareType from the mzIdentML schema.
Definition: IdentData.hpp:212
pwiz::identdata::Filter
Implementation of FilterType from the mzIdentML schema.
Definition: IdentData.hpp:502
pwiz::identdata::AnalysisSampleCollection
Implementation of AnalysisSampleCollectionType from mzIdentML schema.
Definition: IdentData.hpp:259
pwiz::identdata::operator<<
PWIZ_API_DECL std::ostream & operator<<(std::ostream &os, const data::Diff< IdentData, DiffConfig > &diff)
pwiz::identdata::Enzymes
Implementation of EnzymesType from the mzIdentML schema.
Definition: IdentData.hpp:432
diff_std.hpp
pwiz::identdata::SpectrumIdentificationList
Implementation of SpectrumIdentificationListType from the mzIdentML schema.
Definition: IdentData.hpp:744
pwiz::identdata::IdentifiableParamContainer
Parent class of all Identifiable objects that have ParamGroups.
Definition: IdentData.hpp:80
pwiz::identdata::SpectrumIdentification
Implementation of SpectrumIdentificationType from the mzIdentML schema.
Definition: IdentData.hpp:765
pwiz::identdata::ProteinAmbiguityGroup
Implementation of ProteinAmbiguityGroupType from the mzIdentML schema.
Definition: IdentData.hpp:840