dune-istl
2.4.1
|
Extend base_array_unmanaged by functions to manipulate. More...
#include <dune/istl/basearray.hh>
Public Types | |
typedef B | member_type |
export the type representing the components More... | |
typedef A | allocator_type |
export the allocator type More... | |
typedef base_array_unmanaged < B, A >::iterator | iterator |
make iterators available as types More... | |
typedef base_array_unmanaged < B, A >::const_iterator | const_iterator |
make iterators available as types More... | |
typedef base_array_unmanaged < B, A >::size_type | size_type |
The type used for the index access. More... | |
typedef A::difference_type | difference_type |
The type used for the difference between two iterator positions. More... | |
Public Member Functions | |
base_array_window () | |
makes empty array More... | |
base_array_window (B *_p, size_type _n) | |
make array from given pointer and size More... | |
void | set (size_type _n, B *_p) |
set pointer and length More... | |
void | advance (difference_type newsize) |
advance pointer by newsize elements and then set size to new size More... | |
void | move (difference_type offset, size_type newsize) |
increment pointer by offset and set size More... | |
void | move (difference_type offset) |
increment pointer by offset, leave size More... | |
B * | getptr () |
return the pointer More... | |
B & | operator[] (size_type i) |
random access to blocks More... | |
const B & | operator[] (size_type i) const |
same for read only access More... | |
iterator | begin () |
begin iterator More... | |
const_iterator | begin () const |
begin const_iterator More... | |
iterator | end () |
end iterator More... | |
const_iterator | end () const |
end const_iterator More... | |
iterator | beforeEnd () |
const_iterator | beforeEnd () const |
iterator | beforeBegin () |
const_iterator | beforeBegin () const |
iterator | find (size_type i) |
random access returning iterator (end if not contained) More... | |
const_iterator | find (size_type i) const |
random access returning iterator (end if not contained) More... | |
size_type | size () const |
number of blocks in the array (are of size 1 here) More... | |
Protected Attributes | |
size_type | n |
B * | p |
Extend base_array_unmanaged by functions to manipulate.
This container has NO memory management at all, copy constuctor, assignment and destructor are all default. A container can be constructed as empty or from a given pointer and size. This class is used to implement a view into a larger array.
You can copy such an object to a base_array to make a real copy. Error checking: no error checking is provided normally. Setting the compile time switch DUNE_ISTL_WITH_CHECKING enables error checking.
typedef A Dune::base_array_window< B, A >::allocator_type |
export the allocator type
typedef base_array_unmanaged<B,A>::const_iterator Dune::base_array_window< B, A >::const_iterator |
make iterators available as types
typedef A::difference_type Dune::base_array_window< B, A >::difference_type |
The type used for the difference between two iterator positions.
typedef base_array_unmanaged<B,A>::iterator Dune::base_array_window< B, A >::iterator |
make iterators available as types
typedef B Dune::base_array_window< B, A >::member_type |
export the type representing the components
typedef base_array_unmanaged<B,A>::size_type Dune::base_array_window< B, A >::size_type |
The type used for the index access.
|
inline |
makes empty array
|
inline |
make array from given pointer and size
|
inline |
advance pointer by newsize elements and then set size to new size
References Dune::base_array_unmanaged< B, A >::n, and Dune::base_array_unmanaged< B, A >::p.
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
|
inlineinherited |
begin iterator
Referenced by test_basearray(), and test_IO().
|
inlineinherited |
begin const_iterator
|
inlineinherited |
end iterator
Referenced by test_basearray(), and test_IO().
|
inlineinherited |
end const_iterator
|
inlineinherited |
random access returning iterator (end if not contained)
|
inlineinherited |
random access returning iterator (end if not contained)
|
inline |
return the pointer
References Dune::base_array_unmanaged< B, A >::p.
|
inline |
increment pointer by offset and set size
References Dune::base_array_unmanaged< B, A >::n, and Dune::base_array_unmanaged< B, A >::p.
Referenced by test_basearray().
|
inline |
increment pointer by offset, leave size
References Dune::base_array_unmanaged< B, A >::p.
|
inlineinherited |
random access to blocks
|
inlineinherited |
same for read only access
|
inline |
set pointer and length
References Dune::base_array_unmanaged< B, A >::n, and Dune::base_array_unmanaged< B, A >::p.
|
inlineinherited |
number of blocks in the array (are of size 1 here)
Referenced by Dune::Matrix< T, A >::coldim(), and Dune::BlockVector< FieldVector< T, n >, A >::resize().
|
protectedinherited |
Referenced by Dune::base_array_window< B, A >::advance(), Dune::block_vector_unmanaged< T, A >::axpy(), Dune::base_array< B, A >::base_array(), Dune::base_array_unmanaged< T, A >::beforeEnd(), Dune::BlockVector< FieldVector< T, n >, A >::BlockVector(), Dune::BlockVectorWindow< B, A >::BlockVectorWindow(), Dune::block_vector_unmanaged< T, A >::dim(), Dune::block_vector_unmanaged< T, A >::dot(), Dune::base_array_unmanaged< T, A >::end(), Dune::base_array_unmanaged< T, A >::find(), Dune::BlockVectorWindow< B, A >::getsize(), Dune::block_vector_unmanaged< T, A >::infinity_norm(), Dune::block_vector_unmanaged< T, A >::infinity_norm_real(), Dune::base_array_window< B, A >::move(), Dune::block_vector_unmanaged< T, A >::N(), Dune::block_vector_unmanaged< T, A >::one_norm(), Dune::block_vector_unmanaged< T, A >::one_norm_real(), Dune::block_vector_unmanaged< T, A >::operator*(), Dune::block_vector_unmanaged< T, A >::operator*=(), Dune::VariableBlockVector< B, A >::CreateIterator::operator++(), Dune::block_vector_unmanaged< T, A >::operator+=(), Dune::block_vector_unmanaged< T, A >::operator-=(), Dune::block_vector_unmanaged< T, A >::operator/=(), Dune::block_vector_unmanaged< T, A >::operator=(), Dune::VariableBlockVector< T, A >::operator=(), Dune::base_array< B, A >::operator=(), Dune::BlockVector< FieldVector< T, n >, A >::operator=(), Dune::BlockVectorWindow< B, A >::operator=(), Dune::base_array_unmanaged< T, A >::operator[](), Dune::VariableBlockVector< T, A >::resize(), Dune::BlockVector< FieldVector< T, n >, A >::resize(), Dune::base_array< B, A >::resize(), Dune::base_array_window< B, A >::set(), Dune::BlockVectorWindow< B, A >::set(), Dune::BlockVectorWindow< B, A >::setsize(), Dune::base_array_unmanaged< T, A >::size(), Dune::block_vector_unmanaged< T, A >::two_norm(), Dune::block_vector_unmanaged< T, A >::two_norm2(), Dune::VariableBlockVector< T, A >::VariableBlockVector(), Dune::base_array< B, A >::~base_array(), and Dune::VariableBlockVector< T, A >::~VariableBlockVector().
|
protectedinherited |
Referenced by Dune::base_array_window< B, A >::advance(), Dune::base_array< B, A >::base_array(), Dune::base_array_unmanaged< T, A >::beforeBegin(), Dune::base_array_unmanaged< T, A >::beforeEnd(), Dune::base_array_unmanaged< T, A >::begin(), Dune::BlockVector< FieldVector< T, n >, A >::BlockVector(), Dune::BlockVectorWindow< B, A >::BlockVectorWindow(), Dune::base_array_unmanaged< T, A >::end(), Dune::base_array_unmanaged< T, A >::find(), Dune::base_array_window< B, A >::getptr(), Dune::BlockVectorWindow< B, A >::getptr(), Dune::base_array_window< B, A >::move(), Dune::VariableBlockVector< B, A >::CreateIterator::operator++(), Dune::VariableBlockVector< T, A >::operator=(), Dune::base_array< B, A >::operator=(), Dune::BlockVector< FieldVector< T, n >, A >::operator=(), Dune::BlockVectorWindow< B, A >::operator=(), Dune::base_array_unmanaged< T, A >::operator[](), Dune::BlockVector< FieldVector< T, n >, A >::reserve(), Dune::VariableBlockVector< T, A >::resize(), Dune::base_array< B, A >::resize(), Dune::base_array_window< B, A >::set(), Dune::BlockVectorWindow< B, A >::set(), Dune::BlockVectorWindow< B, A >::setptr(), Dune::VariableBlockVector< T, A >::VariableBlockVector(), Dune::base_array< B, A >::~base_array(), Dune::BlockVector< FieldVector< T, n >, A >::~BlockVector(), and Dune::VariableBlockVector< T, A >::~VariableBlockVector().