33 #ifndef __H__LIB_GRID__GEOMETRIC_OBJECT_COLLECTION__
34 #define __H__LIB_GRID__GEOMETRIC_OBJECT_COLLECTION__
99 template <
class TElem>
134 template <
class TGeomObj>
137 begin(
size_t level = 0);
142 template <
class TGeomObj>
145 end(
size_t level = 0);
158 template <
class TGeomObj>
161 begin(
size_t level = 0)
const;
164 template <
class TGeomObj>
167 end(
size_t level = 0)
const;
179 template <
class TGeomObj>
187 template <
class TGeomObj>
189 size_t num(
size_t level)
const;
191 inline size_t num_vertices(
size_t level)
const {
return num<Vertex>(level);}
192 inline size_t num_edges(
size_t level)
const {
return num<Edge>(level);}
193 inline size_t num_faces(
size_t level)
const {
return num<Face>(level);}
194 inline size_t num_volumes(
size_t level)
const {
return num<Volume>(level);}
199 template <
class TGeomObj>
inline
201 SectionContainer* get_container(
size_t level)
const;
203 template <
class TGeomObj>
inline
205 SectionContainer* get_container(
size_t level);
This struct is used to hold GridObjects and their attachment pipes.
Definition: element_storage.h:44
a helper class that holds a collection of possibly unconnected geometric-objects.
Definition: grid_object_collection.h:96
size_t num_vertices() const
Definition: grid_object_collection.h:182
size_t num_edges(size_t level) const
Definition: grid_object_collection.h:192
ConstVolumeIterator volumes_end(size_t level=0) const
Definition: grid_object_collection.h:176
size_t num_volumes() const
Definition: grid_object_collection.h:185
size_t num_volumes(size_t level) const
Definition: grid_object_collection.h:194
size_t num_edges() const
Definition: grid_object_collection.h:183
ConstFaceIterator faces_begin(size_t level=0) const
Definition: grid_object_collection.h:173
EdgeIterator edges_begin(size_t level=0)
Definition: grid_object_collection.h:149
ConstEdgeIterator edges_begin(size_t level=0) const
Definition: grid_object_collection.h:171
FaceIterator faces_end(size_t level=0)
Definition: grid_object_collection.h:152
size_t num_levels() const
returns the number of levels
Definition: grid_object_collection.h:128
VertexIterator vertices_end(size_t level=0)
Definition: grid_object_collection.h:148
ConstVertexIterator vertices_end(size_t level=0) const
Definition: grid_object_collection.h:170
FaceIterator faces_begin(size_t level=0)
Definition: grid_object_collection.h:151
EdgeIterator edges_end(size_t level=0)
Definition: grid_object_collection.h:150
ContainerVec m_levels
Definition: grid_object_collection.h:225
size_t num_faces(size_t level) const
Definition: grid_object_collection.h:193
VertexIterator vertices_begin(size_t level=0)
Definition: grid_object_collection.h:147
size_t num_faces() const
Definition: grid_object_collection.h:184
VolumeIterator volumes_begin(size_t level=0)
Definition: grid_object_collection.h:153
ConstVolumeIterator volumes_begin(size_t level=0) const
Definition: grid_object_collection.h:175
ConstVertexIterator vertices_begin(size_t level=0) const
Definition: grid_object_collection.h:169
size_t num_vertices(size_t level) const
Definition: grid_object_collection.h:191
ConstFaceIterator faces_end(size_t level=0) const
Definition: grid_object_collection.h:174
std::vector< ContainerCollection > ContainerVec
Definition: grid_object_collection.h:221
ConstEdgeIterator edges_end(size_t level=0) const
Definition: grid_object_collection.h:172
VolumeIterator volumes_end(size_t level=0)
Definition: grid_object_collection.h:154
Definition: grid_base_object_traits.h:68
#define UG_API
Definition: ug_config.h:65
ElementStorage< Vertex >::SectionContainer::iterator VertexIterator
This Iterator will be used as base-class for iterators of specialized geometric objects.
Definition: grid_base_object_traits.h:73
ElementStorage< Face >::SectionContainer::iterator FaceIterator
Definition: grid_base_object_traits.h:79
ElementStorage< Face >::SectionContainer::const_iterator ConstFaceIterator
Definition: grid_base_object_traits.h:80
ElementStorage< Edge >::SectionContainer::iterator EdgeIterator
Definition: grid_base_object_traits.h:76
ElementStorage< Edge >::SectionContainer::const_iterator ConstEdgeIterator
Definition: grid_base_object_traits.h:77
ElementStorage< Volume >::SectionContainer::const_iterator ConstVolumeIterator
Definition: grid_base_object_traits.h:83
ElementStorage< Volume >::SectionContainer::iterator VolumeIterator
Definition: grid_base_object_traits.h:82
ElementStorage< Vertex >::SectionContainer::const_iterator ConstVertexIterator
Definition: grid_base_object_traits.h:74
Definition: grid_object_collection.h:208
ElementStorage< Volume >::SectionContainer * volContainer
Definition: grid_object_collection.h:218
ElementStorage< Vertex >::SectionContainer * vrtContainer
Definition: grid_object_collection.h:215
ContainerCollection()
Definition: grid_object_collection.h:209
ElementStorage< Edge >::SectionContainer * edgeContainer
Definition: grid_object_collection.h:216
ElementStorage< Face >::SectionContainer * faceContainer
Definition: grid_object_collection.h:217
The traits class holds some important types for each element-type.
Definition: grid_object_collection.h:100
geometry_traits< TElem >::const_iterator const_iterator
Definition: grid_object_collection.h:102
geometry_traits< TElem >::iterator iterator
Definition: grid_object_collection.h:101