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 00023 class HxPointList : public std::list<HxPoint> 00024 { 00025 public: 00027 typedef std::back_insert_iterator<HxPointList> back_insert_iterator; 00028 00030 HxPointList& operator<<(const HxPoint&); 00031 00033 void eraseAll(); 00034 }; 00035 00037 typedef HxPointList::iterator HxPointListIter; 00038 00040 typedef HxPointList::const_iterator HxPointListConstIter; 00041 00043 typedef HxPointList::back_insert_iterator HxPointListBackInserter; 00044 00045 00046 inline HxPointList& 00047 HxPointList:: operator<<(const HxPoint& s) // the space after :: is for DOC++ 00048 { 00049 push_back(s); 00050 return *this; 00051 } 00052 00053 inline void 00054 HxPointList::eraseAll() 00055 { 00056 erase(begin(), end()); 00057 } 00058 00059 #endif