Reference documentation for deal.II version 9.0.0
tria_faces.h
1 // ---------------------------------------------------------------------
2 //
3 // Copyright (C) 2006 - 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 at
12 // the top level of the deal.II distribution.
13 //
14 // ---------------------------------------------------------------------
15 
16 #ifndef dealii_tria_faces_h
17 #define dealii_tria_faces_h
18 
19 #include <deal.II/base/config.h>
20 #include <deal.II/grid/tria_object.h>
21 #include <deal.II/grid/tria_objects.h>
22 
23 
24 DEAL_II_NAMESPACE_OPEN
25 
26 namespace internal
27 {
28  namespace TriangulationImplementation
29  {
48  template <int dim>
49  class TriaFaces
50  {
51  public:
56  TriaFaces() = delete;
57  };
58 
59 
60 
67  template <>
68  class TriaFaces<1>
69  {
70 
71  public:
76  std::size_t memory_consumption () const;
77 
82  template <class Archive>
83  void serialize(Archive &ar,
84  const unsigned int version);
85  };
86 
90  template <>
91  class TriaFaces<2>
92  {
93  public:
98 
99  public:
104  std::size_t memory_consumption () const;
105 
110  template <class Archive>
111  void serialize(Archive &ar,
112  const unsigned int version);
113  };
114 
119  template <>
120  class TriaFaces<3>
121  {
122  public:
128 
133 
134  public:
139  std::size_t memory_consumption () const;
140 
145  template <class Archive>
146  void serialize(Archive &ar,
147  const unsigned int version);
148  };
149 
150 
151 
152  template <class Archive>
153  void
155  const unsigned int)
156  {}
157 
158 
159 
160  template <class Archive>
161  void
163  const unsigned int)
164  {
165  ar &lines;
166  }
167 
168 
169 
170  template <class Archive>
171  void
173  const unsigned int)
174  {
175  ar &quads &lines;
176  }
177  }
178 }
179 
180 DEAL_II_NAMESPACE_CLOSE
181 
182 #endif