11#ifndef __Panzer_VectorTemplateIterator_hpp__
12#define __Panzer_VectorTemplateIterator_hpp__
17#include "Teuchos_RCP.hpp"
29template <
typename TypeSeq,
typename BaseT,
typename ObjectT>
42 typename std::vector<std::vector< Teuchos::RCP<BaseT> > >::iterator p)
62 return &(*(*object_iterator_));
79 panzer::VectorTemplateManager<TypeSeq,BaseT,ObjectT> *
manager_;
83template <
typename TypeSeq,
typename BaseT,
typename ObjectT>
89 using value_type =
const std::vector<Teuchos::RCP<BaseT>>;
96 typename std::vector<std::vector< Teuchos::RCP<BaseT> > >::const_iterator p)
116 return &(*(*object_iterator_));
133 const panzer::VectorTemplateManager<TypeSeq,BaseT,ObjectT> *
manager_;
134 typename std::vector<std::vector< Teuchos::RCP<BaseT> > >::const_iterator
object_iterator_;
ConstVectorTemplateIterator & operator++()
Prefix ++.
bool operator!=(const ConstVectorTemplateIterator &t) const
Not equal operator.
panzer::ConstVectorTemplateIterator< TypeSeq, BaseT, ObjectT >::pointer operator->() const
-> operator
ConstVectorTemplateIterator operator++(int)
Postfix ++.
panzer::ConstVectorTemplateIterator< TypeSeq, BaseT, ObjectT >::reference operator*() const
Dereference operator.
const panzer::VectorTemplateManager< TypeSeq, BaseT, ObjectT > * manager_
std::input_iterator_tag iterator_category
ConstVectorTemplateIterator(const panzer::VectorTemplateManager< TypeSeq, BaseT, ObjectT > &m, typename std::vector< std::vector< Teuchos::RCP< BaseT > > >::const_iterator p)
Constructor.
std::ptrdiff_t differnce_type
std::vector< std::vector< Teuchos::RCP< BaseT > > >::const_iterator object_iterator_
const std::vector< Teuchos::RCP< BaseT > > value_type
bool operator==(const ConstVectorTemplateIterator &t) const
Equal operator.
std::input_iterator_tag iterator_category
VectorTemplateIterator & operator++()
Prefix ++.
bool operator==(const VectorTemplateIterator &t) const
Equal operator.
VectorTemplateIterator(panzer::VectorTemplateManager< TypeSeq, BaseT, ObjectT > &m, typename std::vector< std::vector< Teuchos::RCP< BaseT > > >::iterator p)
Constructor.
panzer::VectorTemplateManager< TypeSeq, BaseT, ObjectT > * manager_
std::vector< Teuchos::RCP< BaseT > > value_type
std::ptrdiff_t differnce_type
VectorTemplateIterator operator++(int)
Postfix ++.
bool operator!=(const VectorTemplateIterator &t) const
Not equal operator.
panzer::VectorTemplateIterator< TypeSeq, BaseT, ObjectT >::reference operator*() const
Dereference operator.
panzer::VectorTemplateIterator< TypeSeq, BaseT, ObjectT >::pointer operator->() const
-> operator
std::vector< std::vector< Teuchos::RCP< BaseT > > >::iterator object_iterator_