⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 ffb.h

📁 Centrality Atlas II development software
💻 H
字号:
/* * $QNXLicenseC:  * Copyright 2007, 2008, QNX Software Systems.   *   * Licensed under the Apache License, Version 2.0 (the "License"). You   * may not reproduce, modify or distribute this software except in   * compliance with the License. You may obtain a copy of the License   * at: http://www.apache.org/licenses/LICENSE-2.0   *   * Unless required by applicable law or agreed to in writing, software   * distributed under the License is distributed on an "AS IS" basis,   * WITHOUT WARRANTIES OF ANY KIND, either express or implied.  *  * This file may contain contributions from others, either as   * contributors under the License or as licensors under other terms.    * Please review this entire file for other proprietary rights or license   * notices, as well as the QNX Development Suite License Guide at   * http://licensing.qnx.com/license-guide/ for other information.  * $  */#ifndef _GRAPHICS_FFB_H_INCLUDED#define _GRAPHICS_FFB_H_INCLUDED#ifndef _GRAPHICS_DISPLAY_H_INCLUDED#include <graphics/display.h>#endiftypedef struct {	int		rbank_size;	/* Size of read aperture */	int		wbank_size;	/* Size of write aperture */	int		rbank_current;	int		wbank_current;	void		(*set_rbank)(void *arg, int bankno);	void		(*set_wbank)(void *arg, int bankno);	uint8_t		*rptr;		/* Virtual address of read aperture */	uint8_t		*wptr;		/* Virtual address of write aperture */	void		*arg;		/* Argument to pass to bank-switch routines */	uint32_t	reserved[4];} ffb_bankinfo_t;__BEGIN_DECLS/* Core functions */void ffb_core_blit1(disp_draw_context_t *ctx,    int sx, int sy, int dx, int dy, int width, int height);void ffb_core_blit2(disp_draw_context_t *ctx,    disp_surface_t *src, disp_surface_t *dst,    int sx, int sy, int dx, int dy, int width, int height);void ffb_core_scaled_blit(disp_draw_context_t *ctx,    disp_surface_t *src, disp_surface_t *dst,    int sx1, int sy1, int sx2, int sy2,    int dx1, int dy1, int dx2, int dy2);void ffb_core_draw_line(disp_draw_context_t *ctx, disp_color_t color,    int x1, int y1, int x2, int y2, unsigned flags);void ffb_core_blend_pixels(disp_draw_context_t *ctx,    disp_color_t color, int x[], int y[], uint8_t alpha[], int npixels);int ffb_core_fill_poly(disp_draw_context_t *ctx, disp_color_t color,    disp_point_t *pointlist, int npoints, unsigned flags);int ffb_get_bresenham_params(disp_draw_context_t *ctx,    int x1, int y1, int x2, int y2,    int *initial_error, int *major_inc, int *minor_inc);void ffb_draw_span_8(disp_draw_context_t *context,    disp_color_t color, int x1, int x2, int y);void ffb_draw_span_list_8(disp_draw_context_t *context, int count,    disp_color_t color, int x1[], int x2[], int y[]);void ffb_draw_solid_rect_8(disp_draw_context_t *context,    disp_color_t color, int x1, int y1, int x2, int y2);void ffb_draw_line_pat8x1_8(disp_draw_context_t *context, disp_color_t fgcolor,    disp_color_t bgcolor, int x1, int x2, int y, uint8_t pattern);void ffb_draw_line_trans8x1_8(disp_draw_context_t *context, disp_color_t color,    int x1, int x2, int y, uint8_t pattern);void ffb_draw_rect_pat8x8_8(disp_draw_context_t *context,    disp_color_t fgcolor, disp_color_t bgcolor, int x1, int y1,    int x2, int y2);void ffb_draw_rect_trans8x8_8(disp_draw_context_t *context,    disp_color_t color, int x1, int y1,    int x2, int y2);void ffb_draw_bitmap_8(disp_draw_context_t *context,    uint8_t *image, int sstride, int bit0_offset,    disp_color_t fgcolor, disp_color_t bgcolor,    int transparent, int dx, int dy, int width, int height);void ffb_draw_span_16(disp_draw_context_t *context,    disp_color_t color, int x1, int x2, int y);void ffb_draw_span_list_16(disp_draw_context_t *context, int count,    disp_color_t color, int x1[], int x2[], int y[]);void ffb_draw_solid_rect_16(disp_draw_context_t *context,    disp_color_t color, int x1, int y1, int x2, int y2);void ffb_draw_line_pat8x1_16(disp_draw_context_t *context, disp_color_t fgcolor,    disp_color_t bgcolor, int x1, int x2, int y, uint8_t pattern);void ffb_draw_line_trans8x1_16(disp_draw_context_t *context, disp_color_t color,    int x1, int x2, int y, uint8_t pattern);void ffb_draw_rect_pat8x8_16(disp_draw_context_t *context,    disp_color_t fgcolor, disp_color_t bgcolor, int x1, int y1,    int x2, int y2);void ffb_draw_rect_trans8x8_16(disp_draw_context_t *context,    disp_color_t color, int x1, int y1,    int x2, int y2);void ffb_draw_bitmap_16(disp_draw_context_t *context,    uint8_t *image, int sstride, int bit0_offset,    disp_color_t fgcolor, disp_color_t bgcolor,    int transparent, int dx, int dy, int width, int height);void ffb_draw_span_24(disp_draw_context_t *context,    disp_color_t color, int x1, int x2, int y);void ffb_draw_span_list_24(disp_draw_context_t *context, int count,    disp_color_t color, int x1[], int x2[], int y[]);void ffb_draw_solid_rect_24(disp_draw_context_t *context,    disp_color_t color, int x1, int y1, int x2, int y2);void ffb_draw_line_pat8x1_24(disp_draw_context_t *context, disp_color_t fgcolor,    disp_color_t bgcolor, int x1, int x2, int y, uint8_t pattern);void ffb_draw_line_trans8x1_24(disp_draw_context_t *context, disp_color_t color,    int x1, int x2, int y, uint8_t pattern);void ffb_draw_rect_pat8x8_24(disp_draw_context_t *context,    disp_color_t fgcolor, disp_color_t bgcolor, int x1, int y1,    int x2, int y2);void ffb_draw_rect_trans8x8_24(disp_draw_context_t *context,    disp_color_t color, int x1, int y1,    int x2, int y2);void ffb_draw_bitmap_24(disp_draw_context_t *context,    uint8_t *image, int sstride, int bit0_offset,    disp_color_t fgcolor, disp_color_t bgcolor,    int transparent, int dx, int dy, int width, int height);void ffb_draw_span_32(disp_draw_context_t *context,    disp_color_t color, int x1, int x2, int y);void ffb_draw_span_list_32(disp_draw_context_t *context, int count,    disp_color_t color, int x1[], int x2[], int y[]);void ffb_draw_solid_rect_32(disp_draw_context_t *context,    disp_color_t color, int x1, int y1, int x2, int y2);void ffb_draw_line_pat8x1_32(disp_draw_context_t *context, disp_color_t fgcolor,    disp_color_t bgcolor, int x1, int x2, int y, uint8_t pattern);void ffb_draw_line_trans8x1_32(disp_draw_context_t *context, disp_color_t color,    int x1, int x2, int y, uint8_t pattern);void ffb_draw_rect_pat8x8_32(disp_draw_context_t *context,    disp_color_t fgcolor, disp_color_t bgcolor, int x1, int y1,    int x2, int y2);void ffb_draw_rect_trans8x8_32(disp_draw_context_t *context,    disp_color_t color, int x1, int y1,    int x2, int y2);void ffb_draw_bitmap_32(disp_draw_context_t *context,    uint8_t *image, int sstride, int bit0_offset,    disp_color_t fgcolor, disp_color_t bgcolor,    int transparent, int dx, int dy, int width, int height);/* Draw state update notify functions */void ffb_update_draw_surface(disp_draw_context_t *context);void ffb_update_pattern(disp_draw_context_t *context);void ffb_update_transform(disp_draw_context_t *context);void ffb_update_clipping(disp_draw_context_t *context);/* Context functions */void ffb_ctx_draw_span(disp_draw_context_t *context,    unsigned x1, unsigned x2, unsigned y);void ffb_ctx_draw_span_list(disp_draw_context_t *context,    int count, int x1[], int x2[], int y[]);void ffb_ctx_draw_rect(disp_draw_context_t *context,    unsigned x1, unsigned y1, unsigned x2, unsigned y2);void ffb_ctx_blit(disp_draw_context_t *ctx,    disp_surface_t *src, disp_surface_t *dst,    unsigned sx, unsigned sy, unsigned dx, unsigned dy,    unsigned width, unsigned height);void ffb_ctx_scaled_blit(disp_draw_context_t *ctx,    disp_surface_t *src, disp_surface_t *dst,    int sx1, int sy1, int sx2, int sy2,    int dx1, int dy1, int dx2, int dy2);void ffb_ctx_draw_line(disp_draw_context_t *ctx,    int x1, int y1, int x2, int y2, unsigned flags);int ffb_ctx_fill_poly(disp_draw_context_t *ctx,    disp_point_t *point_list, int npoints, unsigned flags);int ffb_ctx_draw_polyline(disp_draw_context_t *ctx,    disp_point_t *pointlist, int npoints, int width, unsigned flags);void ffb_ctx_blend_pixels(disp_draw_context_t *ctx,    int x[], int y[], uint8_t alpha[], int npixels);/* Miscellaneous */void ffb_wait_idle(disp_draw_context_t *context);int ffb_hw_idle(disp_adapter_t *context, void *ignored);void ffb_set_draw_surface(disp_draw_context_t *context, disp_surface_t *surf);int ffb_get_2d_caps(disp_adapter_t *adapter, disp_surface_t *surf,    disp_2d_caps_t *caps);/* Draw state update notify functions */void ffb_ctx_update_general(disp_draw_context_t *context);void ffb_ctx_update_color(disp_draw_context_t *context);void ffb_ctx_update_rop3(disp_draw_context_t *context);void ffb_ctx_update_chroma(disp_draw_context_t *context);void ffb_ctx_update_alpha(disp_draw_context_t *context);void ffb_ctx_update_planemask(disp_draw_context_t *context);void ffb_ctx_update_line(disp_draw_context_t *context);/* Draw function retrieval routines */int ffb_get_corefuncs(disp_adapter_t *context,    unsigned pixel_format, disp_draw_corefuncs_t *funcs, int tabsize);int ffb_get_contextfuncs(disp_adapter_t *context, disp_draw_contextfuncs_t *funcs, int tabsize);typedef void (*ffb_cvtfunc_t)(void *, void *, int, void *);ffb_cvtfunc_t ffb_cvtfunc(disp_surface_t *src,    disp_surface_t *dst, void **extra);ffb_cvtfunc_t ffb_cvtfunc_swap(disp_surface_t *src,    disp_surface_t *dst, void **extra);/* Scanline scaling-in-place routine */void ffb_scale_scanline(unsigned pixel_format,    uint8_t *data, int swidth, int dwidth, int startpixel, int npixels);__END_DECLS#endif /* _GRAPHICS_FFB_H_INCLUDED */

⌨️ 快捷键说明

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