template<typename _Tp> inline
MatConstIterator_<_Tp> Mat::begin() const
{
+ if (empty())
+ return MatConstIterator_<_Tp>();
CV_DbgAssert( elemSize() == sizeof(_Tp) );
return MatConstIterator_<_Tp>((const Mat_<_Tp>*)this);
}
template<typename _Tp> inline
MatConstIterator_<_Tp> Mat::end() const
{
+ if (empty())
+ return MatConstIterator_<_Tp>();
CV_DbgAssert( elemSize() == sizeof(_Tp) );
MatConstIterator_<_Tp> it((const Mat_<_Tp>*)this);
it += total();
template<typename _Tp> inline
MatIterator_<_Tp> Mat::begin()
{
+ if (empty())
+ return MatIterator_<_Tp>();
CV_DbgAssert( elemSize() == sizeof(_Tp) );
return MatIterator_<_Tp>((Mat_<_Tp>*)this);
}
template<typename _Tp> inline
MatIterator_<_Tp> Mat::end()
{
+ if (empty())
+ return MatIterator_<_Tp>();
CV_DbgAssert( elemSize() == sizeof(_Tp) );
MatIterator_<_Tp> it((Mat_<_Tp>*)this);
it += total();
{
if( m && m->isContinuous() )
{
+ CV_Assert(!m->empty());
sliceStart = m->ptr();
sliceEnd = sliceStart + m->total()*elemSize;
}
CV_Assert(m && m->dims <= 2);
if( m->isContinuous() )
{
+ CV_Assert(!m->empty());
sliceStart = m->ptr();
sliceEnd = sliceStart + m->total()*elemSize;
}
CV_Assert(m && m->dims <= 2);
if( m->isContinuous() )
{
+ CV_Assert(!m->empty());
sliceStart = m->ptr();
sliceEnd = sliceStart + m->total()*elemSize;
}