21 #ifndef otbObjectList_h 22 #define otbObjectList_h 25 #include "itkDataObject.h" 27 #include "itkObjectFactory.h" 39 template <
class TObject>
65 void Reserve(InternalContainerSizeType size);
71 InternalContainerSizeType Capacity(
void)
const;
77 InternalContainerSizeType Size(
void)
const override;
83 void Resize(InternalContainerSizeType size);
89 void PushBack(ObjectType*
element);
101 void SetNthElement(
unsigned int index, ObjectPointerType
element);
102 void SetNthElement(
unsigned int index,
const ObjectType*
element);
109 ObjectPointerType GetNthElement(
unsigned int index)
const;
115 Superclass* GetNthDataObject(
unsigned int index)
const override;
121 ObjectPointerType Front(
void);
127 ObjectPointerType Back(
void);
133 void Erase(
unsigned int index);
141 class ReverseIterator;
142 class ReverseConstIterator;
144 friend class Iterator;
145 friend class ConstIterator;
146 friend class ReverseIterator;
147 friend class ReverseConstIterator;
154 Iterator Insert(Iterator position, ObjectPointerType
element);
161 ReverseIterator Insert(ReverseIterator position, ObjectPointerType
element);
189 ObjectPointerType
Get(
void)
257 return (m_Iter != it.
m_Iter);
265 return (m_Iter == it.
m_Iter);
323 ObjectPointerType
Get(
void)
351 return (m_Iter != it.
m_Iter);
359 return (m_Iter == it.
m_Iter);
398 InternalConstIteratorType
m_Iter;
428 ObjectPointerType
Get(
void)
464 return (m_Iter != it.
m_Iter);
472 return (m_Iter == it.
m_Iter);
532 ObjectPointerType
Get(
void)
560 return (m_Iter != it.
m_Iter);
568 return (m_Iter == it.
m_Iter);
607 InternalReverseConstIteratorType
m_Iter;
680 void PrintSelf(std::ostream& os, itk::Indent indent)
const override;
684 void operator=(
const Self&) =
delete;
690 #ifndef OTB_MANUAL_INSTANTIATION ReverseIterator of the object list.
ReverseConstIterator & operator--()
ReverseConstIterator(const ReverseConstIterator &it)
InternalContainerType::size_type InternalContainerSizeType
InternalConstIteratorType m_Iter
InternalIteratorType & GetIter(void)
ReverseConstIterator & operator=(const ReverseIterator &it)
ReverseConstIterator(const ReverseIterator &it)
ReverseIterator(InternalReverseIteratorType iter)
InternalIteratorType m_Iter
InternalContainerType m_InternalContainer
InternalContainerType::const_iterator InternalConstIteratorType
ReverseConstIterator of the object list.
Iterator of the object list.
ConstIterator(const ConstIterator &it)
InternalContainerType::const_reverse_iterator InternalReverseConstIteratorType
bool operator!=(const ReverseConstIterator &it)
ConstIterator & operator--()
ObjectPointerType Get(void)
bool operator==(const ConstIterator &it)
InternalContainerType::reverse_iterator InternalReverseIteratorType
ConstIterator & operator=(const ConstIterator &it)
itk::SmartPointer< ObjectType > ObjectPointerType
ReverseConstIterator(InternalReverseConstIteratorType iter)
bool operator!=(const ReverseIterator &it)
Iterator & operator=(const Iterator &it)
ConstIterator(const Iterator &it)
ReverseConstIterator & operator++()
This class is a generic all-purpose wrapping around an std::vector<itk::SmartPointer<ObjectType> >...
ConstIterator(InternalConstIteratorType iter)
Iterator operator+(int i)
InternalContainerType::iterator InternalIteratorType
ObjectPointerType Get(void)
bool operator==(const ReverseIterator &it)
InternalReverseIteratorType m_Iter
ReverseIterator & operator=(const ReverseIterator &it)
Iterator operator-(int i)
The "otb" namespace contains all Orfeo Toolbox (OTB) classes.
ConstIterator of the object list.
Iterator(const Iterator &it)
itk::SmartPointer< const Self > ConstPointer
InternalReverseIteratorType & GetIter(void)
itk::SmartPointer< Self > Pointer
std::vector< ObjectPointerType > InternalContainerType
ReverseIterator(const ReverseIterator &it)
Iterator operator-=(int i)
void Set(ObjectPointerType element)
bool operator==(const ReverseConstIterator &it)
bool operator==(const Iterator &it)
ReverseConstIterator & operator=(const ReverseConstIterator &it)
ReverseIterator & operator--()
ConstIterator & operator++()
bool operator!=(const Iterator &it)
bool operator!=(const ConstIterator &it)
InternalReverseConstIteratorType m_Iter
ObjectPointerType Get(void)
ObjectPointerType Get(void)
ReverseIterator & operator++()
Iterator operator+=(int i)
void Set(ObjectPointerType element)
ConstIterator & operator=(const Iterator &it)
Iterator(InternalIteratorType iter)
itk::DataObject Superclass