00001 #ifndef Impala_Core_Geometry_RectangleList_h 00002 #define Impala_Core_Geometry_RectangleList_h 00003 00004 #include <list> 00005 #include "Core/Geometry/Rectangle.h" 00006 00007 namespace Impala 00008 { 00009 namespace Core 00010 { 00011 namespace Geometry 00012 { 00013 00014 00018 class RectangleList : public std::list<Rectangle> 00019 { 00020 public: 00021 00023 typedef std::back_insert_iterator<RectangleList> back_insert_iterator; 00024 00026 RectangleList& 00027 operator<<(const Rectangle& s) 00028 { 00029 push_back(s); 00030 return *this; 00031 } 00032 00034 void 00035 EraseAll() 00036 { 00037 erase(begin(), end()); 00038 } 00039 00040 }; 00041 00043 typedef RectangleList::iterator RectangleListI; 00045 typedef RectangleList::const_iterator RectangleListCI; 00047 typedef RectangleList::back_insert_iterator RectangleListBI; 00048 00049 00050 } // namespace Geometry 00051 } // namespace Core 00052 } // namespace Impala 00053 00054 #endif