ProteoWizard
Functions | Variables
Serializer_MSn_Test.cpp File Reference
#include "Serializer_MSn.hpp"
#include "Serializer_mzML.hpp"
#include "Diff.hpp"
#include "TextWriter.hpp"
#include "pwiz/utility/misc/unit.hpp"
#include "boost/iostreams/positioning.hpp"
#include "pwiz/utility/misc/Std.hpp"
#include <cstring>

Go to the source code of this file.

Functions

void initializeTinyMS1 (MSData &msd)
void initializeTinyMS2 (MSData &msd)
void testWriteReadMS1 (const MSData &msd)
void testWriteReadBMS1 (const MSData &msd)
void testWriteReadCMS1 (const MSData &msd)
void testWriteReadMS2 (const MSData &msd)
void testWriteReadBMS2 (const MSData &msd)
void testWriteReadCMS2 (const MSData &msd)
void testWriteRead ()
int main (int argc, char *argv[])

Variables

ostream * os_ = 0

Function Documentation

void initializeTinyMS1 ( MSData msd)

Definition at line 39 of file Serializer_MSn_Test.cpp.

References pwiz::msdata::Spectrum::defaultArrayLength, pwiz::msdata::FileDescription::fileContent, pwiz::msdata::MSData::fileDescription, pwiz::msdata::Spectrum::getIntensityArray(), pwiz::msdata::Spectrum::getMZArray(), pwiz::msdata::SpectrumIdentity::id, pwiz::msdata::SpectrumIdentity::index, MS_base_peak_intensity, MS_base_peak_m_z, MS_centroid_spectrum, MS_highest_observed_m_z, MS_lowest_observed_m_z, MS_MS2_file, MS_ms_level, MS_MSn_spectrum, MS_number_of_counts, MS_scan_number_only_nativeID_format, MS_scan_start_time, MS_total_ion_current, pwiz::msdata::MSData::run, pwiz::msdata::Spectrum::scanList, pwiz::msdata::ScanList::scans, pwiz::data::ParamContainer::set(), pwiz::msdata::Spectrum::setMZIntensityArrays(), pwiz::msdata::FileDescription::sourceFilePtrs, pwiz::msdata::Run::spectrumListPtr, and UO_second.

Referenced by testWriteRead().

{
SourceFilePtr sourceFile(new SourceFile);
sourceFile->set(MS_MS2_file);
msd.fileDescription.sourceFilePtrs.push_back(sourceFile);
shared_ptr<SpectrumListSimple> spectrumList(new SpectrumListSimple);
msd.run.spectrumListPtr = spectrumList;
spectrumList->spectra.push_back(SpectrumPtr(new Spectrum));
Spectrum& s20 = *spectrumList->spectra[0];
s20.id = "scan=1";
s20.index = 0;
s20.set(MS_ms_level, 1);
s20.scanList.scans.push_back(Scan());
Scan& s20scan = s20.scanList.scans.back();
s20.setMZIntensityArrays(vector<double>(), vector<double>(), MS_number_of_counts);
vector<double>& s20_mz = s20.getMZArray()->data;
vector<double>& s20_intensity = s20.getIntensityArray()->data;
for (int i=0; i<10; i++)
s20_mz.push_back(i*2);
for (int i=0; i<10; i++)
s20_intensity.push_back((10-i)*2);
s20.defaultArrayLength = s20_mz.size();
} // initializeTinyMS1()
void initializeTinyMS2 ( MSData msd)

Definition at line 86 of file Serializer_MSn_Test.cpp.

References pwiz::msdata::Spectrum::defaultArrayLength, pwiz::msdata::FileDescription::fileContent, pwiz::msdata::MSData::fileDescription, pwiz::msdata::Spectrum::getIntensityArray(), pwiz::msdata::Spectrum::getMZArray(), pwiz::msdata::SpectrumIdentity::id, pwiz::msdata::SpectrumIdentity::index, pwiz::msdata::Precursor::isolationWindow, MS_base_peak_intensity, MS_base_peak_m_z, MS_centroid_spectrum, MS_highest_observed_m_z, MS_isolation_window_target_m_z, MS_lowest_observed_m_z, MS_m_z, MS_MS2_file, MS_ms_level, MS_MSn_spectrum, MS_number_of_counts, MS_possible_charge_state, MS_scan_number_only_nativeID_format, MS_scan_start_time, MS_selected_ion_m_z, MS_total_ion_current, pwiz::msdata::Spectrum::precursors, pwiz::msdata::MSData::run, pwiz::msdata::Spectrum::scanList, pwiz::msdata::ScanList::scans, pwiz::msdata::Precursor::selectedIons, pwiz::data::ParamContainer::set(), pwiz::msdata::Spectrum::setMZIntensityArrays(), pwiz::msdata::FileDescription::sourceFilePtrs, pwiz::msdata::Run::spectrumListPtr, and UO_second.

Referenced by testWriteRead().

{
SourceFilePtr sourceFile(new SourceFile);
sourceFile->set(MS_MS2_file);
msd.fileDescription.sourceFilePtrs.push_back(sourceFile);
shared_ptr<SpectrumListSimple> spectrumList(new SpectrumListSimple);
msd.run.spectrumListPtr = spectrumList;
spectrumList->spectra.push_back(SpectrumPtr(new Spectrum));
Spectrum& s20 = *spectrumList->spectra[0];
s20.id = "scan=1";
s20.index = 0;
s20.set(MS_ms_level, 2);
s20.precursors.resize(1);
Precursor& precursor = s20.precursors.front();
precursor.selectedIons.resize(1);
precursor.selectedIons[0].set(MS_selected_ion_m_z, 445.34, MS_m_z);
precursor.selectedIons[0].set(MS_possible_charge_state, 2);
s20.scanList.scans.push_back(Scan());
Scan& s20scan = s20.scanList.scans.back();
s20.setMZIntensityArrays(vector<double>(), vector<double>(), MS_number_of_counts);
vector<double>& s20_mz = s20.getMZArray()->data;
vector<double>& s20_intensity = s20.getIntensityArray()->data;
for (int i=0; i<10; i++)
s20_mz.push_back(i*2);
for (int i=0; i<10; i++)
s20_intensity.push_back((10-i)*2);
s20.defaultArrayLength = s20_mz.size();
} // initializeTinyMS2()
void testWriteReadMS1 ( const MSData msd)

Definition at line 141 of file Serializer_MSn_Test.cpp.

References diff(), pwiz::msdata::DiffConfig::ignoreMetadata, pwiz::msdata::MSn_Type_MS1, os_, pwiz::msdata::Serializer_MSn::read(), unit_assert, and pwiz::msdata::Serializer_MSn::write().

Referenced by testWriteRead().

{
ostringstream oss;
serializer.write(oss, msd);
if (os_) *os_ << "oss:\n" << oss.str() << endl;
MSData msd2;
shared_ptr<istream> iss(new istringstream(oss.str()));
serializer.read(iss, msd2);
DiffConfig config;
config.ignoreMetadata = true;
Diff<MSData, DiffConfig> diff(msd, msd2, config);
if (os_ && diff) *os_ << diff << endl;
}
void testWriteReadBMS1 ( const MSData msd)

Definition at line 162 of file Serializer_MSn_Test.cpp.

References diff(), pwiz::msdata::DiffConfig::ignoreDataProcessing, pwiz::msdata::DiffConfig::ignoreMetadata, pwiz::msdata::MSn_Type_BMS1, os_, pwiz::msdata::Serializer_MSn::read(), unit_assert, and pwiz::msdata::Serializer_MSn::write().

Referenced by testWriteRead().

{
ostringstream oss;
serializer.write(oss, msd);
if (os_) *os_ << "oss:\n" << oss.str() << endl;
MSData msd2;
shared_ptr<istream> iss(new istringstream(oss.str()));
serializer.read(iss, msd2);
DiffConfig config;
config.ignoreMetadata = true;
config.ignoreDataProcessing = true;
Diff<MSData, DiffConfig> diff(msd, msd2, config);
if (os_ && diff) *os_ << diff << endl;
}
void testWriteReadCMS1 ( const MSData msd)

Definition at line 183 of file Serializer_MSn_Test.cpp.

References diff(), pwiz::msdata::DiffConfig::ignoreDataProcessing, pwiz::msdata::DiffConfig::ignoreMetadata, pwiz::msdata::MSn_Type_CMS1, os_, pwiz::msdata::Serializer_MSn::read(), unit_assert, and pwiz::msdata::Serializer_MSn::write().

Referenced by testWriteRead().

{
ostringstream oss;
serializer.write(oss, msd);
if (os_) *os_ << "oss:\n" << oss.str() << endl;
MSData msd2;
shared_ptr<istream> iss(new istringstream(oss.str()));
serializer.read(iss, msd2);
DiffConfig config;
config.ignoreMetadata = true;
config.ignoreDataProcessing = true;
Diff<MSData, DiffConfig> diff(msd, msd2, config);
if (os_ && diff) *os_ << diff << endl;
}
void testWriteReadMS2 ( const MSData msd)

Definition at line 204 of file Serializer_MSn_Test.cpp.

References diff(), pwiz::msdata::DiffConfig::ignoreMetadata, pwiz::msdata::MSn_Type_MS2, os_, pwiz::msdata::Serializer_MSn::read(), unit_assert, and pwiz::msdata::Serializer_MSn::write().

Referenced by testWriteRead().

{
ostringstream oss;
serializer.write(oss, msd);
if (os_) *os_ << "oss:\n" << oss.str() << endl;
MSData msd2;
shared_ptr<istream> iss(new istringstream(oss.str()));
serializer.read(iss, msd2);
DiffConfig config;
config.ignoreMetadata = true;
Diff<MSData, DiffConfig> diff(msd, msd2, config);
if (os_ && diff) *os_ << diff << endl;
}
void testWriteReadBMS2 ( const MSData msd)

Definition at line 224 of file Serializer_MSn_Test.cpp.

References diff(), pwiz::msdata::DiffConfig::ignoreDataProcessing, pwiz::msdata::DiffConfig::ignoreMetadata, pwiz::msdata::MSn_Type_BMS2, os_, pwiz::msdata::Serializer_MSn::read(), unit_assert, and pwiz::msdata::Serializer_MSn::write().

Referenced by testWriteRead().

{
ostringstream oss;
serializer.write(oss, msd);
if (os_) *os_ << "oss:\n" << oss.str() << endl;
MSData msd2;
shared_ptr<istream> iss(new istringstream(oss.str()));
serializer.read(iss, msd2);
DiffConfig config;
config.ignoreMetadata = true;
config.ignoreDataProcessing = true;
Diff<MSData, DiffConfig> diff(msd, msd2, config);
if (os_ && diff) *os_ << diff << endl;
}
void testWriteReadCMS2 ( const MSData msd)

Definition at line 245 of file Serializer_MSn_Test.cpp.

References diff(), pwiz::msdata::DiffConfig::ignoreDataProcessing, pwiz::msdata::DiffConfig::ignoreMetadata, pwiz::msdata::MSn_Type_CMS2, os_, pwiz::msdata::Serializer_MSn::read(), unit_assert, and pwiz::msdata::Serializer_MSn::write().

Referenced by testWriteRead().

{
ostringstream oss;
serializer.write(oss, msd);
if (os_) *os_ << "oss:\n" << oss.str() << endl;
MSData msd2;
shared_ptr<istream> iss(new istringstream(oss.str()));
serializer.read(iss, msd2);
DiffConfig config;
config.ignoreMetadata = true;
config.ignoreDataProcessing = true;
Diff<MSData, DiffConfig> diff(msd, msd2, config);
if (os_ && diff) *os_ << diff << endl;
}
void testWriteRead ( )
int main ( int  argc,
char *  argv[] 
)

Definition at line 282 of file Serializer_MSn_Test.cpp.

References e(), os_, TEST_EPILOG, TEST_FAILED, TEST_PROLOG, and testWriteRead().

{
TEST_PROLOG(argc, argv)
try
{
if (argc>1 && !strcmp(argv[1],"-v")) os_ = &cout;
}
catch (exception& e)
{
TEST_FAILED(e.what())
}
catch (...)
{
TEST_FAILED("Caught unknown exception.")
}
}

Variable Documentation

ostream* os_ = 0

Definition at line 36 of file Serializer_MSn_Test.cpp.