Flow123d  jenkins-Flow123d-linux-release-multijob-198
mesh_types.hh
Go to the documentation of this file.
1 /*!
2  *
3  * Copyright (C) 2007 Technical University of Liberec. All rights reserved.
4  *
5  * Please make a following refer to Flow123d on your project site if you use the program for any purpose,
6  * especially for academic research:
7  * Flow123d, Research Centre: Advanced Remedial Technologies, Technical University of Liberec, Czech Republic
8  *
9  * This program is free software; you can redistribute it and/or modify it under the terms
10  * of the GNU General Public License version 3 as published by the Free Software Foundation.
11  *
12  * This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY;
13  * without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
14  * See the GNU General Public License for more details.
15  *
16  * You should have received a copy of the GNU General Public License along with this program; if not,
17  * write to the Free Software Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 021110-1307, USA.
18  *
19  *
20  * $Id$
21  * $Revision$
22  * $LastChangedBy$
23  * $LastChangedDate$
24  *
25  * @file
26  * @brief ???
27  * @date Aug 6, 2010
28  * @author jb
29  */
30 
31 #ifndef MESH_TYPES_HH_
32 #define MESH_TYPES_HH_
33 
34 #include "system/sys_vector.hh"
35 
36 class Node;
37 class Element;
38 class Boundary;
39 class Edge;
40 
41 // Preparation for next development
45 
46 // iterator over elements
47 // should be mesh member, but then we have problem how to have ElementIter as memeber of
48 // Node or other classes without cyclic inclusion
52 
56 
60 
61 #endif /* MESH_TYPES_HH_ */
flow::Vector< Edge > EdgeVector
Definition: mesh_types.hh:57
ElementVector::Iter ElementIter
Definition: mesh_types.hh:50
Envelop over std::vector, use enhanced iterators.
Definition: sys_vector.hh:216
Definition: nodes.hh:44
ElementVector::FullIter ElementFullIter
Definition: mesh_types.hh:51
EdgeVector::Iter EdgeIter
Definition: mesh_types.hh:58
BoundaryVector::Iter BoundaryIter
Definition: mesh_types.hh:54
BoundaryVector::FullIter BoundaryFullIter
Definition: mesh_types.hh:55
Definition: edges.h:38
flow::VectorId< Element > ElementVector
Definition: mesh_types.hh:49
Iterator that keeps also reference to its container. Safer and provides indexes.
Definition: sys_vector.hh:58
flow::VectorId< Node > NodeVector
Definition: mesh_types.hh:39
flow::Vector< Boundary > BoundaryVector
Definition: mesh_types.hh:53
NodeVector::Iter NodeIter
Definition: mesh_types.hh:43
Vector classes to support both Iterator, index and Id access and creating co-located vectors...
T * Iter
Default iterator for this class.
Definition: sys_vector.hh:222
NodeVector::FullIter NodeFullIter
Definition: mesh_types.hh:44
EdgeVector::FullIter EdgeFullIter
Definition: mesh_types.hh:59