📄 rowiterator.h
字号:
/* //////////////////////////////////////////////////////////////////////////// INTEL CORPORATION PROPRIETARY INFORMATION// This software is supplied under the terms of a license agreement or// nondisclosure agreement with Intel Corporation and may not be copied// or disclosed except in accordance with the terms of that agreement.// Copyright(c) 2002-2005 Intel Corporation. All Rights Reserved.//////*/#ifndef __ROWITERATOR_H__#define __ROWITERATOR_H__#include "imagecore.h"template <class T>class RowIterator{public: RowIterator() : m_data(0), m_lineStep(0) {} RowIterator(T* data, unsigned int lineStep) : m_data(data), m_lineStep(lineStep) {} RowIterator(const RowIterator& row) : m_data(row.m_data), m_lineStep(row.LineStep()) {} RowIterator(const ImageCore<T>& img) : m_data(img.Data()), m_lineStep(img.LineStep()) {} RowIterator& operator=(const RowIterator& row) { SetData (row.m_data); SetLineStep(row.LineStep()); return *this; } RowIterator& operator=(const ImageCore<T>& img) { SetData (img.Data()); SetLineStep(img.LineStep()); return *this; } void SetData (T* data) { m_data = data; } void SetLineStep(unsigned int lineStep) { m_lineStep = lineStep; } operator T*() const { return m_data; } unsigned int LineStep() const { return m_lineStep; } void operator++() { addrInc(m_data, m_lineStep); } void operator--() { addrInc(m_data, -(int)m_lineStep); }protected: T *m_data; unsigned int m_lineStep;};#endif // __ROWITERATOR_H__
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -