28 #ifndef __IPRESENTATIONLIST__ 29 #define __IPRESENTATIONLIST__ 31 #include "IPMUnknown.h" 32 #include "ShuksanID.h" 35 #include "IDocumentPresentation.h" 48 enum {kDefaultIID = IID_IPRESENTATIONLIST};
82 typedef std::ptrdiff_t difference_type;
84 bool16 operator==(
const iterator& rhs)
const {
return n == rhs.n && list == rhs.list;}
85 bool16 operator!=(
const iterator& rhs)
const {
return !(*
this == rhs);}
86 iterator& operator++() { ++n;
return *
this;}
100 typedef std::ptrdiff_t difference_type;
102 bool16 operator==(
const reverse_iterator& rhs)
const {
return n == rhs.n && list == rhs.list;}
103 bool16 operator!=(
const reverse_iterator& rhs)
const {
return !(*
this == rhs);}
116 iterator end(){
return iterator(
this, size());}
117 reverse_iterator rbegin() {
return reverse_iterator(
this, size());}
118 reverse_iterator rend() {
return reverse_iterator(
this, 0);}
119 iterator find(
IDocumentPresentation* it) { int32 index =
Find(it);
return (index == -1) ? end() : iterator(this, index);}
120 int32 size()
const {
return Length();}
121 int32 empty()
const {
return Length()==0;}
128 virtual int32 Length()
const = 0;