16#ifndef dealii_tria_objects_h
17#define dealii_tria_objects_h
31template <
int dim,
int spacedim>
34template <
class Accessor>
36template <
int,
int,
int>
42 namespace TriangulationImplementation
161 template <
class Archive>
163 serialize(Archive &ar,
const unsigned int version);
199 template <
int structdim,
int dim,
int spacedim>
214 template <
int structdim,
int dim,
int spacedim>
222 template <
int dim,
int spacedim>
225 const unsigned int level);
282 template <
class Archive>
284 serialize(Archive &ar,
const unsigned int version);
338 template <
class Archive>
340 serialize(Archive &ar,
const unsigned int version);
389 const unsigned int faces_per_cell = 2 * this->
structdim;
411 template <
class Archive>
424 if (
sizeof(material_id) >
sizeof(boundary_id))
455 inline unsigned int &
485 : structdim(structdim)
486 , next_free_single(
numbers::invalid_unsigned_int)
487 , next_free_pair(
numbers::invalid_unsigned_int)
488 , reverse_order_next_free_single(false)
489 , user_data_type(data_unknown)
521 template <
class Archive>
531 template <
class Archive>
549 template <
int structdim_,
int dim,
int spacedim>
564 for (; pos < last; ++pos)
576 pos =
used.size() - 1;
586 for (; pos >= 0; --pos)
593 return ::TriaRawIterator<
597 return ::TriaRawIterator<
603 template <
int structdim_,
int dim,
int spacedim>
613 for (; pos < last; ++pos)
623 return ::TriaRawIterator<
628 return ::TriaRawIterator<
typename IteratorSelector::raw_hex_iterator raw_hex_iterator
std::vector< types::manifold_id > manifold_id
ArrayView< int > get_bounding_object_indices(const unsigned int index)
std::vector< int > children
unsigned int next_free_pair
void *& user_pointer(const unsigned int i)
void serialize(Archive &ar, const unsigned int version)
std::size_t memory_consumption() const
Triangulation< dim, spacedim >::raw_hex_iterator next_free_hex(const Triangulation< dim, spacedim > &tria, const unsigned int level)
std::vector< bool > user_flags
unsigned int & user_index(const unsigned int i)
UserDataType user_data_type
::TriaRawIterator<::TriaAccessor< structdim, dim, spacedim > > next_free_single_object(const Triangulation< dim, spacedim > &tria)
@ data_index
UserData contains indices.
@ data_unknown
No userdata used yet.
@ data_pointer
UserData contains pointers.
bool reverse_order_next_free_single
unsigned int next_free_single
::TriaRawIterator<::TriaAccessor< structdim, dim, spacedim > > next_free_pair_object(const Triangulation< dim, spacedim > &tria)
unsigned int n_objects() const
std::vector< BoundaryOrMaterialId > boundary_or_material_id
std::vector< std::uint8_t > refinement_cases
std::vector< UserData > user_data
#define DEAL_II_NAMESPACE_OPEN
#define DEAL_II_CXX20_REQUIRES(condition)
#define DEAL_II_NAMESPACE_CLOSE
#define DeclException0(Exception0)
static ::ExceptionBase & ExcPointerIndexClash()
#define Assert(cond, exc)
#define AssertDimension(dim1, dim2)
#define AssertIndexRange(index, range)
const types::material_id invalid_material_id
types::boundary_id boundary_id
void serialize(Archive &ar, const unsigned int version)
static std::size_t memory_consumption()
types::material_id material_id
void serialize(Archive &ar, const unsigned int version)
const ::Triangulation< dim, spacedim > & tria