template class cv::Seq
Overview
Template Sequence Class derived from CvSeq
The class provides more convenient access to sequence elements, STL-style operations and iterators. More…
#include <core_c.h> template <typename _Tp> class Seq { public: // typedefs typedef SeqIterator<_Tp> const_iterator; typedef SeqIterator<_Tp> iterator; // fields CvSeq* seq; // construction Seq(); Seq(const CvSeq* seq); Seq( MemStorage& storage, int headerSize = sizeof(CvSeq) ); // methods _Tp& back(); const _Tp& back() const; SeqIterator<_Tp> begin() const; int channels() const; void clear(); void copyTo( std::vector<_Tp>& vec, const Range& range = Range::all() ) const; int depth() const; size_t elemSize() const; bool empty() const; SeqIterator<_Tp> end() const; _Tp& front(); const _Tp& front() const; size_t index(const _Tp& elem) const; void insert( int idx, const _Tp& elem ); void insert( int idx, const _Tp* elems, size_t count ); operator std::vector< _Tp >() const; _Tp& operator[](int idx); const _Tp& operator[](int idx) const; void pop_back(); void pop_back( _Tp* elems, size_t count ); void pop_front(); void pop_front( _Tp* elems, size_t count ); void push_back(const _Tp& elem); void push_back( const _Tp* elems, size_t count ); void push_front(const _Tp& elem); void push_front( const _Tp* elems, size_t count ); void remove(int idx); void remove(const Range& r); size_t size() const; int type() const; };
Detailed Documentation
Template Sequence Class derived from CvSeq
The class provides more convenient access to sequence elements, STL-style operations and iterators.
The class is targeted for simple data types, i.e. no constructors or destructors are called for the sequence elements.
Construction
Seq()
the default constructor
Seq(const CvSeq* seq)
the constructor for wrapping CvSeq structure. The real element type in CvSeq should match _Tp.
Seq( MemStorage& storage, int headerSize = sizeof(CvSeq) )
creates the empty sequence that resides in the specified storage
Methods
_Tp& back()
returns reference to the last sequence element
const _Tp& back() const
returns read-only reference to the last sequence element
SeqIterator<_Tp> begin() const
returns iterator pointing to the beginning of the sequence
int channels() const
returns the number of channels in each sequence element
void clear()
removes all the elements from the sequence
void copyTo( std::vector<_Tp>& vec, const Range& range = Range::all() ) const
copies the whole sequence or the sequence slice to the specified vector
int depth() const
returns the depth of sequence elements (CV_8U … CV_64F)
size_t elemSize() const
returns the size of each sequence element
bool empty() const
returns true iff the sequence contains no elements
SeqIterator<_Tp> end() const
returns iterator pointing to the element following the last sequence element
_Tp& front()
returns reference to the first sequence element
const _Tp& front() const
returns read-only reference to the first sequence element
size_t index(const _Tp& elem) const
returns index of the specified sequence element
void insert( int idx, const _Tp& elem )
inserts the specified element to the specified position
void insert( int idx, const _Tp* elems, size_t count )
inserts zero or more elements to the specified position
operator std::vector< _Tp >() const
returns the vector containing all the sequence elements
_Tp& operator[](int idx)
returns read-write reference to the specified element
const _Tp& operator[](int idx) const
returns read-only reference to the specified element
void pop_back()
removes the last element from the sequence
void pop_back( _Tp* elems, size_t count )
removes zero or more elements from the end of the sequence
void pop_front()
removes the first element from the sequence
void pop_front( _Tp* elems, size_t count )
removes zero or more elements from the beginning of the sequence
void push_back(const _Tp& elem)
appends the specified element to the end of the sequence
void push_back( const _Tp* elems, size_t count )
appends zero or more elements to the end of the sequence
void push_front(const _Tp& elem)
appends the specified element to the front of the sequence
void push_front( const _Tp* elems, size_t count )
appends zero or more elements to the front of the sequence
void remove(int idx)
removes element at the specified position
void remove(const Range& r)
removes the specified subsequence
size_t size() const
returns the number of elements in the sequence
int type() const
returns the type of sequence elements (CV_8UC1 … CV_64FC(CV_CN_MAX)…)