###############################################################################
# #
# Copyright © 1989-1991 by Artificial Horizons®, Inc. All rights reserved. #
# #
# This material constitutes the trade secrets and confidential, #
# proprietary information of Bruce Factor and Curtis Priem, and is #
# under license to Artificial Horizons, Inc. The material is not #
# to be disclosed, reproduced, copied, or used in any manner not #
# permitted under license from Artificial Horizons, Inc. For more #
# information email "ahi-interest@ahi.com". #
# #
###############################################################################
RASTER_8BIT(3GC) AVIATOR GRAPHICS INTERFACE CLASSES RASTER_8BIT(3GC)
NAME
FB_CLASS__RASTER_2DS_8BIT_INDEXED - 8 bit indexed raster class
SYNOPSIS
#include <agi.h>
register Fbuffer fbp;
fbstart(fbp, FB_CLASS__RASTER_2DS_8BIT_INDEX) {
} fbend(fbp);
DESCRIPTION
The class FB_CLASS__RASTER_2DS_8BIT_INDEX is used for copying 8 bit
color raster images to the frame buffer.
MEMBERS
The following public members can be accessed by using routines
fbput(3G) and fbget(3G):
FB_MEMBER__XMIN__INTEGER
FB_MEMBER__XMIN__FIXED
FB_MEMBER__XMIN__FLOAT
XMIN is the horizontal location where the left pixel of the
DATA member is to be placed. This 32 bit number can be signed
integer, signed 16.16 fixed point, or IEEE single precision
floating point format. The origin coordinate (0,0) is the
upper left corner of the paint canvas, or the upper left
corner of the frame buffer when running without a windowing
system.
FB_MEMBER__XMAX__INTEGER
FB_MEMBER__XMAX__FIXED
FB_MEMBER__XMAX__FLOAT
XMAX is the horizontal location where the right pixel of the
DATA member is to be placed. This 32 bit number can be signed
integer, signed 16.16 fixed point, or IEEE single precision
floating point format. The origin coordinate (0,0) is the
upper left corner of the paint canvas, or the upper left
corner of the frame buffer when running without a windowing
system.
FB_MEMBER__Y__INTEGER
FB_MEMBER__Y__FIXED
FB_MEMBER__Y__FLOAT
Y is the vertical location where the DATA member is to be
placed. This 32 bit number can be signed integer, signed
16.16 fixed point, or IEEE single precision floating point
format. The origin coordinate (0,0) is the upper left corner
of the paint canvas, or the upper left corner of the frame
buffer when running without a windowing system.
FB_MEMBER__XINC__INTEGER
FB_MEMBER__XINC__FIXED
FB_MEMBER__XINC__FLOAT
XINC is the number of pixels in the horizontal direction that
X will be incremented by when the DATA member is loaded. This
32 bit number can be signed integer, signed 16.16 fixed point,
or IEEE single precision floating point format.
FB_MEMBER__YINC__INTEGER
FB_MEMBER__YINC__FIXED
FB_MEMBER__YINC__FLOAT
YINC is the number of pixels in the vertical direction that Y
will be incremented by when the DATA member is loaded. This
32 bit number can be signed integer, signed 16.16 fixed point,
or IEEE single precision floating point format.
FB_MEMBER__DATA__W32P32N1
DATA is a 32 bit number (Width 32) which contains one row
(Number 1) of 4 eight bit deep pixels (Packed 32). The delta
between XMAX and XMIN should be: 0 <= (XMAX-XMIN) <= 3.
FB_MEMBER__DATA__W32P16N1
DATA is a 32 bit number (Width 32) which contains one row
(Number 1) of 2 eight bit deep pixels (Packed 16) left
justified. The delta between XMAX and XMIN should be:
0 <= (XMAX-XMIN) <= 1.
FB_MEMBER__DATA__W32P16N2
DATA is a 32 bit number (Width 32) which contains two rows
(Number 2) of 2 eight bit deep pixels (Packed 16). The delta
between XMAX and XMIN should be: 0 <= (XMAX-XMIN) <= 1.
FB_MEMBER__DATA__W32P8N1
DATA is a 32 bit number (Width 32) which contains one row
(Number 1) of 1 eight bit deep pixel (Packed 8) left
justified. The delta between XMAX and XMIN should be:
(XMAX-XMIN) == 0.
FB_MEMBER__DATA__W32P8N2
DATA is a 32 bit number (Width 32) which contains two rows
(Number 2) of 1 eight bit deep pixel (Packed 8) left
justified. The delta between XMAX and XMIN should be:
(XMAX-XMIN) == 0.
FB_MEMBER__DATA__W32P8N3
DATA is a 32 bit number (Width 32) which contains three rows
(Number 3) of 1 eight bit deep pixel (Packed 8) left
justified. The delta between XMAX and XMIN should be:
(XMAX-XMIN) == 0.
FB_MEMBER__DATA__W32P8N4
DATA is a 32 bit number (Width 32) which contains four rows
(Number 4) of 1 eight bit deep pixel (Packed 8). The delta
between XMAX and XMIN should be: (XMAX-XMIN) == 0.
FB_MEMBER__DATA__W16P16N1
DATA is a 16 bit number (Width 16) which contains one row
(Number 1) of 2 eight bit deep pixels (Packed 16). The delta
between XMAX and XMIN should be: 0 <= (XMAX-XMIN) <= 1.
FB_MEMBER__DATA__W16P8N1
DATA is a 16 bit number (Width 16) which contains one row
(Number 1) of 1 eight bit deep pixel (Packed 8) left
justified. The delta between XMAX and XMIN should be:
(XMAX-XMIN) == 0.
FB_MEMBER__DATA__W16P8N2
DATA is a 16 bit number (Width 16) which contains two rows
(Number 2) of 1 eight bit deep pixel (Packed 8). The delta
between XMAX and XMIN should be: (XMAX-XMIN) == 0.
FB_MEMBER__DATA__W8P8N1
DATA is a 8 bit number (Width 16) which contains one row
(Number 1) of 1 eight one bit deep pixel (Packed 8). The
delta between XMAX and XMIN should be: (XMAX-XMIN) == 0.
FUNCTIONS
The following public functions can be called by using the fbcall(3G)
routine:
FB_FUNCTION__STORE
The STORE function stores the current coordinate (XMIN, XMAX,
Y) and increment (XINC, YINC) into the frame.
FB_FUNCTION__STORE_INCREMENT
STORE_INCREMENT stores the DATA into the frame buffer. XMIN
and XMAX are then incremented by XINC, and Y is then
incremented by YINC.
FB_FUNCTION__RENDER
RENDER renders the DATA into the frame buffer.
SEE ALSO
fbcall(3G), fbend(3G), fbget(3G), fbput(3G), fbstart(3G)
PERFORMANCE
INTEGER is the fastest format.
AGI Release 1.8 Last change: 25 December 1991