00001 /* 00002 * Copyright (c) 1998, University of Amsterdam, The Netherlands. 00003 * All rights reserved. 00004 * 00005 * 00006 * Author(s): 00007 * Dennis Koelma (koelma@wins.uva.nl) 00008 * Edo Poll (poll@wins.uva.nl) 00009 */ 00010 00013 #ifndef HxPointList_h 00014 #define HxPointList_h 00015 00016 #include "HxPoint.h" 00017 #include <list> 00018 00019 00022 class HxPointList : public std::list<HxPoint> 00023 { 00024 public: 00026 typedef std::back_insert_iterator<HxPointList> back_insert_iterator; 00027 00029 HxPointList& operator<<(const HxPoint&); 00030 00032 void eraseAll(); 00033 }; 00034 00036 typedef HxPointList::iterator HxPointListIter; 00037 00039 typedef HxPointList::const_iterator HxPointListConstIter; 00040 00042 typedef HxPointList::back_insert_iterator HxPointListBackInserter; 00043 00044 00045 inline HxPointList& 00046 HxPointList:: operator<<(const HxPoint& s) // the space after :: is for DOC++ 00047 { 00048 push_back(s); 00049 return *this; 00050 } 00051 00052 inline void 00053 HxPointList::eraseAll() 00054 { 00055 erase(begin(), end()); 00056 } 00057 00058 #endif