#include <Container.h>
Public Member Functions | |
ContainerIterator () | |
ContainerIterator (Handle< IteratorBuffer > &iteratorBuffer) | |
ContainerIterator (const ContainerIterator &rhs) | |
template<typename T > | |
boost::shared_ptr< T > | get () |
Object | getItem () |
int | itemId () |
bool | next () |
ContainerIterator & | operator= (const ContainerIterator &rhs) |
void | reset () |
virtual | ~ContainerIterator () |
Private Member Functions | |
boost::shared_ptr< void > | getItemAsType (const std::type_info &asTypeInfo) |
Private Attributes | |
Handle< IteratorBuffer > | m_buffer |
Definition at line 17 of file Container.h.
ora::ContainerIterator::ContainerIterator | ( | ) |
Definition at line 5 of file Container.cc.
: m_buffer(){ }
ora::ContainerIterator::ContainerIterator | ( | Handle< IteratorBuffer > & | iteratorBuffer | ) | [explicit] |
Definition at line 9 of file Container.cc.
: m_buffer( iteratorBuffer ){ }
ora::ContainerIterator::ContainerIterator | ( | const ContainerIterator & | rhs | ) |
Definition at line 13 of file Container.cc.
: m_buffer( rhs.m_buffer ){ }
ora::ContainerIterator::~ContainerIterator | ( | ) | [virtual] |
Definition at line 17 of file Container.cc.
{ }
boost::shared_ptr< T > ora::ContainerIterator::get | ( | void | ) | [inline] |
Definition at line 115 of file Container.h.
References getItemAsType().
{ return boost::static_pointer_cast<T>( getItemAsType( typeid(T) )); }
ora::Object ora::ContainerIterator::getItem | ( | ) |
Definition at line 37 of file Container.cc.
boost::shared_ptr< void > ora::ContainerIterator::getItemAsType | ( | const std::type_info & | asTypeInfo | ) | [private] |
Definition at line 41 of file Container.cc.
References ora::ClassUtils::lookupDictionary().
Referenced by get().
{ Reflex::Type castType = ClassUtils::lookupDictionary( asTypeInfo ); void* ptr = m_buffer->getItemAsType( castType ); return boost::shared_ptr<void>( ptr, RflxDeleter( m_buffer->type() ) ); }
int ora::ContainerIterator::itemId | ( | ) |
Definition at line 33 of file Container.cc.
{ return m_buffer->itemId(); }
bool ora::ContainerIterator::next | ( | void | ) |
Definition at line 29 of file Container.cc.
{ return m_buffer->next(); }
ora::ContainerIterator & ora::ContainerIterator::operator= | ( | const ContainerIterator & | rhs | ) |
Definition at line 20 of file Container.cc.
References m_buffer.
{ if(this != &rhs ) m_buffer = rhs.m_buffer; return *this; }
void ora::ContainerIterator::reset | ( | void | ) |
Definition at line 25 of file Container.cc.
{ m_buffer->reset(); }
Handle<IteratorBuffer> ora::ContainerIterator::m_buffer [private] |
Definition at line 44 of file Container.h.
Referenced by operator=().