ProteoWizard
Classes | Functions
pwiz::data::diff_impl Namespace Reference

Classes

struct  HasID
 
class  Same
 
class  SameDeep
 

Functions

PWIZ_API_DECL void diff (const std::string &a, const std::string &b, std::string &a_b, std::string &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff_ids (const std::string &a, const std::string &b, std::string &a_b, std::string &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (const boost::logic::tribool &a, const boost::logic::tribool &b, boost::logic::tribool &a_b, boost::logic::tribool &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (const CV &a, const CV &b, CV &a_b, CV &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (CVID a, CVID b, CVID &a_b, CVID &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (const CVParam &a, const CVParam &b, CVParam &a_b, CVParam &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (const UserParam &a, const UserParam &b, UserParam &a_b, UserParam &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (const ParamContainer &a, const ParamContainer &b, ParamContainer &a_b, ParamContainer &b_a, const BaseDiffConfig &config)
 
PWIZ_API_DECL void diff (const ParamGroup &a, const ParamGroup &b, ParamGroup &a_b, ParamGroup &b_a, const BaseDiffConfig &config)
 
template<typename string_type >
void diff_string (const string_type &a, const string_type &b, string_type &a_b, string_type &b_a)
 
template<typename char_type >
void diff_char (const char_type &a, const char_type &b, char_type &a_b, char_type &b_a)
 
template<typename integral_type >
void diff_integral (const integral_type &a, const integral_type &b, integral_type &a_b, integral_type &b_a, const BaseDiffConfig &config)
 
template<typename floating_type >
void diff_floating (const floating_type &a, const floating_type &b, floating_type &a_b, floating_type &b_a, const BaseDiffConfig &config)
 
template<typename floating_type >
floating_type maxdiff (const std::vector< floating_type > &a, const std::vector< floating_type > &b)
 measure maximum relative difference between elements in the vectors More...
 
template<typename object_type >
void vector_diff (const std::vector< object_type > &a, const std::vector< object_type > &b, std::vector< object_type > &a_b, std::vector< object_type > &b_a)
 
template<typename object_type , typename config_type >
void vector_diff_diff (const std::vector< object_type > &a, const std::vector< object_type > &b, std::vector< object_type > &a_b, std::vector< object_type > &b_a, const config_type &config)
 
template<typename object_type , typename config_type >
void vector_diff_deep (const std::vector< boost::shared_ptr< object_type > > &a, const std::vector< boost::shared_ptr< object_type > > &b, std::vector< boost::shared_ptr< object_type > > &a_b, std::vector< boost::shared_ptr< object_type > > &b_a, const config_type &config)
 
template<typename object_type , typename config_type >
void ptr_diff (const boost::shared_ptr< object_type > &a, const boost::shared_ptr< object_type > &b, boost::shared_ptr< object_type > &a_b, boost::shared_ptr< object_type > &b_a, const config_type &config)
 
PWIZ_API_DECL void diff (const FragmentArray &a, const FragmentArray &b, FragmentArray &a_b, FragmentArray &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const IonType &a, const IonType &b, IonType &a_b, IonType &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Measure &a, const Measure &b, Measure &a_b, Measure &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const PeptideEvidence &a, const PeptideEvidence &b, PeptideEvidence &a_b, PeptideEvidence &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteinAmbiguityGroup &a, const ProteinAmbiguityGroup &b, ProteinAmbiguityGroup &a_b, ProteinAmbiguityGroup &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const PeptideHypothesis &a, const PeptideHypothesis &b, PeptideHypothesis &a_b, PeptideHypothesis &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteinDetectionHypothesis &a, const ProteinDetectionHypothesis &b, ProteinDetectionHypothesis &a_b, ProteinDetectionHypothesis &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const DataCollection &a, const DataCollection &b, DataCollection &a_b, DataCollection &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumIdentificationListPtr a, const SpectrumIdentificationListPtr b, SpectrumIdentificationListPtr a_b, SpectrumIdentificationListPtr b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumIdentificationList &a, const SpectrumIdentificationList &b, SpectrumIdentificationList &a_b, SpectrumIdentificationList &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteinDetectionList &a, const ProteinDetectionList &b, ProteinDetectionList &a_b, ProteinDetectionList &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const AnalysisData &a, const AnalysisData &b, AnalysisData &a_b, AnalysisData &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SearchDatabase &a, const SearchDatabase &b, SearchDatabase &a_b, SearchDatabase &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectraData &a, const SpectraData &b, SpectraData &a_b, SpectraData &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SourceFile &a, const SourceFile &b, SourceFile &a_b, SourceFile &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Inputs &a, const Inputs &b, Inputs &a_b, Inputs &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Enzyme &a, const Enzyme &b, Enzyme &a_b, Enzyme &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Enzymes &a, const Enzymes &b, Enzymes &a_b, Enzymes &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const MassTable &a, const MassTable &b, MassTable &a_b, MassTable &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Residue &a, const Residue &b, Residue &a_b, Residue &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const AmbiguousResidue &a, const AmbiguousResidue &b, AmbiguousResidue &a_b, AmbiguousResidue &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Filter &a, const Filter &b, Filter &a_b, Filter &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const DatabaseTranslation &a, const DatabaseTranslation &b, DatabaseTranslation &a_b, DatabaseTranslation &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumIdentificationProtocol &a, const SpectrumIdentificationProtocol &b, SpectrumIdentificationProtocol &a_b, SpectrumIdentificationProtocol &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteinDetectionProtocol &a, const ProteinDetectionProtocol &b, ProteinDetectionProtocol &a_b, ProteinDetectionProtocol &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const AnalysisProtocolCollection &a, const AnalysisProtocolCollection &b, AnalysisProtocolCollection &a_b, AnalysisProtocolCollection &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Contact &a, const Contact &b, Contact &a_b, Contact &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Person &a, const Person &b, Person &a_b, Person &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Organization &a, const Organization &b, Organization &a_b, Organization &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const BibliographicReference &a, const BibliographicReference &b, BibliographicReference &a_b, BibliographicReference &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteinDetection &a, const ProteinDetection &b, ProteinDetection &a_b, ProteinDetection &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumIdentification &a, const SpectrumIdentification &b, SpectrumIdentification &a_b, SpectrumIdentification &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const AnalysisCollection &a, const AnalysisCollection &b, AnalysisCollection &a_b, AnalysisCollection &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const DBSequence &a, const DBSequence &b, DBSequence &a_b, DBSequence &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Modification &a, const Modification &b, Modification &a_b, Modification &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SubstitutionModification &a, const SubstitutionModification &b, SubstitutionModification &a_b, SubstitutionModification &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Peptide &a, const Peptide &b, Peptide &a_b, Peptide &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SequenceCollection &a, const SequenceCollection &b, SequenceCollection &a_b, SequenceCollection &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Sample &a, const Sample &b, Sample &a_b, Sample &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SearchModification &a, const SearchModification &b, SearchModification &a_b, SearchModification &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumIdentificationItem &a, const SpectrumIdentificationItem &b, SpectrumIdentificationItem &a_b, SpectrumIdentificationItem &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumIdentificationResult &a, const SpectrumIdentificationResult &b, SpectrumIdentificationResult &a_b, SpectrumIdentificationResult &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const AnalysisSampleCollection &a, const AnalysisSampleCollection &b, AnalysisSampleCollection &a_b, AnalysisSampleCollection &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Provider &a, const Provider &b, Provider &a_b, Provider &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ContactRole &a, const ContactRole &b, ContactRole &a_b, ContactRole &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const AnalysisSoftware &a, const AnalysisSoftware &b, AnalysisSoftware &a_b, AnalysisSoftware &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const IdentData &a, const IdentData &b, IdentData &a_b, IdentData &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Identifiable &a, const Identifiable &b, Identifiable &a_b, Identifiable &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const IdentifiableParamContainer &a, const IdentifiableParamContainer &b, IdentifiableParamContainer &a_b, IdentifiableParamContainer &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const FileDescription &a, const FileDescription &b, FileDescription &a_b, FileDescription &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Component &a, const Component &b, Component &a_b, Component &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ComponentList &a, const ComponentList &b, ComponentList &a_b, ComponentList &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Software &a, const Software &b, Software &a_b, Software &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const InstrumentConfiguration &a, const InstrumentConfiguration &b, InstrumentConfiguration &a_b, InstrumentConfiguration &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProcessingMethod &a, const ProcessingMethod &b, ProcessingMethod &a_b, ProcessingMethod &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const DataProcessing &a, const DataProcessing &b, DataProcessing &a_b, DataProcessing &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ScanSettings &a, const ScanSettings &b, ScanSettings &a_b, ScanSettings &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Precursor &a, const Precursor &b, Precursor &a_b, Precursor &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Product &a, const Product &b, Product &a_b, Product &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Scan &a, const Scan &b, Scan &a_b, Scan &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ScanList &a, const ScanList &b, ScanList &a_b, ScanList &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const BinaryDataArray &a, const BinaryDataArray &b, BinaryDataArray &a_b, BinaryDataArray &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Spectrum &a, const Spectrum &b, Spectrum &a_b, Spectrum &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Chromatogram &a, const Chromatogram &b, Chromatogram &a_b, Chromatogram &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const SpectrumList &a, const SpectrumList &b, SpectrumListSimple &a_b, SpectrumListSimple &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ChromatogramList &a, const ChromatogramList &b, ChromatogramListSimple &a_b, ChromatogramListSimple &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Run &a, const Run &b, Run &a_b, Run &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const MSData &a, const MSData &b, MSData &a_b, MSData &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteinList &a, const ProteinList &b, ProteinListSimple &a_b, ProteinListSimple &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const ProteomeData &a, const ProteomeData &b, ProteomeData &a_b, ProteomeData &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Publication &a, const Publication &b, Publication &a_b, Publication &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const RetentionTime &a, const RetentionTime &b, RetentionTime &a_b, RetentionTime &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Prediction &a, const Prediction &b, Prediction &a_b, Prediction &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Evidence &a, const Evidence &b, Evidence &a_b, Evidence &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Validation &a, const Validation &b, Validation &a_b, Validation &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Instrument &a, const Instrument &b, Instrument &a_b, Instrument &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Configuration &a, const Configuration &b, Configuration &a_b, Configuration &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Interpretation &a, const Interpretation &b, Interpretation &a_b, Interpretation &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Protein &a, const Protein &b, Protein &a_b, Protein &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Compound &a, const Compound &b, Compound &a_b, Compound &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Transition &a, const Transition &b, Transition &a_b, Transition &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const Target &a, const Target &b, Target &a_b, Target &b_a, const DiffConfig &config)
 
PWIZ_API_DECL void diff (const TraData &a, const TraData &b, TraData &a_b, TraData &b_a, const DiffConfig &config)
 

Function Documentation

§ diff() [1/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const std::string &  a,
const std::string &  b,
std::string &  a_b,
std::string &  b_a,
const BaseDiffConfig config 
)

§ diff_ids()

PWIZ_API_DECL void pwiz::data::diff_impl::diff_ids ( const std::string &  a,
const std::string &  b,
std::string &  a_b,
std::string &  b_a,
const BaseDiffConfig config 
)

§ diff() [2/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const boost::logic::tribool &  a,
const boost::logic::tribool &  b,
boost::logic::tribool &  a_b,
boost::logic::tribool &  b_a,
const BaseDiffConfig config 
)

§ diff() [3/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const CV a,
const CV b,
CV a_b,
CV b_a,
const BaseDiffConfig config 
)

§ diff() [4/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( CVID  a,
CVID  b,
CVID &  a_b,
CVID &  b_a,
const BaseDiffConfig config 
)

§ diff() [5/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const CVParam a,
const CVParam b,
CVParam a_b,
CVParam b_a,
const BaseDiffConfig config 
)

§ diff() [6/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const UserParam a,
const UserParam b,
UserParam a_b,
UserParam b_a,
const BaseDiffConfig config 
)

§ diff() [7/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ParamContainer a,
const ParamContainer b,
ParamContainer a_b,
ParamContainer b_a,
const BaseDiffConfig config 
)

§ diff() [8/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ParamGroup a,
const ParamGroup b,
ParamGroup a_b,
ParamGroup b_a,
const BaseDiffConfig config 
)

§ diff_string()

template<typename string_type >
void pwiz::data::diff_impl::diff_string ( const string_type &  a,
const string_type &  b,
string_type &  a_b,
string_type &  b_a 
)

Definition at line 224 of file diff_std.hpp.

228 {
229  a_b.clear();
230  b_a.clear();
231 
232  if (a != b)
233  {
234  a_b = a;
235  b_a = b;
236  }
237 }

§ diff_char()

template<typename char_type >
void pwiz::data::diff_impl::diff_char ( const char_type &  a,
const char_type &  b,
char_type &  a_b,
char_type &  b_a 
)

Definition at line 241 of file diff_std.hpp.

245 {
246  a_b = 0;
247  b_a = 0;
248 
249  if (a != b)
250  {
251  a_b = a;
252  b_a = b;
253  }
254 }

§ diff_integral()

template<typename integral_type >
void pwiz::data::diff_impl::diff_integral ( const integral_type &  a,
const integral_type &  b,
integral_type &  a_b,
integral_type &  b_a,
const BaseDiffConfig config 
)

Definition at line 258 of file diff_std.hpp.

Referenced by testIntegralReally().

263 {
264  a_b = integral_type();
265  b_a = integral_type();
266 
267  if (a != b)
268  {
269  a_b = static_cast<integral_type>(a);
270  b_a = static_cast<integral_type>(b);
271  }
272 }

§ diff_floating()

template<typename floating_type >
void pwiz::data::diff_impl::diff_floating ( const floating_type &  a,
const floating_type &  b,
floating_type &  a_b,
floating_type &  b_a,
const BaseDiffConfig config 
)

Definition at line 276 of file diff_std.hpp.

References epsilon, and pwiz::data::BaseDiffConfig::precision.

Referenced by testFloating().

281 {
282  a_b = 0;
283  b_a = 0;
284 
285  if (fabs(a - b) > config.precision + std::numeric_limits<floating_type>::epsilon())
286  {
287  a_b = fabs(a - b);
288  b_a = fabs(a - b);
289  }
290 }
const double epsilon
Definition: DiffTest.cpp:41

§ maxdiff()

template<typename floating_type >
floating_type pwiz::data::diff_impl::maxdiff ( const std::vector< floating_type > &  a,
const std::vector< floating_type > &  b 
)

measure maximum relative difference between elements in the vectors

Definition at line 295 of file diff_std.hpp.

296 {
297  if (a.size() != b.size())
298  throw std::runtime_error("[Diff::maxdiff()] Sizes differ.");
299 
300  typename std::vector<floating_type>::const_iterator i = a.begin();
301  typename std::vector<floating_type>::const_iterator j = b.begin();
302 
303  floating_type max = 0;
304 
305  for (; i!=a.end(); ++i, ++j)
306  {
307  floating_type denominator = std::min(*i, *j);
308  if (denominator == 0) denominator = 1;
309  floating_type current = fabs(*i - *j)/denominator;
310  if (max < current) max = current;
311 
312  }
313 
314  return max;
315 }

§ vector_diff()

template<typename object_type >
void pwiz::data::diff_impl::vector_diff ( const std::vector< object_type > &  a,
const std::vector< object_type > &  b,
std::vector< object_type > &  a_b,
std::vector< object_type > &  b_a 
)

Definition at line 319 of file diff_std.hpp.

323 {
324  // calculate set differences of two vectors
325 
326  a_b.clear();
327  b_a.clear();
328 
329  for (typename std::vector<object_type>::const_iterator it=a.begin(); it!=a.end(); ++it)
330  if (std::find(b.begin(), b.end(), *it) == b.end())
331  a_b.push_back(*it);
332 
333  for (typename std::vector<object_type>::const_iterator it=b.begin(); it!=b.end(); ++it)
334  if (std::find(a.begin(), a.end(), *it) == a.end())
335  b_a.push_back(*it);
336 }

§ vector_diff_diff()

template<typename object_type , typename config_type >
void pwiz::data::diff_impl::vector_diff_diff ( const std::vector< object_type > &  a,
const std::vector< object_type > &  b,
std::vector< object_type > &  a_b,
std::vector< object_type > &  b_a,
const config_type &  config 
)

Definition at line 371 of file diff_std.hpp.

376 {
377  // calculate set differences of two vectors, using diff on each object
378 
379  a_b.clear();
380  b_a.clear();
381 
382  for (typename std::vector<object_type>::const_iterator it=a.begin(); it!=a.end(); ++it)
383  if (std::find_if(b.begin(), b.end(), Same<object_type, config_type>(*it, config)) == b.end())
384  a_b.push_back(*it);
385 
386  for (typename std::vector<object_type>::const_iterator it=b.begin(); it!=b.end(); ++it)
387  if (std::find_if(a.begin(), a.end(), Same<object_type, config_type>(*it, config)) == a.end())
388  b_a.push_back(*it);
389 }

§ vector_diff_deep()

template<typename object_type , typename config_type >
void pwiz::data::diff_impl::vector_diff_deep ( const std::vector< boost::shared_ptr< object_type > > &  a,
const std::vector< boost::shared_ptr< object_type > > &  b,
std::vector< boost::shared_ptr< object_type > > &  a_b,
std::vector< boost::shared_ptr< object_type > > &  b_a,
const config_type &  config 
)

Definition at line 415 of file diff_std.hpp.

420 {
421  // calculate set differences of two vectors of ObjectPtrs (deep compare using diff)
422 
423  a_b.clear();
424  b_a.clear();
425 
426  config_type quick_config(config);
427  quick_config.partialDiffOK = true; // for fastest check in SameDeep
428 
429  for (typename std::vector< boost::shared_ptr<object_type> >::const_iterator it=a.begin(); it!=a.end(); ++it)
430  if (std::find_if(b.begin(), b.end(), SameDeep<object_type, config_type>(**it, quick_config)) == b.end())
431  a_b.push_back(*it);
432 
433  for (typename std::vector< boost::shared_ptr<object_type> >::const_iterator it=b.begin(); it!=b.end(); ++it)
434  if (std::find_if(a.begin(), a.end(), SameDeep<object_type, config_type>(**it, quick_config)) == a.end())
435  b_a.push_back(*it);
436 }

§ ptr_diff()

template<typename object_type , typename config_type >
void pwiz::data::diff_impl::ptr_diff ( const boost::shared_ptr< object_type > &  a,
const boost::shared_ptr< object_type > &  b,
boost::shared_ptr< object_type > &  a_b,
boost::shared_ptr< object_type > &  b_a,
const config_type &  config 
)

Definition at line 440 of file diff_std.hpp.

References diff().

445 {
446  if (!a.get() && !b.get()) return;
447 
448  boost::shared_ptr<object_type> a_temp = a.get() ? a : boost::shared_ptr<object_type>(new object_type);
449  boost::shared_ptr<object_type> b_temp = b.get() ? b : boost::shared_ptr<object_type>(new object_type);
450 
451  if (!a_b.get()) a_b = boost::shared_ptr<object_type>(new object_type);
452  if (!b_a.get()) b_a = boost::shared_ptr<object_type>(new object_type);
453  diff(*a_temp, *b_temp, *a_b, *b_a, config);
454 
455  if (a_b->empty()) a_b = boost::shared_ptr<object_type>();
456  if (b_a->empty()) b_a = boost::shared_ptr<object_type>();
457 }
void diff(const string &filename1, const string &filename2)

§ diff() [9/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const FragmentArray a,
const FragmentArray b,
FragmentArray a_b,
FragmentArray b_a,
const DiffConfig config 
)

§ diff() [10/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const IonType a,
const IonType b,
IonType a_b,
IonType b_a,
const DiffConfig config 
)

§ diff() [11/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Measure a,
const Measure b,
Measure a_b,
Measure b_a,
const DiffConfig config 
)

§ diff() [12/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const PeptideEvidence a,
const PeptideEvidence b,
PeptideEvidence a_b,
PeptideEvidence b_a,
const DiffConfig config 
)

§ diff() [13/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteinAmbiguityGroup a,
const ProteinAmbiguityGroup b,
ProteinAmbiguityGroup a_b,
ProteinAmbiguityGroup b_a,
const DiffConfig config 
)

§ diff() [14/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const PeptideHypothesis a,
const PeptideHypothesis b,
PeptideHypothesis a_b,
PeptideHypothesis b_a,
const DiffConfig config 
)

§ diff() [15/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteinDetectionHypothesis a,
const ProteinDetectionHypothesis b,
ProteinDetectionHypothesis a_b,
ProteinDetectionHypothesis b_a,
const DiffConfig config 
)

§ diff() [16/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const DataCollection a,
const DataCollection b,
DataCollection a_b,
DataCollection b_a,
const DiffConfig config 
)

§ diff() [17/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumIdentificationListPtr  a,
const SpectrumIdentificationListPtr  b,
SpectrumIdentificationListPtr  a_b,
SpectrumIdentificationListPtr  b_a,
const DiffConfig config 
)

§ diff() [18/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumIdentificationList a,
const SpectrumIdentificationList b,
SpectrumIdentificationList a_b,
SpectrumIdentificationList b_a,
const DiffConfig config 
)

§ diff() [19/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteinDetectionList a,
const ProteinDetectionList b,
ProteinDetectionList a_b,
ProteinDetectionList b_a,
const DiffConfig config 
)

§ diff() [20/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const AnalysisData a,
const AnalysisData b,
AnalysisData a_b,
AnalysisData b_a,
const DiffConfig config 
)

§ diff() [21/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SearchDatabase a,
const SearchDatabase b,
SearchDatabase a_b,
SearchDatabase b_a,
const DiffConfig config 
)

§ diff() [22/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectraData a,
const SpectraData b,
SpectraData a_b,
SpectraData b_a,
const DiffConfig config 
)

§ diff() [23/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SourceFile a,
const SourceFile b,
SourceFile a_b,
SourceFile b_a,
const DiffConfig config 
)

§ diff() [24/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Inputs a,
const Inputs b,
Inputs a_b,
Inputs b_a,
const DiffConfig config 
)

§ diff() [25/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Enzyme a,
const Enzyme b,
Enzyme a_b,
Enzyme b_a,
const DiffConfig config 
)

§ diff() [26/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Enzymes a,
const Enzymes b,
Enzymes a_b,
Enzymes b_a,
const DiffConfig config 
)

§ diff() [27/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const MassTable a,
const MassTable b,
MassTable a_b,
MassTable b_a,
const DiffConfig config 
)

§ diff() [28/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Residue a,
const Residue b,
Residue a_b,
Residue b_a,
const DiffConfig config 
)

§ diff() [29/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const AmbiguousResidue a,
const AmbiguousResidue b,
AmbiguousResidue a_b,
AmbiguousResidue b_a,
const DiffConfig config 
)

§ diff() [30/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Filter a,
const Filter b,
Filter a_b,
Filter b_a,
const DiffConfig config 
)

§ diff() [31/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const DatabaseTranslation a,
const DatabaseTranslation b,
DatabaseTranslation a_b,
DatabaseTranslation b_a,
const DiffConfig config 
)

§ diff() [32/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumIdentificationProtocol a,
const SpectrumIdentificationProtocol b,
SpectrumIdentificationProtocol a_b,
SpectrumIdentificationProtocol b_a,
const DiffConfig config 
)

§ diff() [33/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteinDetectionProtocol a,
const ProteinDetectionProtocol b,
ProteinDetectionProtocol a_b,
ProteinDetectionProtocol b_a,
const DiffConfig config 
)

§ diff() [34/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const AnalysisProtocolCollection a,
const AnalysisProtocolCollection b,
AnalysisProtocolCollection a_b,
AnalysisProtocolCollection b_a,
const DiffConfig config 
)

§ diff() [35/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Contact a,
const Contact b,
Contact a_b,
Contact b_a,
const DiffConfig config 
)

§ diff() [36/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Person a,
const Person b,
Person a_b,
Person b_a,
const DiffConfig config 
)

§ diff() [37/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Organization a,
const Organization b,
Organization a_b,
Organization b_a,
const DiffConfig config 
)

§ diff() [38/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const BibliographicReference a,
const BibliographicReference b,
BibliographicReference a_b,
BibliographicReference b_a,
const DiffConfig config 
)

§ diff() [39/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteinDetection a,
const ProteinDetection b,
ProteinDetection a_b,
ProteinDetection b_a,
const DiffConfig config 
)

§ diff() [40/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumIdentification a,
const SpectrumIdentification b,
SpectrumIdentification a_b,
SpectrumIdentification b_a,
const DiffConfig config 
)

§ diff() [41/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const AnalysisCollection a,
const AnalysisCollection b,
AnalysisCollection a_b,
AnalysisCollection b_a,
const DiffConfig config 
)

§ diff() [42/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const DBSequence a,
const DBSequence b,
DBSequence a_b,
DBSequence b_a,
const DiffConfig config 
)

§ diff() [43/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Modification a,
const Modification b,
Modification a_b,
Modification b_a,
const DiffConfig config 
)

§ diff() [44/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SubstitutionModification a,
const SubstitutionModification b,
SubstitutionModification a_b,
SubstitutionModification b_a,
const DiffConfig config 
)

§ diff() [45/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Peptide a,
const Peptide b,
Peptide a_b,
Peptide b_a,
const DiffConfig config 
)

§ diff() [46/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SequenceCollection a,
const SequenceCollection b,
SequenceCollection a_b,
SequenceCollection b_a,
const DiffConfig config 
)

§ diff() [47/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Sample a,
const Sample b,
Sample a_b,
Sample b_a,
const DiffConfig config 
)

§ diff() [48/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SearchModification a,
const SearchModification b,
SearchModification a_b,
SearchModification b_a,
const DiffConfig config 
)

§ diff() [49/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumIdentificationItem a,
const SpectrumIdentificationItem b,
SpectrumIdentificationItem a_b,
SpectrumIdentificationItem b_a,
const DiffConfig config 
)

§ diff() [50/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumIdentificationResult a,
const SpectrumIdentificationResult b,
SpectrumIdentificationResult a_b,
SpectrumIdentificationResult b_a,
const DiffConfig config 
)

§ diff() [51/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const AnalysisSampleCollection a,
const AnalysisSampleCollection b,
AnalysisSampleCollection a_b,
AnalysisSampleCollection b_a,
const DiffConfig config 
)

§ diff() [52/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Provider a,
const Provider b,
Provider a_b,
Provider b_a,
const DiffConfig config 
)

§ diff() [53/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ContactRole a,
const ContactRole b,
ContactRole a_b,
ContactRole b_a,
const DiffConfig config 
)

§ diff() [54/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const AnalysisSoftware a,
const AnalysisSoftware b,
AnalysisSoftware a_b,
AnalysisSoftware b_a,
const DiffConfig config 
)

§ diff() [55/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const IdentData a,
const IdentData b,
IdentData a_b,
IdentData b_a,
const DiffConfig config 
)

§ diff() [56/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Identifiable a,
const Identifiable b,
Identifiable a_b,
Identifiable b_a,
const DiffConfig config 
)

§ diff() [57/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const IdentifiableParamContainer a,
const IdentifiableParamContainer b,
IdentifiableParamContainer a_b,
IdentifiableParamContainer b_a,
const DiffConfig config 
)

§ diff() [58/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const FileDescription a,
const FileDescription b,
FileDescription a_b,
FileDescription b_a,
const DiffConfig config 
)

§ diff() [59/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Component a,
const Component b,
Component a_b,
Component b_a,
const DiffConfig config 
)

§ diff() [60/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ComponentList a,
const ComponentList b,
ComponentList a_b,
ComponentList b_a,
const DiffConfig config 
)

§ diff() [61/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Software a,
const Software b,
Software a_b,
Software b_a,
const DiffConfig config 
)

§ diff() [62/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const InstrumentConfiguration a,
const InstrumentConfiguration b,
InstrumentConfiguration a_b,
InstrumentConfiguration b_a,
const DiffConfig config 
)

§ diff() [63/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProcessingMethod a,
const ProcessingMethod b,
ProcessingMethod a_b,
ProcessingMethod b_a,
const DiffConfig config 
)

§ diff() [64/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const DataProcessing a,
const DataProcessing b,
DataProcessing a_b,
DataProcessing b_a,
const DiffConfig config 
)

§ diff() [65/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ScanSettings a,
const ScanSettings b,
ScanSettings a_b,
ScanSettings b_a,
const DiffConfig config 
)

§ diff() [66/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Precursor a,
const Precursor b,
Precursor a_b,
Precursor b_a,
const DiffConfig config 
)

§ diff() [67/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Product a,
const Product b,
Product a_b,
Product b_a,
const DiffConfig config 
)

§ diff() [68/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Scan a,
const Scan b,
Scan a_b,
Scan b_a,
const DiffConfig config 
)

§ diff() [69/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ScanList a,
const ScanList b,
ScanList a_b,
ScanList b_a,
const DiffConfig config 
)

§ diff() [70/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const BinaryDataArray a,
const BinaryDataArray b,
BinaryDataArray a_b,
BinaryDataArray b_a,
const DiffConfig config 
)

§ diff() [71/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Spectrum a,
const Spectrum b,
Spectrum a_b,
Spectrum b_a,
const DiffConfig config 
)

§ diff() [72/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Chromatogram a,
const Chromatogram b,
Chromatogram a_b,
Chromatogram b_a,
const DiffConfig config 
)

§ diff() [73/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const SpectrumList a,
const SpectrumList b,
SpectrumListSimple a_b,
SpectrumListSimple b_a,
const DiffConfig config 
)

§ diff() [74/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ChromatogramList a,
const ChromatogramList b,
ChromatogramListSimple a_b,
ChromatogramListSimple b_a,
const DiffConfig config 
)

§ diff() [75/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Run a,
const Run b,
Run a_b,
Run b_a,
const DiffConfig config 
)

§ diff() [76/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const MSData a,
const MSData b,
MSData a_b,
MSData b_a,
const DiffConfig config 
)

§ diff() [77/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteinList a,
const ProteinList b,
ProteinListSimple a_b,
ProteinListSimple b_a,
const DiffConfig config 
)

§ diff() [78/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const ProteomeData a,
const ProteomeData b,
ProteomeData a_b,
ProteomeData b_a,
const DiffConfig config 
)

§ diff() [79/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Publication a,
const Publication b,
Publication a_b,
Publication b_a,
const DiffConfig config 
)

§ diff() [80/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const RetentionTime a,
const RetentionTime b,
RetentionTime a_b,
RetentionTime b_a,
const DiffConfig config 
)

§ diff() [81/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Prediction a,
const Prediction b,
Prediction a_b,
Prediction b_a,
const DiffConfig config 
)

§ diff() [82/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Evidence a,
const Evidence b,
Evidence a_b,
Evidence b_a,
const DiffConfig config 
)

§ diff() [83/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Validation a,
const Validation b,
Validation a_b,
Validation b_a,
const DiffConfig config 
)

§ diff() [84/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Instrument a,
const Instrument b,
Instrument a_b,
Instrument b_a,
const DiffConfig config 
)

§ diff() [85/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Configuration a,
const Configuration b,
Configuration a_b,
Configuration b_a,
const DiffConfig config 
)

§ diff() [86/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Interpretation a,
const Interpretation b,
Interpretation a_b,
Interpretation b_a,
const DiffConfig config 
)

§ diff() [87/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Protein a,
const Protein b,
Protein a_b,
Protein b_a,
const DiffConfig config 
)

§ diff() [88/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Compound a,
const Compound b,
Compound a_b,
Compound b_a,
const DiffConfig config 
)

§ diff() [89/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Transition a,
const Transition b,
Transition a_b,
Transition b_a,
const DiffConfig config 
)

§ diff() [90/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const Target a,
const Target b,
Target a_b,
Target b_a,
const DiffConfig config 
)

§ diff() [91/91]

PWIZ_API_DECL void pwiz::data::diff_impl::diff ( const TraData a,
const TraData b,
TraData a_b,
TraData b_a,
const DiffConfig config 
)