wiesel / src / common / wiesel / util / imageutils.h

/**
 * Copyright (C) 2012
 * Christian Fischer
 *
 * https://bitbucket.org/baldur/wiesel/
 *
 * 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 3 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 __WIESEL_UTIL_IMAGEUTILS_H__
#define __WIESEL_UTIL_IMAGEUTILS_H__

#include <wiesel/wiesel-common.def>

namespace wiesel {
namespace imageutils {

	/**
	 * @brief compute the next power-of-two size, which is equal or greater than the input number.
	 */
	WIESEL_COMMON_EXPORT unsigned int getNextPowerOfTwo(unsigned int number);

	/**
	 * @brief increase or decrease the size of the image.
	 * @return the buffer of the resized image, which may be the same as the original input.
	 */
	WIESEL_COMMON_EXPORT unsigned char* resizeImage(
			unsigned char *buffer,			unsigned char bytesPerPixel,
			unsigned int original_width,	unsigned int original_height,
			unsigned int new_width,			unsigned int new_height
	);
}
}


#endif /* IMAGEUTILS_H_ */
Tip: Filter by directory path e.g. /media app.js to search for public/media/app.js.
Tip: Use camelCasing e.g. ProjME to search for ProjectModifiedEvent.java.
Tip: Filter by extension type e.g. /repo .js to search for all .js files in the /repo directory.
Tip: Separate your search with spaces e.g. /ssh pom.xml to search for src/ssh/pom.xml.
Tip: Use ↑ and ↓ arrow keys to navigate and return to view the file.
Tip: You can also navigate files with Ctrl+j (next) and Ctrl+k (previous) and view the file with Ctrl+o.
Tip: You can also navigate files with Alt+j (next) and Alt+k (previous) and view the file with Alt+o.