Reference documentation for deal.II version 9.0.0
types.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2009 - 2017 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 at
12 // the top level of the deal.II distribution.
13 //
14 // ---------------------------------------------------------------------
15 
16 #ifndef dealii_types_h
17 #define dealii_types_h
18 
19 
20 #include <deal.II/base/config.h>
21 #include <cstddef>
22 
23 
24 DEAL_II_NAMESPACE_OPEN
25 
30 namespace types
31 {
42  typedef unsigned int subdomain_id;
43 
47  typedef unsigned long long int global_vertex_index;
48 
53 # define DEAL_II_VERTEX_INDEX_MPI_TYPE MPI_UNSIGNED_LONG_LONG
54 
55 #ifdef DEAL_II_WITH_64BIT_INDICES
56 
69  // TODO: we should check that unsigned long long int
70  // has the same size as uint64_t
71  typedef unsigned long long int global_dof_index;
72 
77 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED_LONG_LONG
78 #else
79 
88  typedef unsigned int global_dof_index;
89 
94 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED
95 #endif
96 
110  typedef unsigned int boundary_id;
111 
122  typedef unsigned int manifold_id;
123 
133  typedef unsigned int material_id;
134 }
135 
139 typedef double TrilinosScalar;
140 
141 
143 {
144  namespace types
145  {
146 #ifdef DEAL_II_WITH_64BIT_INDICES
147 
150  typedef long long int_type;
151 #else
152 
155  typedef int int_type;
156 #endif
157  }
158 }
159 
160 
161 // this part of the namespace numbers got moved to the bottom types.h file,
162 // because otherwise we get a circular inclusion of config.h, types.h, and
163 // numbers.h
164 namespace numbers
165 {
172  static const unsigned int
173  invalid_unsigned_int = static_cast<unsigned int> (-1);
174 
183 
188 
195 
205 
220 
230 
238 
249 
265 }
266 
267 
268 DEAL_II_NAMESPACE_CLOSE
269 
270 #endif
const types::global_dof_index invalid_size_type
Definition: types.h:182
const types::manifold_id flat_manifold_id
Definition: types.h:237
static const unsigned int invalid_unsigned_int
Definition: types.h:173
const types::subdomain_id invalid_subdomain_id
Definition: types.h:248
unsigned int boundary_id
Definition: types.h:110
unsigned int material_id
Definition: types.h:133
Definition: types.h:30
unsigned int global_dof_index
Definition: types.h:88
const types::boundary_id invalid_boundary_id
Definition: types.h:204
unsigned long long int global_vertex_index
Definition: types.h:47
unsigned int subdomain_id
Definition: types.h:42
const types::subdomain_id artificial_subdomain_id
Definition: types.h:264
const types::manifold_id invalid_manifold_id
Definition: types.h:229
unsigned int manifold_id
Definition: types.h:122
const types::boundary_id internal_face_boundary_id
Definition: types.h:219
const types::global_dof_index invalid_dof_index
Definition: types.h:187
const types::material_id invalid_material_id
Definition: types.h:194