/* * This file is part of RawTherapee. * * Copyright (c) 2004-2010 Gabor Horvath * * RawTherapee is free software: you can redistribute it and/or modify * it under the terms of the GNU General Public License as published by * the Free Software Foundation, either version 3 of the License, or * (at your option) any later version. * * RawTherapee 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 General Public License for more details. * * You should have received a copy of the GNU General Public License * along with RawTherapee. If not, see . */ #ifndef _SIMPLEUTILS_ #define _SIMPLEUTILS_ namespace rtengine { // update a point of a Cairo::Surface by accessing the raw data void poke255_uc(unsigned char* &dest, unsigned char r, unsigned char g, unsigned char b); // update a point of a Cairo::Surface by accessing the raw data void poke01_d(unsigned char* &dest, double r, double g, double b); // update a point of a Cairo::Surface by accessing the raw data void poke01_f(unsigned char* &dest, float r, float g, float b); void bilinearInterp (const unsigned char* src, int sw, int sh, unsigned char* dst, int dw, int dh); void nearestInterp (const unsigned char* src, int sw, int sh, unsigned char* dst, int dw, int dh); void rotate (unsigned char* img, int& w, int& h, int deg); void hflip (unsigned char* img, int w, int h); void vflip (unsigned char* img, int w, int h); } #endif