Reference documentation for deal.II version 8.1.0
types.h
1 // ---------------------------------------------------------------------
2 // @f$Id: types.h 31224 2013-10-14 12:19:27Z bangerth @f$
3 //
4 // Copyright (C) 2009 - 2013 by the deal.II authors
5 //
6 // This file is part of the deal.II library.
7 //
8 // The deal.II library is free software; you can use it, redistribute
9 // it, and/or modify it under the terms of the GNU Lesser General
10 // Public License as published by the Free Software Foundation; either
11 // version 2.1 of the License, or (at your option) any later version.
12 // The full text of the license can be found in the file LICENSE at
13 // the top level of the deal.II distribution.
14 //
15 // ---------------------------------------------------------------------
16 
17 #ifndef __deal2__types_h
18 #define __deal2__types_h
19 
20 
21 #include <deal.II/base/config.h>
22 #include <cstddef>
24 
29 namespace types
30 {
43  typedef unsigned int subdomain_id;
44 
48  typedef subdomain_id subdomain_id_t DEAL_II_DEPRECATED;
49 
53  const unsigned int invalid_subdomain_id DEAL_II_DEPRECATED = static_cast<subdomain_id>(-1);
54 
58  const unsigned int artificial_subdomain_id DEAL_II_DEPRECATED = static_cast<subdomain_id>(-2);
59 
60 #ifdef DEAL_II_USE_LARGE_INDEX_TYPE
61 
77  // TODO: we should check that unsigned long long int
78  // has the same size as uint64_t
79  typedef unsigned long long int global_dof_index;
80 
85 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED_LONG_LONG
86 #else
87 
100  typedef unsigned int global_dof_index;
101 
106 # define DEAL_II_DOF_INDEX_MPI_TYPE MPI_UNSIGNED
107 #endif
108 
109 
113  const global_dof_index invalid_dof_index DEAL_II_DEPRECATED = static_cast<global_dof_index>(-1);
114 
128  typedef unsigned char boundary_id;
129 
133  typedef boundary_id boundary_id_t DEAL_II_DEPRECATED;
134 
142  typedef unsigned char material_id;
143 
147  typedef material_id material_id_t DEAL_II_DEPRECATED;
148 
149 }
150 
151 namespace TrilinosWrappers
152 {
153  namespace types
154  {
155 #ifdef DEAL_II_USE_LARGE_INDEX_TYPE
156 
159  typedef long long int_type;
160 #else
161 
164  typedef int int_type;
165 #endif
166  }
167 }
168 
169 
170 // this part of the namespace numbers got moved to the bottom types.h file,
171 // because otherwise we get a circular inclusion of config.h, types.h, and
172 // numbers.h
173 namespace numbers
174 {
190  static const unsigned int
191  invalid_unsigned_int = static_cast<unsigned int> (-1);
192 
212 
218 
227 
238 
254 
268 
287 }
288 
289 
290 DEAL_II_NAMESPACE_CLOSE
291 
292 #endif
const types::global_dof_index invalid_size_type
Definition: types.h:211
static const unsigned int invalid_unsigned_int
Definition: types.h:191
const types::subdomain_id invalid_subdomain_id
Definition: types.h:267
unsigned char material_id
Definition: types.h:142
Definition: types.h:29
unsigned int global_dof_index
Definition: types.h:100
const types::boundary_id invalid_boundary_id
Definition: types.h:237
subdomain_id subdomain_id_t DEAL_II_DEPRECATED
Definition: types.h:48
unsigned int subdomain_id
Definition: types.h:43
const types::subdomain_id artificial_subdomain_id
Definition: types.h:286
Definition: types.h:173
unsigned char boundary_id
Definition: types.h:128
const types::boundary_id internal_face_boundary_id
Definition: types.h:253
const types::global_dof_index invalid_dof_index
Definition: types.h:217
const types::material_id invalid_material_id
Definition: types.h:226