[cairo-commit] cairoxx cairo, NONE, 1.1 cairo.cc, NONE, 1.1 ic, NONE, 1.1 ic.cc, NONE, 1.1 pixman, NONE, 1.1 pixman.cc, NONE, 1.1 pixman.hh, 1.1, NONE

David Bellot commit at pdx.freedesktop.org
Sat Apr 10 19:58:43 PDT 2004


Committed by: yimyom

Update of /cvs/cairo/cairoxx
In directory pdx:/tmp/cvs-serv4268

Added Files:
	cairo cairo.cc ic ic.cc pixman pixman.cc 
Removed Files:
	pixman.hh 
Log Message:
skel for the library


--- NEW FILE: cairo ---

--- NEW FILE: cairo.cc ---

--- NEW FILE: ic ---

--- NEW FILE: ic.cc ---

--- NEW FILE: pixman ---
// C++ Bindings of Cairo
// Copyright (C) 2004 David Bellot 
// 
// 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., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA

// Author : David Bellot <bellot at stat.berkeley.edu, yimyom at users.sourceforge.net, bellot at inrialpes.fr>

class CompositeFunc {
	public:
	private:
};

// ############
// Ic namespace
// ############

namespace Ic {

typedef pixman_operator_t ic_operator;

class AccessMap {
	public:
		
	private:
};

class CombineFunc {
	public:
	private:
};

class CompSrc {
	public:
	private:
};

class IndexType {
	public:
	private:
};

class Pixels {
	public:
	private:
};

class Point {
	public:
	private:
};

class Stip {
	public:
	private:
};

class Stride {
	public:
	private:
};

class MergeRopPtr {
	public:
	private:
};

class MergeRopRec {
	public:
	private:
};

}

// ################
// Pixman namespace
// ################

namespace Pixman {

typedef pixman_region_status_t status;
typedef enum {rgnOUT, rgnIN, rgnPART} rgn;
typedef pixman_format_tName tName;	// XXX format_tName or tName
typedef pixman_fixed16_16_t; fixed16_16;
typedef pixman_point_fixed_t point_fixed;
typedef pixman_line_fixed_t line_fixed;

class compositeFetch {
	public:
	private:
};

class compositeOperand {
	public:
	private:
};

class compositeSet {
	public:
	private:
};

class compositeStep {
	public:
	private:
};

class compositeStore {
	public:
	private:
};

class box16 {
	public:
	private:
};

class color {
	public:
	private:
};

class filter {
	public:
	private:
};

class fixed16_16 {
	public:
	private:
};

class format {
	public:
		format(tName name);
		format(int bpp, int alpha_mask, int red_mask, int green_mask, int blue_mask);
		~format();

		void color_to_pixel(const pixman_color_t	*color, pixman_bits_t		*pixel);
		void pixel_to_color(pixman_bits_t		pixel, pixman_color_t		*color);
	private:
};

class format_tName {
	public:
	private:
};

class image {
	public:
		image(int width, int height);
		image(pixman_bits_t *data, format& f,  int width, int height, int bpp, int stride);
		~image();

		int set_clip_region(region16& region);
		int set_transform(pixman_transform_t *transform);
		void set_repeat(int repeat);
		void set_filter(pixman_filter_t	filter);
		int get_width();
		int get_height();
		int get_stride();
		int get_depth();
		format get_format();	
		pixman_bits_t *get_data();

		void fill_rectangle(pixman_operator_t op,const pixman_color_t *color, int x, int y, unsigned int width, unsigned int height);
		void fill_rectangles(pixman_operator_t op,const pixman_color_t *color, const pixman_rectangle_t	*rects, int nRects);
		void composite_trapezoids(pixman_operator_t op, image& src, int	xSrc, int ySrc, const pixman_trapezoid_t *traps, int ntrap);
		void composite_triangles(pixman_operator_t op , image& src, int	xSrc, int ySrc, const pixman_triangle_t	*tris, int ntris); 
		void composite_tri_strip(pixman_operator_t op , image& src, int	xSrc, int ySrc, const pixman_point_fixed_t *points, int npoints);
		void composite_tri_fan(pixman_operator_t op   , image& src, int	xSrc, int ySrc, const pixman_point_fixed_t *points, int npoints);
		void composite(pixman_operator_t op, image& iSrc, image& iMask, int xSrc, int ySrc, int xMask, int yMask, int xDst, int	yDst, int width, int height);
	private:
};

class line_fixed {
	public:
	private:
};

class operator {
	public:
	private:
};

class point_fixed {
	public:
	private:
};

class rectangle {
	public:
	private:
};

class region16 {
	public:
		region16();
		region16(box16& extents);
		~region16();

		void translate(int x, int y);
		status copy(region16& dest);
		status intersect(pixman_region16_t *newReg, pixman_region16_t *reg1, pixman_region16_t *reg2); //XXX
		status union(pixman_region16_t *newReg, pixman_region16_t *reg1, pixman_region16_t *reg2); //XXX
		status union_rect(region16& dest, int x, int y, unsigned int width, unsigned int height); 
		status substract(pixman_region16_t *regD, pixman_region16_t *regM, pixman_region16_t *regS); //XXX
		status inverse(pixman_region16_t *newReg, pixman_region16_t *reg1, pixman_box16_t *invRect); //XXX
	
		int num_rects();
		box16 rects(); //XXX
		int contains_point(int x, int y, box16& box);
		int contains_rectangle(box16& prect);
		int not_empty();
		box16 extents(); //XXX
		status append(region16& src); // XXX operator
		status validate(int *pOverlap);
		void reset(box16 &pBox);
		void empty();
		
	private:
		pixman_region16_t *obj;
};

class region_status {
	public:
	private:
};

class transform {
	public:
	private:
};

class trapezoid {
	public:
	private:
};

class triangle {
	public:
	private:
};

class vector {
	public:
	private:
};

class region16_tData {
	public:
	private:
};

class region16_tPoint {
	public:
	private:
};

}

class DirectFormatPtr {
	public:
	private:
};


class Mask {
	public:
	private:
};

class PictFormatPtr {
	public:
	private:
};

class PicturePtr {
	public:
	private:
};

class Pixel {
	public:
	private:
};

class xFixed {
	public:
	private:
};

class xFixed_16_16 {
	public:
	private:
};

class xFixed_1_16 {
	public:
	private:
};

class xFixed_1_31 {
	public:
	private:
};

class xFixed_32_32 {
	public:
	private:
};

class xFixed_32_32 {
	public:
	private:
};

class xFixed_32_32 {
	public:
	private:
};



--- NEW FILE: pixman.cc ---

--- pixman.hh DELETED ---





More information about the cairo-commit mailing list