Reference documentation for deal.II version 9.1.1
\(\newcommand{\dealcoloneq}{\mathrel{\vcenter{:}}=}\)
deal.II
grid
tria_iterator_selector.h
1
// ---------------------------------------------------------------------
2
//
3
// Copyright (C) 2003 - 2018 by the deal.II authors
4
//
5
// This file is part of the deal.II library.
6
//
7
// The deal.II library is free software; you can use it, redistribute
8
// it, and/or modify it under the terms of the GNU Lesser General
9
// Public License as published by the Free Software Foundation; either
10
// version 2.1 of the License, or (at your option) any later version.
11
// The full text of the license can be found in the file LICENSE.md at
12
// the top level directory of deal.II.
13
//
14
// ---------------------------------------------------------------------
15
16
#ifndef dealii_tria_iterator_selector_h
17
#define dealii_tria_iterator_selector_h
18
19
20
#include <deal.II/base/config.h>
21
22
DEAL_II_NAMESPACE_OPEN
23
24
template
<
int
dim,
int
spacedim>
25
class
CellAccessor
;
26
template
<
int
,
int
,
int
>
27
class
InvalidAccessor
;
28
template
<
int
,
int
,
int
>
29
class
TriaAccessor
;
30
template
<
int
dim,
int
spacedim>
31
class
TriaAccessor
<0, dim, spacedim>;
32
template
<
typename
Accessor>
33
class
TriaRawIterator
;
34
template
<
typename
Accessor>
35
class
TriaIterator
;
36
template
<
typename
Accessor>
37
class
TriaActiveIterator
;
38
39
namespace
internal
40
{
41
namespace
TriangulationImplementation
42
{
43
template
<
int
dim,
int
spacedim>
44
struct
Iterators;
45
76
template
<
int
spacedim>
77
struct
Iterators<1, spacedim>
78
{
79
using
raw_line_iterator
=
80
TriaRawIterator<::CellAccessor<1, spacedim>
>;
81
using
line_iterator
=
TriaIterator<::CellAccessor<1, spacedim>
>;
82
using
active_line_iterator
=
83
TriaActiveIterator<::CellAccessor<1, spacedim>
>;
84
85
using
raw_quad_iterator
=
86
TriaRawIterator<::InvalidAccessor<2, 1, spacedim>
>;
87
using
quad_iterator
=
88
TriaIterator<::InvalidAccessor<2, 1, spacedim>
>;
89
using
active_quad_iterator
=
90
TriaActiveIterator<::InvalidAccessor<2, 1, spacedim>
>;
91
92
using
raw_hex_iterator
=
93
TriaRawIterator<::InvalidAccessor<3, 1, spacedim>
>;
94
using
hex_iterator
=
95
TriaIterator<::InvalidAccessor<3, 1, spacedim>
>;
96
using
active_hex_iterator
=
97
TriaActiveIterator<::InvalidAccessor<3, 1, spacedim>
>;
98
};
99
100
101
138
template
<
int
spacedim>
139
struct
Iterators<2, spacedim>
140
{
141
using
raw_line_iterator
=
142
TriaRawIterator<::TriaAccessor<1, 2, spacedim>
>;
143
using
line_iterator
=
TriaIterator<::TriaAccessor<1, 2, spacedim>
>;
144
using
active_line_iterator
=
145
TriaActiveIterator<::TriaAccessor<1, 2, spacedim>
>;
146
147
using
raw_quad_iterator
=
148
TriaRawIterator<::CellAccessor<2, spacedim>
>;
149
using
quad_iterator
=
TriaIterator<::CellAccessor<2, spacedim>
>;
150
using
active_quad_iterator
=
151
TriaActiveIterator<::CellAccessor<2, spacedim>
>;
152
153
using
raw_hex_iterator
=
154
TriaRawIterator<::InvalidAccessor<3, 2, spacedim>
>;
155
using
hex_iterator
=
156
TriaIterator<::InvalidAccessor<3, 2, spacedim>
>;
157
using
active_hex_iterator
=
158
TriaActiveIterator<::InvalidAccessor<3, 2, spacedim>
>;
159
};
160
161
183
template
<
int
spacedim>
184
struct
Iterators<3, spacedim>
185
{
186
using
raw_line_iterator
=
187
TriaRawIterator<::TriaAccessor<1, 3, spacedim>
>;
188
using
line_iterator
=
TriaIterator<::TriaAccessor<1, 3, spacedim>
>;
189
using
active_line_iterator
=
190
TriaActiveIterator<::TriaAccessor<1, 3, spacedim>
>;
191
192
using
raw_quad_iterator
=
193
TriaRawIterator<::TriaAccessor<2, 3, spacedim>
>;
194
using
quad_iterator
=
TriaIterator<::TriaAccessor<2, 3, spacedim>
>;
195
using
active_quad_iterator
=
196
TriaActiveIterator<::TriaAccessor<2, 3, spacedim>
>;
197
198
using
raw_hex_iterator
=
199
TriaRawIterator<::CellAccessor<3, spacedim>
>;
200
using
hex_iterator
=
TriaIterator<::CellAccessor<3, spacedim>
>;
201
using
active_hex_iterator
=
202
TriaActiveIterator<::CellAccessor<3, spacedim>
>;
203
};
204
205
}
// namespace TriangulationImplementation
206
207
}
// namespace internal
208
209
DEAL_II_NAMESPACE_CLOSE
210
211
#endif // dealii_tria_iterator_selector_h
TriaActiveIterator
Definition:
dof_iterator_selector.h:37
InvalidAccessor
Definition:
tria_accessor.h:556
internal
Definition:
aligned_vector.h:357
TriaAccessor
Definition:
tria.h:57
TriaIterator
Definition:
dof_iterator_selector.h:35
TriaRawIterator
Definition:
dof_accessor.h:40
CellAccessor
Definition:
tria_accessor.h:2645
Generated by
1.8.14