LehrFEM++ 1.0.0
A simple Finite Element Library for teaching
|
A MeshDataSet that attaches data of type T
to every entity of a mesh that has a specified codimension.
More...
#include <lf/mesh/utils/codim_mesh_data_set.h>
Public Types | |
using | size_type = Mesh::size_type |
using | dim_t = base::RefEl::dim_t |
Public Member Functions | |
CodimMeshDataSet (std::shared_ptr< const Mesh > mesh, dim_t codim) | |
construct data vector indexed by entities of a particular co-dimension | |
CodimMeshDataSet (std::shared_ptr< const Mesh > mesh, dim_t codim, T init) | |
construct and initialize data vector indexed by entities of a particula co-dimension | |
T & | operator() (const Entity &e) |
Get a (modifiable) reference to the data stored with entity e. | |
const T & | operator() (const Entity &e) const override |
Get the data stored with entity e. | |
bool | DefinedOn (const Entity &e) const override |
Does the dataset store information with this entity? | |
![]() | |
virtual | ~MeshDataSet ()=default |
Virtual destructor. | |
Private Attributes | |
std::shared_ptr< const Mesh > | mesh_ |
boost::container::vector< T > | data_ |
dim_t | codim_ |
Additional Inherited Members | |
![]() | |
MeshDataSet ()=default | |
MeshDataSet (const MeshDataSet &)=default | |
MeshDataSet (MeshDataSet &&) noexcept=default | |
MeshDataSet & | operator= (const MeshDataSet &)=default |
MeshDataSet & | operator= (MeshDataSet &&) noexcept=default |
A MeshDataSet that attaches data of type T
to every entity of a mesh that has a specified codimension.
T | The type of data that should be stored with the entities. |
Definition at line 18 of file codim_mesh_data_set.h.
using lf::mesh::utils::CodimMeshDataSet< T >::dim_t = base::RefEl::dim_t |
Definition at line 21 of file codim_mesh_data_set.h.
using lf::mesh::utils::CodimMeshDataSet< T >::size_type = Mesh::size_type |
Definition at line 20 of file codim_mesh_data_set.h.
|
inline |
construct data vector indexed by entities of a particular co-dimension
mesh | pointer to underlying mesh |
codim | co-dimension of indexing entities for the given mesh |
Definition at line 32 of file codim_mesh_data_set.h.
|
inline |
construct and initialize data vector indexed by entities of a particula co-dimension
mesh | pointer to underlying mesh |
codim | co-dimension of indexing entities for the given mesh |
init | value to be copied into all data elements |
Definition at line 45 of file codim_mesh_data_set.h.
|
inlineoverridevirtual |
Does the dataset store information with this entity?
e | The entity that should be tested. |
Implements lf::mesh::utils::MeshDataSet< T >.
Definition at line 68 of file codim_mesh_data_set.h.
References lf::mesh::Entity::Codim(), lf::mesh::utils::CodimMeshDataSet< T >::codim_, and lf::mesh::utils::CodimMeshDataSet< T >::mesh_.
Referenced by lf::mesh::utils::CodimMeshDataSet< T >::operator()(), and lf::mesh::utils::CodimMeshDataSet< T >::operator()().
|
inline |
Get a (modifiable) reference to the data stored with entity e.
e | The entity whose data should be retrieved/modified |
DefinedOn(e) == false
! Definition at line 59 of file codim_mesh_data_set.h.
References lf::mesh::utils::CodimMeshDataSet< T >::data_, lf::mesh::utils::CodimMeshDataSet< T >::DefinedOn(), and lf::mesh::utils::CodimMeshDataSet< T >::mesh_.
|
inlineoverridevirtual |
Get the data stored with entity e.
e | The entity whose data should be retrieved. |
DefinedOn(e) == false
! Implements lf::mesh::utils::MeshDataSet< T >.
Definition at line 64 of file codim_mesh_data_set.h.
References lf::mesh::utils::CodimMeshDataSet< T >::data_, lf::mesh::utils::CodimMeshDataSet< T >::DefinedOn(), and lf::mesh::utils::CodimMeshDataSet< T >::mesh_.
|
private |
co-dimension
Definition at line 78 of file codim_mesh_data_set.h.
Referenced by lf::mesh::utils::CodimMeshDataSet< T >::DefinedOn().
|
private |
data vector
Definition at line 76 of file codim_mesh_data_set.h.
Referenced by lf::mesh::utils::CodimMeshDataSet< T >::operator()(), and lf::mesh::utils::CodimMeshDataSet< T >::operator()().
|
private |
pointer to underlying mesh. Owned by the data set !
Definition at line 74 of file codim_mesh_data_set.h.
Referenced by lf::mesh::utils::CodimMeshDataSet< T >::DefinedOn(), lf::mesh::utils::CodimMeshDataSet< T >::operator()(), and lf::mesh::utils::CodimMeshDataSet< T >::operator()().