#ifndef T2DLL_CLINK_H #define T2DLL_CLINK_H #include "../common.h" class AFX_CLASS_EXPORT CLink { public: CLink(); CLink(CLink* prev); virtual ~CLink(); void InsertAt(CLink* before); void Remove(); void RemoveLink(); unsigned int Count() const; CLink* GetNext() { return mNext; } CLink* GetPrev() { return mPrev; } void SetNext(CLink* l) { mNext = l; } void SetPrev(CLink* l) { mPrev = l; } CLink *mNext; CLink *mPrev; }; class AFX_CLASS_EXPORT CLinkIterator { public: CLinkIterator(CLink* start); virtual ~CLinkIterator(); BOOL Current(CLink** p); BOOL Prev(CLink** p); BOOL Next(CLink** p); private: CLink *mStart; CLink *mCurrent; }; #endif