Stokhos  Development
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Groups Pages
Public Types | Public Member Functions | Protected Attributes | List of all members
Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator Class Reference

Iterator class for iterating over elements of the index set. More...

#include <Stokhos_ProductBasisUtils.hpp>

Inheritance diagram for Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator:
Inheritance graph
[legend]
Collaboration diagram for Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator:
Collaboration graph
[legend]

Public Types

typedef std::iterator
< std::input_iterator_tag,
multiindex_type
base_type
 
typedef
base_type::iterator_category 
iterator_category
 
typedef base_type::value_type value_type
 
typedef base_type::difference_type difference_type
 
typedef base_type::reference reference
 
typedef base_type::pointer pointer
 
typedef const multiindex_typeconst_reference
 
typedef const multiindex_typeconst_pointer
 

Public Member Functions

 Iterator (ordinal_type max_order_, const multiindex_type &component_max_order_, const multiindex_type &index_)
 Constructor. More...
 
bool operator== (const Iterator &it) const
 Compare equality of iterators.
 
bool operator!= (const Iterator &it) const
 Compare inequality of iterators.
 
const_reference operator* () const
 Dereference.
 
const_pointer operator-> () const
 Dereference.
 
Iteratoroperator++ ()
 Prefix increment, i.e., ++iterator. More...
 
Iteratoroperator++ (int)
 Postfix increment, i.e., iterator++.
 

Protected Attributes

ordinal_type max_order
 Maximum order of iterator.
 
multiindex_type component_max_order
 Maximum order for each component.
 
multiindex_type index
 Current value of iterator.
 
ordinal_type dim
 Dimension.
 
Teuchos::Array< ordinal_type > orders
 Maximum orders for each term to determine how to increment.
 

Detailed Description

template<typename ordinal_t>
class Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator

Iterator class for iterating over elements of the index set.

Constructor & Destructor Documentation

template<typename ordinal_t >
Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator::Iterator ( ordinal_type  max_order_,
const multiindex_type component_max_order_,
const multiindex_type index_ 
)
inline

Member Function Documentation

template<typename ordinal_t >
Iterator& Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator::operator++ ( void  )
inline

Prefix increment, i.e., ++iterator.

No particular ordering of the indices is guaranteed. The current implementation produces multi-indices sorted lexographically backwards among the elements, e.g., [0 0], [1 0], [2 0], ... [0 1], [1 1], [2 1], ... but one shouldn't assume that. To obtain a specific ordering, one should implement a "less" functional and put the indices in a sorted container such as std::map<>.

References Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator::component_max_order, Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator::index, and Stokhos::AnisotropicTotalOrderIndexSet< ordinal_t >::Iterator::orders.


The documentation for this class was generated from the following file: