boxsmooth.h

来自「barcode readers [ from Image]」· C头文件 代码 · 共 75 行

H
75
字号
//
// BoxSmooth.h
//   Smooth a gray image with an nxm box filter.
//   Output overwrites input.
//   The box filter is implemented efficiently; only four
//   add operations and one multiply are done per pixel, on average.
//
// Copyright (C) 2003, 2006 by Jon A. Webb (Contact via GMail; username is jonawebb)
//
// This library is free software; you can redistribute it and/or
// modify it under the terms of the GNU Lesser General Public
// License as published by the Free Software Foundation; either
// version 2.1 of the License, or (at your option) any later version.
// 
// This library is distributed in the hope that it will be useful,
// but WITHOUT ANY WARRANTY; without even the implied warranty of
// MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
// Lesser General Public License for more details.
// 
// You should have received a copy of the GNU Lesser General Public
// License along with this library; if not, write to the Free Software
// Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA  02110-1301  USA
//

#ifndef BoxSmooth_h
#define BoxSmooth_h

#include "Image.h"
#include "ImageSize.h"
#include "PipelineStage.h"

#include <e32cons.h>

namespace Algorithm
{
	class CBoxSmooth :
		public Core::MPipelineStage
	{
		// Lifecycle
	public:
		IMPORT_C static CBoxSmooth* NewL(int nFilterWidth, int nFilterHeight);
		~CBoxSmooth(void);
	private:
		CBoxSmooth(int nFilterWidth, int nFilterHeight);

		///////////////////// Overrides ////////////////////////
		//
		// Overrides from MPipelineStage:
		//
			// Operations
		public:
			Core::CImage FrontL();
			void PushL(Core::CImage);

			// Accessors
		public:
			bool Empty() const;
		//
		//
		/////////////////// End of overrides ///////////////////

	private:
		// Attributes
		bool ibEmpty;
		// The image being processed, which overwrites the input.
		Core::CImage iImage;
		// The height of the box filter.
		int inFilterHeight;
		// The width of the box filter.
		int inFilterWidth;
	};
};

#endif // BoxSmooth_h

⌨️ 快捷键说明

复制代码Ctrl + C
搜索代码Ctrl + F
全屏模式F11
增大字号Ctrl + =
减小字号Ctrl + -
显示快捷键?