Reference documentation for deal.II version 9.1.1
|
#include <deal.II/grid/tria_accessor.h>
Public Types | |
using | AccessorData = typename TriaAccessorBase< structdim, dim, spacedim >::AccessorData |
Public Types inherited from TriaAccessorBase< structdim, dim, spacedim > | |
using | LocalData = void * |
Public Member Functions | |
InvalidAccessor (const Triangulation< dim, spacedim > *parent=nullptr, const int level=-1, const int index=-1, const AccessorData *local_data=nullptr) | |
InvalidAccessor (const InvalidAccessor &) | |
template<typename OtherAccessor > | |
InvalidAccessor (const OtherAccessor &) | |
void | copy_from (const InvalidAccessor &) |
bool | operator== (const InvalidAccessor &) const |
void | operator++ () const |
bool | used () const |
bool | has_children () const |
types::manifold_id | manifold_id () const |
unsigned int | user_index () const |
void | set_user_index (const unsigned int p) const |
void | set_manifold_id (const types::manifold_id) const |
Point< spacedim > & | vertex (const unsigned int i) const |
typename ::internal::TriangulationImplementation::Iterators< dim, spacedim >::line_iterator | line (const unsigned int i) const |
typename ::internal::TriangulationImplementation::Iterators< dim, spacedim >::quad_iterator | quad (const unsigned int i) const |
Public Member Functions inherited from TriaAccessorBase< structdim, dim, spacedim > | |
void | operator= (const TriaAccessorBase *)=delete |
int | level () const |
int | index () const |
IteratorState::IteratorStates | state () const |
const Triangulation< dim, spacedim > & | get_triangulation () const |
A class that represents accessor objects to iterators that don't make sense such as quad iterators in on 1d meshes. This class can not be used to create objects (it will in fact throw an exception if this should ever be attempted but it sometimes allows code to be written in a simpler way in a dimension independent way. For example, it allows to write code that works on quad iterators that is dimension independent – i.e., also compiles in 1d – because quad iterators (via the current class) exist and are syntactically correct. You can not expect, however, to ever create an actual object of one of these iterators in 1d, meaning you need to expect to wrap the code block in which you use quad iterators into something like if (dim>1)
– which makes eminent sense anyway.
This class provides the minimal interface necessary for Accessor classes to interact with Iterator classes. However, this is only for syntactic correctness, none of the functions do anything but generate errors.
Definition at line 556 of file tria_accessor.h.
using InvalidAccessor< structdim, dim, spacedim >::AccessorData = typename TriaAccessorBase<structdim, dim, spacedim>::AccessorData |
Propagate alias from base class to this class.
Definition at line 563 of file tria_accessor.h.
InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor | ( | const Triangulation< dim, spacedim > * | parent = nullptr , |
const int | level = -1 , |
||
const int | index = -1 , |
||
const AccessorData * | local_data = nullptr |
||
) |
Constructor. This class is used for iterators that do not make sense in a given dimension, for example quads for 1d meshes. Consequently, while the creation of such objects is syntactically valid, they make no semantic sense, and we generate an exception when such an object is actually generated.
InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor | ( | const InvalidAccessor< structdim, dim, spacedim > & | ) |
Copy constructor. This class is used for iterators that do not make sense in a given dimension, for example quads for 1d meshes. Consequently, while the creation of such objects is syntactically valid, they make no semantic sense, and we generate an exception when such an object is actually generated.
InvalidAccessor< structdim, dim, spacedim >::InvalidAccessor | ( | const OtherAccessor & | ) |
Conversion from other accessors to the current invalid one. This of course also leads to a run-time error.
Definition at line 3595 of file tria_accessor.h.
void InvalidAccessor< structdim, dim, spacedim >::copy_from | ( | const InvalidAccessor< structdim, dim, spacedim > & | ) |
Dummy copy operation.
bool InvalidAccessor< structdim, dim, spacedim >::operator== | ( | const InvalidAccessor< structdim, dim, spacedim > & | ) | const |
Dummy comparison operators.
void InvalidAccessor< structdim, dim, spacedim >::operator++ | ( | ) | const |
Dummy operators to make things compile. Does nothing.
bool InvalidAccessor< structdim, dim, spacedim >::used | ( | ) | const |
Dummy function representing whether the accessor points to a used or an unused object.
bool InvalidAccessor< structdim, dim, spacedim >::has_children | ( | ) | const |
Dummy function representing whether the accessor points to an object that has children.
types::manifold_id InvalidAccessor< structdim, dim, spacedim >::manifold_id | ( | ) | const |
Dummy function that always returns numbers::flat_manifold_id.
unsigned int InvalidAccessor< structdim, dim, spacedim >::user_index | ( | ) | const |
Dummy function that always returns numbers::invalid_unsigned_int.
void InvalidAccessor< structdim, dim, spacedim >::set_user_index | ( | const unsigned int | p | ) | const |
Dummy function that always throws.
void InvalidAccessor< structdim, dim, spacedim >::set_manifold_id | ( | const types::manifold_id | ) | const |
Dummy function that always throws.
Point<spacedim>& InvalidAccessor< structdim, dim, spacedim >::vertex | ( | const unsigned int | i | ) | const |
Dummy function to extract vertices. Returns the origin.
typename ::internal::TriangulationImplementation:: Iterators<dim, spacedim>::line_iterator InvalidAccessor< structdim, dim, spacedim >::line | ( | const unsigned int | i | ) | const |
Dummy function to extract lines. Returns a default-constructed line iterator.
typename ::internal::TriangulationImplementation:: Iterators<dim, spacedim>::quad_iterator InvalidAccessor< structdim, dim, spacedim >::quad | ( | const unsigned int | i | ) | const |
Dummy function to extract quads. Returns a default-constructed quad iterator.