25 #ifndef _PEPTIDEID_HPP_
26 #define _PEPTIDEID_HPP_
30 #include <boost/shared_ptr.hpp>
31 #include <boost/iterator/iterator_facade.hpp>
53 Location(std::string nativeID,
double retentionTimeSec,
double mz)
54 : nativeID(nativeID), mz(mz), retentionTimeSec(retentionTimeSec)
69 : nativeID(record.nativeID),
70 sequence(record.sequence),
71 protein_descr(record.protein_descr),
73 retentionTimeSec(record.retentionTimeSec),
74 normalizedScore(record.normalizedScore)
83 virtual void increment() = 0;
84 virtual bool equal(
const boost::shared_ptr<IteratorInternal>& li)
const = 0;
91 class Iterator :
public boost::iterator_facade<Iterator,
92 const PeptideID::Record,
93 boost::forward_traversal_tag>
98 Iterator(boost::shared_ptr<PeptideID::IteratorInternal> pimpl)
103 friend class boost::iterator_core_access;
109 return pimpl->equal(li.
pimpl);
114 return pimpl->dereference();
117 boost::shared_ptr<PeptideID::IteratorInternal>
pimpl;
124 virtual Iterator begin()
const = 0;
126 virtual Iterator end()
const = 0;
149 #endif // _PEPTIDEID_HPP_