ProteoWizard
Classes | Public Member Functions | List of all members
pwiz::msdata::SpectrumIterator Class Reference

SpectrumIterator provides convenient iteration through a set of scans in a SpectrumList. More...

#include <SpectrumIterator.hpp>

Classes

struct  Config
 SpectrumIterator configuration – note that constructors allow automatic conversion from IntegerSet or Sieve to Config. More...
 
class  Sieve
 interface for filtering based on ScanInfo More...
 

Public Member Functions

 SpectrumIterator ()
 special default object for marking past-the-end
 
 SpectrumIterator (const SpectrumList &spectrumList, const Config &config=Config())
 constructor for normal initialization of the iterator
 
 SpectrumIterator (const MSData &msd, const Config &config=Config())
 constructor using MSData object
 
 SpectrumIterator (const SpectrumIterator &)
 copy constructor
 
input iterator interface
SpectrumIteratoroperator++ ()
 
const Spectrumoperator* () const
 
const Spectrumoperator-> () const
 
bool operator== (const SpectrumIterator &that) const
 
bool operator!= (const SpectrumIterator &that) const
 

standard iterator typedefs

typedef std::input_iterator_tag iterator_category
 
typedef Spectrum value_type
 
typedef int difference_type
 
typedef value_typepointer
 
typedef value_typereference
 
boost::shared_ptr< Impl > impl_
 
SpectrumIteratoroperator= (const SpectrumIterator &)
 no copying
 
SpectrumIterator operator++ (int)
 don't do this – avoid temporary copy
 

Detailed Description

SpectrumIterator provides convenient iteration through a set of scans in a SpectrumList.

Its behavior is similar to istream_iterator. In particular:

Because SpectrumIterator holds a copy of the current Spectrum internally, copy assignment and postincrement have been disabled.

Iteration may be customized in a number of ways:

For usage examples, see SpectrumIteratorTest.cpp

Definition at line 57 of file SpectrumIterator.hpp.

Member Typedef Documentation

◆ iterator_category

typedef std::input_iterator_tag pwiz::msdata::SpectrumIterator::iterator_category

Definition at line 115 of file SpectrumIterator.hpp.

◆ value_type

Definition at line 116 of file SpectrumIterator.hpp.

◆ difference_type

Definition at line 117 of file SpectrumIterator.hpp.

◆ pointer

Definition at line 118 of file SpectrumIterator.hpp.

◆ reference

Definition at line 119 of file SpectrumIterator.hpp.

Constructor & Destructor Documentation

◆ SpectrumIterator() [1/4]

pwiz::msdata::SpectrumIterator::SpectrumIterator ( )

special default object for marking past-the-end

◆ SpectrumIterator() [2/4]

pwiz::msdata::SpectrumIterator::SpectrumIterator ( const SpectrumList spectrumList,
const Config config = Config() 
)

constructor for normal initialization of the iterator

◆ SpectrumIterator() [3/4]

pwiz::msdata::SpectrumIterator::SpectrumIterator ( const MSData msd,
const Config config = Config() 
)

constructor using MSData object

◆ SpectrumIterator() [4/4]

pwiz::msdata::SpectrumIterator::SpectrumIterator ( const SpectrumIterator )

copy constructor

Member Function Documentation

◆ operator++() [1/2]

SpectrumIterator & pwiz::msdata::SpectrumIterator::operator++ ( )

◆ operator*()

const Spectrum & pwiz::msdata::SpectrumIterator::operator* ( ) const

◆ operator->()

const Spectrum * pwiz::msdata::SpectrumIterator::operator-> ( ) const

◆ operator==()

bool pwiz::msdata::SpectrumIterator::operator== ( const SpectrumIterator that) const

◆ operator!=()

bool pwiz::msdata::SpectrumIterator::operator!= ( const SpectrumIterator that) const

◆ operator=()

SpectrumIterator & pwiz::msdata::SpectrumIterator::operator= ( const SpectrumIterator )
private

no copying

◆ operator++() [2/2]

SpectrumIterator pwiz::msdata::SpectrumIterator::operator++ ( int  )
private

don't do this – avoid temporary copy

Member Data Documentation

◆ impl_

boost::shared_ptr<Impl> pwiz::msdata::SpectrumIterator::impl_
private

Definition at line 125 of file SpectrumIterator.hpp.


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