ProteoWizard
Public Member Functions | Protected Member Functions | Protected Attributes | List of all members
DemuxDebugRWTest Class Reference

Public Member Functions

void Run ()
 

Protected Member Functions

void ReadWriteTest ()
 
void SetUp ()
 
void TearDown ()
 

Protected Attributes

vector< MatrixPtrspectrumList_
 
MatrixPtr A_
 
MatrixPtr B_
 
MatrixPtr C_
 

Detailed Description

Definition at line 30 of file DemuxDebugReadWriteTest.cpp.

Member Function Documentation

◆ Run()

void DemuxDebugRWTest::Run ( )
inline

Definition at line 34 of file DemuxDebugReadWriteTest.cpp.

References ReadWriteTest(), SetUp(), and TearDown().

Referenced by main().

◆ ReadWriteTest()

void DemuxDebugRWTest::ReadWriteTest ( )
inlineprotected

Definition at line 43 of file DemuxDebugReadWriteTest.cpp.

44 {
45 { // Use scope to ensure deletion of debug writer to close output file
46 DemuxDebugWriter debugWriter("DemuxDebugOutput_TestOut.log");
47 unit_assert(debugWriter.IsOpen());
48
49 for (size_t i = 0; i < spectrumList_.size(); i += 3)
50 {
51 debugWriter.WriteDeconvBlock(i, spectrumList_.at(i), spectrumList_.at(i + 1), spectrumList_.at(i + 2));
52 }
53 }
54
55 vector<MatrixPtr> readSpectrumList;
56
57 DemuxDebugReader debugReader("DemuxDebugOutput_TestOut.log");
58 unit_assert(debugReader.IsOpen());
59 unit_assert_operator_equal(3 * debugReader.NumBlocks(), spectrumList_.size());
60
61 uint64_t spectrumIndex;
62 for (size_t i = 0; i < debugReader.NumBlocks(); ++i)
63 {
64 auto index = static_cast<uint64_t>(spectrumIndex); // needed for 32-bit compatibility
65 debugReader.ReadDeconvBlock(index, A_, B_, C_);
66 readSpectrumList.push_back(A_);
67 readSpectrumList.push_back(B_);
68 readSpectrumList.push_back(C_);
69 }
70
71 unit_assert_operator_equal(readSpectrumList.size(), spectrumList_.size());
72
73 for (size_t i = 0; i < readSpectrumList.size(); ++i)
74 {
75 unit_assert(spectrumList_.at(i)->isApprox(*readSpectrumList.at(i)));
76 }
77 }
vector< MatrixPtr > spectrumList_
A class for reading demux matrices from file.
A class for writing demux matrices to file.
#define unit_assert(x)
Definition unit.hpp:85
#define unit_assert_operator_equal(expected, actual)
Definition unit.hpp:92

References A_, B_, C_, pwiz::analysis::DemuxDebugReader::IsOpen(), pwiz::analysis::DemuxDebugWriter::IsOpen(), pwiz::analysis::DemuxDebugReader::NumBlocks(), pwiz::analysis::DemuxDebugReader::ReadDeconvBlock(), spectrumList_, unit_assert, unit_assert_operator_equal, and pwiz::analysis::DemuxDebugWriter::WriteDeconvBlock().

Referenced by Run().

◆ SetUp()

void DemuxDebugRWTest::SetUp ( )
inlineprotected

Definition at line 79 of file DemuxDebugReadWriteTest.cpp.

79 {
80 // Generate a list of spectra
81 A_ = boost::make_shared<MatrixType>(3, 4);
82 B_ = boost::make_shared<MatrixType>(4, 3);
83 C_ = boost::make_shared<MatrixType>(3, 3);
84 *A_ << -14.834628974133, -15.729764770592, 56.292839002858, 30.766363712773,
85 79.595747995303, -8.356622426449, 20.840197237638, 83.801095382748,
86 87.889866880787, 13.75327399942, 86.730656404499, -0.46420627108677;
87
88 *B_ << 23.588885367543, 49.667231605868, -86.700220187964,
89 51.392601274063, -77.511392742378, 23.389497301117,
90 -78.475202879706, -62.60684915327, -42.39206607192,
91 59.595164405161, 2.1025961854091, 65.787705013259;
92
93 *C_ = *A_ * *B_;
94
95 spectrumList_.push_back(A_);
96 spectrumList_.push_back(B_);
97 spectrumList_.push_back(C_);
98
99 MatrixPtr D = boost::make_shared<MatrixType>(3, 4);
100 MatrixPtr E = boost::make_shared<MatrixType>(4, 3);
101 MatrixPtr F = boost::make_shared<MatrixType>(3, 3);
102
103 *D = 5 * A_->eval();
104 *E = 3 * B_->eval();
105 *F = *A_ * *B_;
106
107 spectrumList_.push_back(A_);
108 spectrumList_.push_back(B_);
109 spectrumList_.push_back(C_);
110 }
F
Definition Chemistry.hpp:81
#define D
boost::shared_ptr< MatrixType > MatrixPtr

References A_, B_, C_, D, F, and spectrumList_.

Referenced by Run().

◆ TearDown()

void DemuxDebugRWTest::TearDown ( )
inlineprotected

Definition at line 112 of file DemuxDebugReadWriteTest.cpp.

113 {
114 remove("DemuxDebugOutput_TestOut.log");
115 }

Referenced by Run().

Member Data Documentation

◆ spectrumList_

vector<MatrixPtr> DemuxDebugRWTest::spectrumList_
protected

Definition at line 117 of file DemuxDebugReadWriteTest.cpp.

Referenced by ReadWriteTest(), and SetUp().

◆ A_

MatrixPtr DemuxDebugRWTest::A_
protected

Definition at line 118 of file DemuxDebugReadWriteTest.cpp.

Referenced by ReadWriteTest(), and SetUp().

◆ B_

MatrixPtr DemuxDebugRWTest::B_
protected

Definition at line 119 of file DemuxDebugReadWriteTest.cpp.

Referenced by ReadWriteTest(), and SetUp().

◆ C_

MatrixPtr DemuxDebugRWTest::C_
protected

Definition at line 120 of file DemuxDebugReadWriteTest.cpp.

Referenced by ReadWriteTest(), and SetUp().


The documentation for this class was generated from the following file: