sideset.hpp

Go to the documentation of this file.
00001 /*****************************************************************************
00002     
00003     sideset.hpp -- A representation of polyhedron side set with iterators 
00004         for ordered enumeration and other routines.
00005 
00006     This file is a part of the Arageli library.
00007 
00008     Copyright (C) Sergey S. Lyalin, 2006
00009 
00010 *****************************************************************************/
00011 
00021 #ifndef _ARAGELI_sideset_hpp_
00022 #define _ARAGELI_sideset_hpp_
00023 
00024 #include <cstddef>
00025 
00026 #include "config.hpp"
00027 
00028 #include "vector.hpp"
00029 
00030 
00031 namespace Arageli
00032 {
00033 
00034 
00036 
00037 class sideset
00038 {
00039     typedef vector<vector<std::size_t> > VVs;
00040     VVs indices;
00041 
00042 public:
00043 
00044     typedef VVs::const_iterator const_iterator;
00045     typedef VVs::element_type vertex_indices_set;
00046 
00047     sideset (const VVs& x) : indices(x) {}
00048 
00049     VVs::const_iterator begin () const { return indices.begin(); }
00050     VVs::const_iterator end () const { return indices.end(); }
00051     
00052 };
00053 
00054 
00055 
00056 } // namesapce Arageli
00057 
00058 
00059 #ifdef ARAGELI_INCLUDE_CPP_WITH_EXPORT_TEMPLATE
00060     #define ARAGELI_INCLUDE_CPP_WITH_EXPORT_TEMPLATE_sideset
00061     #include "sideset.cpp"
00062     #undef  ARAGELI_INCLUDE_CPP_WITH_EXPORT_TEMPLATE_sideset
00063 #endif
00064 
00065 #endif  // #ifndef _ARAGELI_sideset_hpp_

Generated on Thu Aug 31 17:38:09 2006 for Arageli by  doxygen 1.4.7