Dune::base_array_unmanaged< B, A > Class Template Reference

A simple array container for objects of type B. More...

#include <dune/istl/basearray.hh>

Inheritance diagram for Dune::base_array_unmanaged< B, A >:
Inheritance graph

List of all members.

Classes

class  RealIterator
 Iterator implementation class. More...

Public Types

typedef B member_type
 export the type representing the components
typedef A allocator_type
 export the allocator type
typedef A::size_type size_type
 the type for the index access
typedef RealIterator< B > iterator
 iterator type for sequential access
typedef RealIterator< const B > const_iterator
 iterator class for sequential access

Public Member Functions

B & operator[] (size_type i)
 random access to blocks
const B & operator[] (size_type i) const
 same for read only access
iterator begin ()
 begin iterator
iterator end ()
 end iterator
iterator rbegin ()
 begin reverse iterator
iterator rend ()
 end reverse iterator
iterator find (size_type i)
 random access returning iterator (end if not contained)
const_iterator begin () const
 begin const_iterator
const_iterator end () const
 end const_iterator
const_iterator rbegin () const
 begin reverse const_iterator
const_iterator rend () const
 end reverse const_iterator
const_iterator find (size_type i) const
 random access returning iterator (end if not contained)
size_type size () const
 number of blocks in the array (are of size 1 here)

Protected Member Functions

 base_array_unmanaged ()
 makes empty array
 base_array_unmanaged (size_type n_, B *p_)
 make an initialized array

Protected Attributes

size_type n
B * p

Detailed Description

template<class B, class A = ISTLAllocator>
class Dune::base_array_unmanaged< B, A >

A simple array container for objects of type B.

Implement.

This container has *NO* memory management at all, copy constuctor, assignment and destructor are all default.

The constructor is made protected to emphasize that objects are only usably in derived classes.

Error checking: no error checking is provided normally. Setting the compile time switch DUNE_ISTL_WITH_CHECKING enables error checking.


Member Typedef Documentation

template<class B, class A = ISTLAllocator>
typedef A Dune::base_array_unmanaged< B, A >::allocator_type
template<class B, class A = ISTLAllocator>
typedef RealIterator<const B> Dune::base_array_unmanaged< B, A >::const_iterator

iterator class for sequential access

Reimplemented in Dune::base_array_window< B, A >, and Dune::base_array< B, A >.

template<class B, class A = ISTLAllocator>
typedef RealIterator<B> Dune::base_array_unmanaged< B, A >::iterator

iterator type for sequential access

Reimplemented in Dune::base_array_window< B, A >, and Dune::base_array< B, A >.

template<class B, class A = ISTLAllocator>
typedef B Dune::base_array_unmanaged< B, A >::member_type

export the type representing the components

Reimplemented in Dune::base_array_window< B, A >, and Dune::base_array< B, A >.

template<class B, class A = ISTLAllocator>
typedef A::size_type Dune::base_array_unmanaged< B, A >::size_type

Constructor & Destructor Documentation

template<class B, class A = ISTLAllocator>
Dune::base_array_unmanaged< B, A >::base_array_unmanaged (  )  [inline, protected]

makes empty array

template<class B, class A = ISTLAllocator>
Dune::base_array_unmanaged< B, A >::base_array_unmanaged ( size_type  n_,
B *  p_ 
) [inline, protected]

make an initialized array


Member Function Documentation

template<class B, class A = ISTLAllocator>
const_iterator Dune::base_array_unmanaged< B, A >::begin (  )  const [inline]

begin const_iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

template<class B, class A = ISTLAllocator>
iterator Dune::base_array_unmanaged< B, A >::begin (  )  [inline]

begin iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

Referenced by Dune::Matrix< T, A >::begin(), test_basearray(), and test_IO().

template<class B, class A = ISTLAllocator>
const_iterator Dune::base_array_unmanaged< B, A >::end (  )  const [inline]

end const_iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

template<class B, class A = ISTLAllocator>
iterator Dune::base_array_unmanaged< B, A >::end (  )  [inline]

end iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

Referenced by Dune::Matrix< T, A >::end(), test_basearray(), and test_IO().

template<class B, class A = ISTLAllocator>
const_iterator Dune::base_array_unmanaged< B, A >::find ( size_type  i  )  const [inline]

random access returning iterator (end if not contained)

template<class B, class A = ISTLAllocator>
iterator Dune::base_array_unmanaged< B, A >::find ( size_type  i  )  [inline]

random access returning iterator (end if not contained)

template<class B, class A = ISTLAllocator>
const B& Dune::base_array_unmanaged< B, A >::operator[] ( size_type  i  )  const [inline]

same for read only access

template<class B, class A = ISTLAllocator>
B& Dune::base_array_unmanaged< B, A >::operator[] ( size_type  i  )  [inline]

random access to blocks

template<class B, class A = ISTLAllocator>
const_iterator Dune::base_array_unmanaged< B, A >::rbegin (  )  const [inline]

begin reverse const_iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

template<class B, class A = ISTLAllocator>
iterator Dune::base_array_unmanaged< B, A >::rbegin (  )  [inline]

begin reverse iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

Referenced by Dune::Matrix< T, A >::rbegin().

template<class B, class A = ISTLAllocator>
const_iterator Dune::base_array_unmanaged< B, A >::rend (  )  const [inline]

end reverse const_iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

template<class B, class A = ISTLAllocator>
iterator Dune::base_array_unmanaged< B, A >::rend (  )  [inline]

end reverse iterator

Reimplemented in Dune::VariableBlockVector< B, A >.

Referenced by Dune::Matrix< T, A >::rend().

template<class B, class A = ISTLAllocator>
size_type Dune::base_array_unmanaged< B, A >::size (  )  const [inline]

Member Data Documentation

template<class B, class A = ISTLAllocator>
size_type Dune::base_array_unmanaged< B, A >::n [protected]

Referenced by Dune::base_array_window< B, A >::advance(), Dune::block_vector_unmanaged< row_type, allocator_type >::axpy(), Dune::base_array< B, A >::base_array(), Dune::BlockVector< row_type, allocator_type >::BlockVector(), Dune::BlockVectorWindow< B, A >::BlockVectorWindow(), Dune::block_vector_unmanaged< row_type, allocator_type >::dim(), Dune::base_array_unmanaged< row_type, allocator_type >::end(), Dune::base_array_unmanaged< row_type, allocator_type >::find(), Dune::BlockVectorWindow< B, A >::getsize(), Dune::block_vector_unmanaged< row_type, allocator_type >::infinity_norm(), Dune::block_vector_unmanaged< row_type, allocator_type >::infinity_norm_real(), Dune::base_array_window< B, A >::move(), Dune::block_vector_unmanaged< row_type, allocator_type >::N(), Dune::block_vector_unmanaged< row_type, allocator_type >::one_norm(), Dune::block_vector_unmanaged< row_type, allocator_type >::one_norm_real(), Dune::block_vector_unmanaged< row_type, allocator_type >::operator*(), Dune::block_vector_unmanaged< row_type, allocator_type >::operator*=(), Dune::VariableBlockVector< B, A >::CreateIterator::operator++(), Dune::block_vector_unmanaged< row_type, allocator_type >::operator+=(), Dune::block_vector_unmanaged< row_type, allocator_type >::operator-=(), Dune::block_vector_unmanaged< row_type, allocator_type >::operator/=(), Dune::VariableBlockVector< B, A >::operator=(), Dune::BlockVectorWindow< B, A >::operator=(), Dune::BlockVector< row_type, allocator_type >::operator=(), Dune::block_vector_unmanaged< row_type, allocator_type >::operator=(), Dune::base_array< B, A >::operator=(), Dune::base_array_unmanaged< row_type, allocator_type >::operator[](), Dune::base_array_unmanaged< row_type, allocator_type >::rbegin(), Dune::VariableBlockVector< B, A >::resize(), Dune::BlockVector< row_type, allocator_type >::resize(), Dune::base_array< B, A >::resize(), Dune::BlockVectorWindow< B, A >::set(), Dune::base_array_window< B, A >::set(), Dune::BlockVectorWindow< B, A >::setsize(), Dune::base_array_unmanaged< row_type, allocator_type >::size(), Dune::block_vector_unmanaged< row_type, allocator_type >::two_norm(), Dune::block_vector_unmanaged< row_type, allocator_type >::two_norm2(), Dune::VariableBlockVector< B, A >::VariableBlockVector(), Dune::base_array< B, A >::~base_array(), and Dune::VariableBlockVector< B, A >::~VariableBlockVector().

template<class B, class A = ISTLAllocator>
B* Dune::base_array_unmanaged< B, A >::p [protected]

The documentation for this class was generated from the following file:
Generated on Sat Apr 24 11:13:48 2010 for dune-istl by  doxygen 1.6.3