ProteoWizard
Public Member Functions | Private Attributes | List of all members
pwiz::msdata::TextWriter Class Reference

#include <TextWriter.hpp>

Public Member Functions

 TextWriter (std::ostream &os, int depth=0, int arrayExampleCount=3)
 constructs a TextWriter for MSData types More...
 
TextWriter child ()
 
TextWriteroperator() (const std::string &text)
 
TextWriteroperator() (const CVParam &cvParam)
 
TextWriteroperator() (const UserParam &userParam)
 
template<typename object_type >
TextWriteroperator() (const std::string &label, const std::vector< object_type > &v)
 
TextWriteroperator() (const MSData &msd, bool metadata_only=false)
 
TextWriteroperator() (const CV &cv)
 
TextWriteroperator() (const FileDescription &fd)
 
TextWriteroperator() (const ParamContainer &paramContainer)
 
TextWriteroperator() (const FileContent &fileContent)
 
TextWriteroperator() (const SourceFile &sf)
 
TextWriteroperator() (const Contact &contact)
 
TextWriteroperator() (const ParamGroup &paramGroup)
 
TextWriteroperator() (const Sample &sample)
 
TextWriteroperator() (const InstrumentConfiguration &instrumentConfiguration)
 
TextWriteroperator() (const ComponentList &componentList)
 
TextWriteroperator() (const Component &component)
 
TextWriteroperator() (const Software &software)
 
TextWriteroperator() (const ProcessingMethod &processingMethod)
 
TextWriteroperator() (const DataProcessing &dp)
 
TextWriteroperator() (const Target &target)
 
TextWriteroperator() (const ScanSettings &as)
 
TextWriteroperator() (const Run &run, bool metadata_only=false)
 
TextWriteroperator() (const SpectrumList &spectrumList, bool metadata_only=false)
 
TextWriteroperator() (const SpectrumListPtr &p, bool metadata_only=false)
 
TextWriteroperator() (const ChromatogramList &chromatogramList, bool metadata_only=false)
 
TextWriteroperator() (const ChromatogramListPtr &p, bool metadata_only=false)
 
TextWriteroperator() (const Spectrum &spectrum)
 
TextWriteroperator() (const Chromatogram &chromatogram)
 
TextWriteroperator() (const Scan &scan)
 
TextWriteroperator() (const ScanWindow &window)
 
TextWriteroperator() (const BinaryDataArrayPtr &p)
 
TextWriteroperator() (const SelectedIon &selectedIon)
 
TextWriteroperator() (const Precursor &precursor)
 
TextWriteroperator() (const Product &product)
 
TextWriteroperator() (const ScanList &scanList)
 
template<typename object_type >
TextWriteroperator() (const boost::shared_ptr< object_type > &p)
 

Private Attributes

std::ostream & os_
 
int depth_
 
size_t arrayExampleCount_
 
std::string indent_
 

Detailed Description

Definition at line 40 of file TextWriter.hpp.

Constructor & Destructor Documentation

◆ TextWriter()

pwiz::msdata::TextWriter::TextWriter ( std::ostream &  os,
int  depth = 0,
int  arrayExampleCount = 3 
)
inline

constructs a TextWriter for MSData types

Parameters
osThe ostream to write to.
depthThe number of indentations to prefix to each output line.
arrayExampleCountThe number of example values to print for arrays (i.e. m/z and intensity); -1 for unlimited

Definition at line 48 of file TextWriter.hpp.

49  : os_(os),
50  depth_(depth),
51  arrayExampleCount_(arrayExampleCount < 0 ? std::numeric_limits<size_t>::max()
52  : (size_t) arrayExampleCount),
53  indent_(depth*2, ' ')
54  {}

Member Function Documentation

◆ child()

TextWriter pwiz::msdata::TextWriter::child ( )
inline

Definition at line 56 of file TextWriter.hpp.

References os_.

Referenced by operator()().

◆ operator()() [1/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const std::string &  text)
inline

Definition at line 58 of file TextWriter.hpp.

59  {
60  os_ << indent_ << text << std::endl;
61  return *this;
62  }

References os_.

◆ operator()() [2/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const CVParam cvParam)
inline

Definition at line 64 of file TextWriter.hpp.

65  {
66  os_ << indent_ << "cvParam: " << cvTermInfo(cvParam.cvid).name;
67  if (!cvParam.value.empty())
68  os_ << ", " << cvParam.value;
69  if (cvParam.units != CVID_Unknown)
70  os_ << ", " << cvParam.unitsName();
71  os_ << std::endl;
72  return *this;
73  }

References pwiz::data::CVParam::cvid, CVID_Unknown, pwiz::cv::cvTermInfo(), pwiz::cv::CVTermInfo::name, os_, pwiz::data::CVParam::units, pwiz::data::CVParam::unitsName(), and pwiz::data::CVParam::value.

◆ operator()() [3/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const UserParam userParam)
inline

Definition at line 75 of file TextWriter.hpp.

76  {
77  os_ << indent_ << "userParam: " << userParam.name;
78  if (!userParam.value.empty()) os_ << ", " << userParam.value;
79  if (!userParam.type.empty()) os_ << ", " << userParam.type;
80  if (userParam.units != CVID_Unknown) os_ << ", " << cvTermInfo(userParam.units).name;
81  os_ << std::endl;
82  return *this;
83  }

References CVID_Unknown, pwiz::cv::cvTermInfo(), pwiz::data::UserParam::name, pwiz::cv::CVTermInfo::name, os_, pwiz::data::UserParam::type, pwiz::data::UserParam::units, and pwiz::data::UserParam::value.

◆ operator()() [4/36]

template<typename object_type >
TextWriter& pwiz::msdata::TextWriter::operator() ( const std::string &  label,
const std::vector< object_type > &  v 
)
inline

Definition at line 86 of file TextWriter.hpp.

87  {
88  (*this)(label);
89  for_each(v.begin(), v.end(), child());
90  return *this;
91  }

◆ operator()() [5/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const MSData msd,
bool  metadata_only = false 
)
inline

Definition at line 94 of file TextWriter.hpp.

95  {
96  (*this)("msdata:");
97  child()
98  ("id: " + msd.id);
99  if (!msd.accession.empty())
100  child()("accession: " + msd.accession);
101  if (!msd.version().empty())
102  child()("version: " + msd.version());
103  if (!msd.cvs.empty())
104  child()("cvList: ", msd.cvs);
105  if (!msd.fileDescription.empty())
106  child()(msd.fileDescription);
107  if (!msd.paramGroupPtrs.empty())
108  child()("paramGroupList: ", msd.paramGroupPtrs);
109  if (!msd.samplePtrs.empty())
110  child()("sampleList: " , msd.samplePtrs);
111  if (!msd.softwarePtrs.empty())
112  child()("softwareList: ", msd.softwarePtrs);
113  if (!msd.scanSettingsPtrs.empty())
114  child()("scanSettingsList: ", msd.scanSettingsPtrs);
115  if (!msd.instrumentConfigurationPtrs.empty())
116  child()("instrumentConfigurationList: ", msd.instrumentConfigurationPtrs);
117  if (!msd.dataProcessingPtrs.empty())
118  child()("dataProcessingList: ", msd.dataProcessingPtrs);
119 
120  if (!msd.run.empty())
121  child()(msd.run, metadata_only);
122 
123  return *this;
124  }

References pwiz::msdata::MSData::accession, pwiz::msdata::MSData::cvs, pwiz::msdata::MSData::dataProcessingPtrs, pwiz::msdata::FileDescription::empty(), pwiz::msdata::Run::empty(), pwiz::msdata::MSData::fileDescription, pwiz::msdata::MSData::id, pwiz::msdata::MSData::instrumentConfigurationPtrs, pwiz::msdata::MSData::paramGroupPtrs, pwiz::msdata::MSData::run, pwiz::msdata::MSData::samplePtrs, pwiz::msdata::MSData::scanSettingsPtrs, pwiz::msdata::MSData::softwarePtrs, and pwiz::msdata::MSData::version().

◆ operator()() [6/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const CV cv)
inline

Definition at line 126 of file TextWriter.hpp.

127  {
128  (*this)("cv:");
129  child()
130  ("id: " + cv.id)
131  ("fullName: " + cv.fullName)
132  ("version: " + cv.version)
133  ("URI: " + cv.URI);
134  return *this;
135  }

References pwiz::cv::cv(), pwiz::cv::CV::fullName, pwiz::cv::CV::id, pwiz::cv::CV::URI, and pwiz::cv::CV::version.

◆ operator()() [7/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const FileDescription fd)
inline

Definition at line 137 of file TextWriter.hpp.

138  {
139  (*this)("fileDescription:");
140  child()
141  (fd.fileContent)
142  ("sourceFileList: ", fd.sourceFilePtrs);
143  for_each(fd.contacts.begin(), fd.contacts.end(), child());
144  return *this;
145  }

References pwiz::msdata::FileDescription::contacts, pwiz::msdata::FileDescription::fileContent, and pwiz::msdata::FileDescription::sourceFilePtrs.

◆ operator()() [8/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ParamContainer paramContainer)
inline

Definition at line 147 of file TextWriter.hpp.

148  {
149  for (std::vector<ParamGroupPtr>::const_iterator it=paramContainer.paramGroupPtrs.begin();
150  it!=paramContainer.paramGroupPtrs.end(); ++it)
151  (*this)("referenceableParamGroupRef: " + (*it)->id);
152  for_each(paramContainer.cvParams.begin(), paramContainer.cvParams.end(), *this);
153  for_each(paramContainer.userParams.begin(), paramContainer.userParams.end(), *this);
154  return *this;
155  }

References pwiz::data::ParamContainer::cvParams, pwiz::data::ParamContainer::paramGroupPtrs, and pwiz::data::ParamContainer::userParams.

◆ operator()() [9/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const FileContent fileContent)
inline

Definition at line 157 of file TextWriter.hpp.

158  {
159  (*this)("fileContent:");
160  child()(static_cast<const ParamContainer&>(fileContent));
161  return *this;
162  }

◆ operator()() [10/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const SourceFile sf)
inline

Definition at line 164 of file TextWriter.hpp.

165  {
166  (*this)("sourceFile:");
167  child()
168  ("id: " + sf.id)
169  ("name: " + sf.name)
170  ("location: " + sf.location)
171  (static_cast<const ParamContainer&>(sf));
172  return *this;
173  }

References pwiz::msdata::SourceFile::id, pwiz::msdata::SourceFile::location, and pwiz::msdata::SourceFile::name.

◆ operator()() [11/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Contact contact)
inline

Definition at line 175 of file TextWriter.hpp.

176  {
177  (*this)("contact:");
178  child()(static_cast<const ParamContainer&>(contact));
179  return *this;
180  }

◆ operator()() [12/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ParamGroup paramGroup)
inline

Definition at line 182 of file TextWriter.hpp.

183  {
184  (*this)("paramGroup:");
185  child()
186  ("id: " + paramGroup.id)
187  (static_cast<const ParamContainer&>(paramGroup));
188  return *this;
189  }

References pwiz::data::ParamGroup::id.

◆ operator()() [13/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Sample sample)
inline

Definition at line 191 of file TextWriter.hpp.

192  {
193  (*this)("sample:");
194  child()
195  ("id: " + sample.id)
196  ("name: " + sample.name)
197  (static_cast<const ParamContainer&>(sample));
198  return *this;
199  }

References pwiz::msdata::Sample::id, and pwiz::msdata::Sample::name.

◆ operator()() [14/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const InstrumentConfiguration instrumentConfiguration)
inline

Definition at line 201 of file TextWriter.hpp.

202  {
203  (*this)("instrumentConfiguration:");
204  child()
205  ("id: " + instrumentConfiguration.id)
206  (static_cast<const ParamContainer&>(instrumentConfiguration));
207  if (!instrumentConfiguration.componentList.empty())
208  child()(instrumentConfiguration.componentList);
209  if (instrumentConfiguration.softwarePtr.get() && !instrumentConfiguration.softwarePtr->empty())
210  child()("softwareRef: " + instrumentConfiguration.softwarePtr->id);
211  return *this;
212  }

References pwiz::msdata::InstrumentConfiguration::componentList, pwiz::msdata::InstrumentConfiguration::id, and pwiz::msdata::InstrumentConfiguration::softwarePtr.

◆ operator()() [15/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ComponentList componentList)
inline

Definition at line 214 of file TextWriter.hpp.

215  {
216  (*this)("componentList:");
217  for (size_t i=0; i < componentList.size(); ++i)
218  child()(componentList[i]);
219  return *this;
220  }

◆ operator()() [16/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Component component)
inline

Definition at line 222 of file TextWriter.hpp.

223  {
224  switch(component.type)
225  {
227  (*this)("source: ");
228  break;
230  (*this)("analyzer: ");
231  break;
233  (*this)("detector: ");
234  break;
235  default:
236  break;
237  }
238  child()
239  ("order: " + boost::lexical_cast<std::string>(component.order))
240  (static_cast<const ParamContainer&>(component));
241  return *this;
242  }

References pwiz::msdata::ComponentType_Analyzer, pwiz::msdata::ComponentType_Detector, pwiz::msdata::ComponentType_Source, pwiz::msdata::Component::order, and pwiz::msdata::Component::type.

◆ operator()() [17/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Software software)
inline

Definition at line 244 of file TextWriter.hpp.

245  {
246  (*this)("software:");
247  child()
248  ("id: " + software.id)
249  ("version: " + software.version)
250  (static_cast<const ParamContainer&>(software));
251  return *this;
252  }

References pwiz::msdata::Software::id, and pwiz::msdata::Software::version.

◆ operator()() [18/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ProcessingMethod processingMethod)
inline

Definition at line 254 of file TextWriter.hpp.

255  {
256  (*this)("processingMethod:");
257  child()
258  ("order: " + boost::lexical_cast<std::string>(processingMethod.order));
259  if (processingMethod.softwarePtr.get() && !processingMethod.softwarePtr->empty())
260  child()("softwareRef: " + processingMethod.softwarePtr->id);
261  child()
262  (static_cast<const ParamContainer&>(processingMethod));
263  return *this;
264  }

References pwiz::msdata::ProcessingMethod::order, and pwiz::msdata::ProcessingMethod::softwarePtr.

◆ operator()() [19/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const DataProcessing dp)
inline

Definition at line 266 of file TextWriter.hpp.

267  {
268  (*this)("dataProcessing:");
269  child()
270  ("id: " + dp.id);
271  for_each(dp.processingMethods.begin(), dp.processingMethods.end(), child());
272  return *this;
273  }

References pwiz::msdata::DataProcessing::id, and pwiz::msdata::DataProcessing::processingMethods.

◆ operator()() [20/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Target target)
inline

Definition at line 275 of file TextWriter.hpp.

276  {
277  (*this)("target:");
278  child()(static_cast<const ParamContainer&>(target));
279  return *this;
280  }

◆ operator()() [21/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ScanSettings as)
inline

Definition at line 282 of file TextWriter.hpp.

283  {
284  (*this)("scanSettings:");
285  child()
286  ("id: " + as.id);
287  for_each(as.targets.begin(), as.targets.end(), child());
288  child()("sourceFileList: ", as.sourceFilePtrs);
289  return *this;
290  }

References pwiz::msdata::ScanSettings::id, pwiz::msdata::ScanSettings::sourceFilePtrs, and pwiz::msdata::ScanSettings::targets.

◆ operator()() [22/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Run run,
bool  metadata_only = false 
)
inline

Definition at line 292 of file TextWriter.hpp.

293  {
294  (*this)("run:");
295  child()("id: " + run.id);
296  if (run.defaultInstrumentConfigurationPtr.get())
297  child()("defaultInstrumentConfigurationRef: " + run.defaultInstrumentConfigurationPtr->id);
298  if (run.samplePtr.get())
299  child()("sampleRef: " + run.samplePtr->id);
300  if (!run.startTimeStamp.empty())
301  child()("startTimeStamp: " + run.startTimeStamp);
302  child()(static_cast<const ParamContainer&>(run));
303  if (run.defaultSourceFilePtr.get())
304  child()("defaultSourceFileRef: " + run.defaultSourceFilePtr->id);
305  if (run.spectrumListPtr.get())
306  child()(run.spectrumListPtr, metadata_only);
307  if (run.chromatogramListPtr.get())
308  child()(run.chromatogramListPtr, metadata_only);
309  return *this;
310  }

References pwiz::msdata::Run::chromatogramListPtr, pwiz::msdata::Run::defaultInstrumentConfigurationPtr, pwiz::msdata::Run::defaultSourceFilePtr, pwiz::msdata::Run::id, pwiz::msdata::Run::samplePtr, pwiz::msdata::Run::spectrumListPtr, and pwiz::msdata::Run::startTimeStamp.

◆ operator()() [23/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const SpectrumList spectrumList,
bool  metadata_only = false 
)
inline

Definition at line 312 of file TextWriter.hpp.

313  {
314  std::string text("spectrumList (" + boost::lexical_cast<std::string>(spectrumList.size()) + " spectra)");
315  if (!metadata_only)
316  text += ":";
317 
318  (*this)(text);
319 
320  if (spectrumList.dataProcessingPtr().get())
321  child()(*spectrumList.dataProcessingPtr());
322 
323  if (!metadata_only)
324  for (size_t index=0; index<spectrumList.size(); ++index)
325  child()
326  (*spectrumList.spectrum(index, true));
327  return *this;
328  }

References pwiz::msdata::SpectrumList::dataProcessingPtr(), pwiz::msdata::SpectrumList::size(), and pwiz::msdata::SpectrumList::spectrum().

◆ operator()() [24/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const SpectrumListPtr p,
bool  metadata_only = false 
)
inline

Definition at line 330 of file TextWriter.hpp.

331  {
332  return p.get() ? (*this)(*p, metadata_only) : *this;
333  }

◆ operator()() [25/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ChromatogramList chromatogramList,
bool  metadata_only = false 
)
inline

Definition at line 335 of file TextWriter.hpp.

336  {
337  std::string text("chromatogramList (" + boost::lexical_cast<std::string>(chromatogramList.size()) + " chromatograms)");
338  if (!metadata_only)
339  text += ":";
340 
341  (*this)(text);
342 
343  if (chromatogramList.dataProcessingPtr().get())
344  child()(*chromatogramList.dataProcessingPtr());
345 
346  if (!metadata_only)
347  for (size_t index=0; index<chromatogramList.size(); ++index)
348  child()
349  (*chromatogramList.chromatogram(index, true));
350  return *this;
351  }

References pwiz::msdata::ChromatogramList::chromatogram(), pwiz::msdata::ChromatogramList::dataProcessingPtr(), and pwiz::msdata::ChromatogramList::size().

◆ operator()() [26/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ChromatogramListPtr p,
bool  metadata_only = false 
)
inline

Definition at line 353 of file TextWriter.hpp.

354  {
355  return p.get() ? (*this)(*p, metadata_only) : *this;
356  }

◆ operator()() [27/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Spectrum spectrum)
inline

Definition at line 358 of file TextWriter.hpp.

359  {
360  (*this)("spectrum:");
361  child()
362  ("index: " + boost::lexical_cast<std::string>(spectrum.index))
363  ("id: " + spectrum.id);
364  if (!spectrum.spotID.empty())
365  child()("spotID: " + spectrum.spotID);
366  if (spectrum.sourceFilePtr.get())
367  child()(spectrum.sourceFilePtr);
368  child()
369  ("defaultArrayLength: " + boost::lexical_cast<std::string>(spectrum.defaultArrayLength))
370  (spectrum.dataProcessingPtr)
371  (static_cast<const ParamContainer&>(spectrum));
372  if (!spectrum.scanList.empty())
373  child()(spectrum.scanList);
374  if (!spectrum.precursors.empty())
375  child()("precursorList: ", spectrum.precursors);
376  for_each(spectrum.binaryDataArrayPtrs.begin(), spectrum.binaryDataArrayPtrs.end(), child());
377  return *this;
378  }

References pwiz::msdata::Spectrum::binaryDataArrayPtrs, pwiz::msdata::Spectrum::dataProcessingPtr, pwiz::msdata::Spectrum::defaultArrayLength, pwiz::msdata::ScanList::empty(), pwiz::msdata::SpectrumIdentity::id, pwiz::msdata::SpectrumIdentity::index, pwiz::msdata::Spectrum::precursors, pwiz::msdata::Spectrum::scanList, pwiz::msdata::Spectrum::sourceFilePtr, and pwiz::msdata::SpectrumIdentity::spotID.

◆ operator()() [28/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Chromatogram chromatogram)
inline

Definition at line 380 of file TextWriter.hpp.

381  {
382  (*this)("chromatogram:");
383  child()
384  ("index: " + boost::lexical_cast<std::string>(chromatogram.index))
385  ("id: " + chromatogram.id)
386  ("defaultArrayLength: " + boost::lexical_cast<std::string>(chromatogram.defaultArrayLength))
387  (chromatogram.dataProcessingPtr)
388  (static_cast<const ParamContainer&>(chromatogram));
389  if (!chromatogram.precursor.empty())
390  child()(chromatogram.precursor);
391  if (!chromatogram.product.empty())
392  child()(chromatogram.product);
393  for_each(chromatogram.binaryDataArrayPtrs.begin(), chromatogram.binaryDataArrayPtrs.end(), child());
394  return *this;
395  }

References pwiz::msdata::Chromatogram::binaryDataArrayPtrs, pwiz::msdata::Chromatogram::dataProcessingPtr, pwiz::msdata::Chromatogram::defaultArrayLength, pwiz::msdata::Precursor::empty(), pwiz::msdata::Product::empty(), pwiz::msdata::ChromatogramIdentity::id, pwiz::msdata::ChromatogramIdentity::index, pwiz::msdata::Chromatogram::precursor, and pwiz::msdata::Chromatogram::product.

◆ operator()() [29/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Scan scan)
inline

Definition at line 397 of file TextWriter.hpp.

398  {
399  (*this)("scan:");
400  if (!scan.spectrumID.empty()) child()("spectrumID: " + scan.spectrumID);
401  if (!scan.externalSpectrumID.empty()) child()("externalSpectrumID: " + scan.externalSpectrumID);
402  if (scan.sourceFilePtr) child()(*scan.sourceFilePtr);
403  if (scan.instrumentConfigurationPtr.get()) child()(*scan.instrumentConfigurationPtr);
404  child()(static_cast<const ParamContainer&>(scan));
405  if (!scan.scanWindows.empty())
406  child()("scanWindowList: ", scan.scanWindows);
407  return *this;
408  }

References pwiz::msdata::Scan::externalSpectrumID, pwiz::msdata::Scan::instrumentConfigurationPtr, pwiz::msdata::Scan::scanWindows, pwiz::msdata::Scan::sourceFilePtr, and pwiz::msdata::Scan::spectrumID.

◆ operator()() [30/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ScanWindow window)
inline

Definition at line 410 of file TextWriter.hpp.

411  {
412  (*this)("scanWindow:");
413  for_each(window.cvParams.begin(), window.cvParams.end(), child());
414  return *this;
415  }

References pwiz::data::ParamContainer::cvParams.

◆ operator()() [31/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const BinaryDataArrayPtr p)
inline

Definition at line 417 of file TextWriter.hpp.

418  {
419  if (!p.get() || p->empty()) return *this;
420 
421  std::stringstream oss;
422  oss << "[" << boost::lexical_cast<std::string>(p->data.size()) << "] ";
423  oss.precision(12);
424  for (size_t i=0; i < arrayExampleCount_ && i < p->data.size(); i++)
425  oss << p->data[i] << " ";
426  if (p->data.size() > arrayExampleCount_)
427  oss << "...";
428 
429  (*this)("binaryDataArray:");
430  child() (static_cast<const ParamContainer&>(*p));
431  if (p->dataProcessingPtr.get() && !p->dataProcessingPtr->empty())
432  child()(p->dataProcessingPtr);
433  if (!p->data.empty())
434  child()("binary: " + oss.str());
435  return *this;
436  }

◆ operator()() [32/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const SelectedIon selectedIon)
inline

Definition at line 438 of file TextWriter.hpp.

439  {
440  (*this)("selectedIon:");
441  child()(static_cast<const ParamContainer&>(selectedIon));
442  return *this;
443  }

◆ operator()() [33/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Precursor precursor)
inline

Definition at line 445 of file TextWriter.hpp.

446  {
447  (*this)("precursor:");
448  child()
449  ("spectrumRef: " + precursor.spectrumID)
450  (static_cast<const ParamContainer&>(precursor));
451 
452  if (!precursor.isolationWindow.empty())
453  {
454  child()("isolationWindow:");
455  child().child()(precursor.isolationWindow);
456  }
457 
458  if (!precursor.selectedIons.empty())
459  {
460  child()("selectedIons:", precursor.selectedIons);
461  }
462 
463  if (!precursor.activation.empty())
464  {
465  child()("activation:");
466  child().child()(precursor.activation);
467  }
468 
469  return *this;
470  }

References pwiz::msdata::Precursor::activation, child(), pwiz::data::ParamContainer::empty(), pwiz::msdata::Precursor::isolationWindow, pwiz::msdata::Precursor::selectedIons, and pwiz::msdata::Precursor::spectrumID.

◆ operator()() [34/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const Product product)
inline

Definition at line 472 of file TextWriter.hpp.

473  {
474  (*this)("product:");
475 
476  if (!product.isolationWindow.empty())
477  {
478  child()("isolationWindow:");
479  child().child()(product.isolationWindow);
480  }
481 
482  return *this;
483  }

References child(), pwiz::data::ParamContainer::empty(), and pwiz::msdata::Product::isolationWindow.

◆ operator()() [35/36]

TextWriter& pwiz::msdata::TextWriter::operator() ( const ScanList scanList)
inline

Definition at line 485 of file TextWriter.hpp.

486  {
487  (*this)
488  (static_cast<const ParamContainer&>(scanList))
489  ("scanList:", scanList.scans);
490  return *this;
491  }

References pwiz::msdata::ScanList::scans.

◆ operator()() [36/36]

template<typename object_type >
TextWriter& pwiz::msdata::TextWriter::operator() ( const boost::shared_ptr< object_type > &  p)
inline

Definition at line 495 of file TextWriter.hpp.

496  {
497  return p.get() ? (*this)(*p) : *this;
498  }

Member Data Documentation

◆ os_

std::ostream& pwiz::msdata::TextWriter::os_
private

Definition at line 502 of file TextWriter.hpp.

◆ depth_

int pwiz::msdata::TextWriter::depth_
private

Definition at line 503 of file TextWriter.hpp.

◆ arrayExampleCount_

size_t pwiz::msdata::TextWriter::arrayExampleCount_
private

Definition at line 504 of file TextWriter.hpp.

◆ indent_

std::string pwiz::msdata::TextWriter::indent_
private

Definition at line 505 of file TextWriter.hpp.


The documentation for this class was generated from the following file:
pwiz::cv::CV::fullName
std::string fullName
the usual name for the resource (e.g. The PSI-MS Controlled Vocabulary).
Definition: cv.hpp:14924
pwiz::msdata::TextWriter::indent_
std::string indent_
Definition: TextWriter.hpp:505
pwiz::cv::CV::URI
std::string URI
the URI for the resource.
Definition: cv.hpp:14921
pwiz::cv::CV::id
std::string id
the short label to be used as a reference tag with which to refer to this particular Controlled Vocab...
Definition: cv.hpp:14918
pwiz::msdata::TextWriter::os_
std::ostream & os_
Definition: TextWriter.hpp:502
pwiz::msdata::TextWriter::TextWriter
TextWriter(std::ostream &os, int depth=0, int arrayExampleCount=3)
constructs a TextWriter for MSData types
Definition: TextWriter.hpp:48
pwiz::cv::CV::version
std::string version
the version of the CV from which the referred-to terms are drawn.
Definition: cv.hpp:14927
pwiz::cv::CVTermInfo::name
std::string name
Definition: cv.hpp:14947
pwiz::msdata::ComponentType_Detector
@ ComponentType_Detector
Definition: MSData.hpp:126
CVID_Unknown
CVID_Unknown
Definition: cv.hpp:114
pwiz::msdata::ComponentType_Source
@ ComponentType_Source
Definition: MSData.hpp:124
pwiz::cv::cv
PWIZ_API_DECL const CV & cv(const std::string &prefix)
returns a CV object for the specified namespace (prefix); currently supported namespaces are: MS UO
pwiz::msdata::ComponentType_Analyzer
@ ComponentType_Analyzer
Definition: MSData.hpp:125
pwiz::msdata::TextWriter::depth_
int depth_
Definition: TextWriter.hpp:503
pwiz::msdata::TextWriter::arrayExampleCount_
size_t arrayExampleCount_
Definition: TextWriter.hpp:504
pwiz::cv::cvTermInfo
PWIZ_API_DECL const CVTermInfo & cvTermInfo(CVID cvid)
returns CV term info for the specified CVID
pwiz::msdata::TextWriter::child
TextWriter child()
Definition: TextWriter.hpp:56