3 #ifndef DUNE_PDELAB_BACKEND_ISTL_TAGS_HH
4 #define DUNE_PDELAB_BACKEND_ISTL_TAGS_HH
6 #include <dune/common/static_assert.hh>
7 #include <dune/common/documentation.hh>
146 typedef ImplementationDefined
type;
156 template<
typename Block,
typename Alloc>
157 struct container<BlockVector<Block,Alloc> >
166 #if DUNE_VERSION_NEWER(DUNE_COMMON,2,4)
168 template<
typename F,
typename Allocator>
169 struct container<DynamicVector<F,Allocator> >
171 typedef dynamic_vector
type;
177 struct container<DynamicVector<F> >
179 typedef dynamic_vector
type;
184 template<
typename F,
int n>
185 struct container<FieldVector<F,n> >
187 typedef field_vector_n
type;
191 struct container<FieldVector<F,1> >
193 typedef field_vector_1
type;
197 template<
typename Block,
typename Alloc>
198 struct container<BCRSMatrix<Block,Alloc> >
200 typedef bcrs_matrix
type;
204 struct container<DynamicMatrix<F> >
206 typedef dynamic_matrix
type;
209 template<
typename F,
int n,
int m>
210 struct container<FieldMatrix<F,n,m> >
212 typedef field_matrix_n_m
type;
215 template<
typename F,
int n>
216 struct container<FieldMatrix<F,n,1> >
218 typedef field_matrix_n_1
type;
221 template<
typename F,
int m>
222 struct container<FieldMatrix<F,1,m> >
224 typedef field_matrix_1_m
type;
228 struct container<FieldMatrix<F,1,1> >
230 typedef field_matrix_1_1
type;
259 #endif // DUNE_PDELAB_BACKEND_ISTL_TAGS_HH
Extracts the container tag from T.
Definition: backend/istl/tags.hh:143
dynamic_vector base_tag
Definition: backend/istl/tags.hh:32
Tag describing a FieldMatrix with row block size 1 and column block size > 1.
Definition: backend/istl/tags.hh:118
Tag describing a FieldMatrix with row block size > 1 and column block size > 1.
Definition: backend/istl/tags.hh:125
Tag describing a BCRSMatrix.
Definition: backend/istl/tags.hh:61
Tag describing a FieldMatrix with row block size > 1 and column block size 1.
Definition: backend/istl/tags.hh:111
Tag describing a field vector with block size > 1.
Definition: backend/istl/tags.hh:56
dynamic_matrix base_tag
Definition: backend/istl/tags.hh:69
Tag describing a BlockVector.
Definition: backend/istl/tags.hh:24
field_vector base_tag
Base tag for this tag category.
Definition: backend/istl/tags.hh:47
Tag describing a FieldMatrix with row block size > 1 and arbitrary column block size.
Definition: backend/istl/tags.hh:92
Tag describing a FieldMatrix with arbitrary row block size and column block size > 1...
Definition: backend/istl/tags.hh:100
Tag describing a FieldMatrix with row block size 1 and arbitrary column block size.
Definition: backend/istl/tags.hh:88
Tag describing a DynamicVector.
Definition: backend/istl/tags.hh:30
ImplementationDefined type
The container tag associated with T.
Definition: backend/istl/tags.hh:146
Tag describing a field vector with block size 1.
Definition: backend/istl/tags.hh:51
Tag describing a FieldMatrix with row block size 1 and column block size 1.
Definition: backend/istl/tags.hh:104
Tag describing a DynamicMatrix.
Definition: backend/istl/tags.hh:67
Tag describing a FieldMatrix with arbitrary row block size and column block size 1.
Definition: backend/istl/tags.hh:96
field_matrix base_tag
Base tag for this tag category.
Definition: backend/istl/tags.hh:84
Tag describing an arbitrary FieldVector.
Definition: backend/istl/tags.hh:44
bcrs_matrix base_tag
Definition: backend/istl/tags.hh:63
tags::container< T >::type container_tag(const T &)
Gets instance of container tag associated with T.
Definition: backend/istl/tags.hh:247
block_vector base_tag
Definition: backend/istl/tags.hh:26
Tag describing an arbitrary FieldMatrix.
Definition: backend/istl/tags.hh:81