#ifndef _CANVASITERATOR_H #define _CANVASITERATOR_H #include "iterator.h" class CanvasIterator : public IteratorRef { public: CanvasIterator(tvector& a, int len) : myElts(a), myIndex(0), myLength(len) { } virtual void Init() { myIndex = 0; } virtual bool HasMore() { return myIndex < myLength; } virtual void Next() { myIndex++;} virtual Shape& Current() { return * myElts[myIndex]; } private: tvector& myElts; int myIndex; int myLength; }; #endif