]> icculus.org git repositories - btb/d2x.git/blob - include/ibitblt.h
moved utility to utilities to avoid conflict with c++ std lib <utility>
[btb/d2x.git] / include / ibitblt.h
1 /*
2 THE COMPUTER CODE CONTAINED HEREIN IS THE SOLE PROPERTY OF PARALLAX
3 SOFTWARE CORPORATION ("PARALLAX").  PARALLAX, IN DISTRIBUTING THE CODE TO
4 END-USERS, AND SUBJECT TO ALL OF THE TERMS AND CONDITIONS HEREIN, GRANTS A
5 ROYALTY-FREE, PERPETUAL LICENSE TO SUCH END-USERS FOR USE BY SUCH END-USERS
6 IN USING, DISPLAYING,  AND CREATING DERIVATIVE WORKS THEREOF, SO LONG AS
7 SUCH USE, DISPLAY OR CREATION IS FOR NON-COMMERCIAL, ROYALTY OR REVENUE
8 FREE PURPOSES.  IN NO EVENT SHALL THE END-USER USE THE COMPUTER CODE
9 CONTAINED HEREIN FOR REVENUE-BEARING PURPOSES.  THE END-USER UNDERSTANDS
10 AND AGREES TO THE TERMS HEREIN AND ACCEPTS THE SAME BY USE OF THIS FILE.  
11 COPYRIGHT 1993-1998 PARALLAX SOFTWARE CORPORATION.  ALL RIGHTS RESERVED.
12 */
13 /*
14  * $Source: /cvs/cvsroot/d2x/include/ibitblt.h,v $
15  * $Revision: 1.1.1.1 $
16  * $Author: bradleyb $
17  * $Date: 2001-01-19 03:30:16 $
18  * 
19  * Prototypes for the ibitblt functions.
20  * 
21  * $Log: not supported by cvs2svn $
22  * Revision 1.1.1.1  1999/06/14 22:02:14  donut
23  * Import of d1x 1.37 source.
24  *
25  * Revision 1.2  1994/05/31  11:10:56  john
26  * *** empty log message ***
27  * 
28  * Revision 1.1  1994/05/30  16:08:46  john
29  * Initial revision
30  * 
31  * 
32  */
33
34
35
36 #ifndef _IBITBLT_H
37 #define _IBITBLT_H
38
39 // Finds location/size of the largest "hole" in bitmap mask_bmp
40 void            gr_ibitblt_find_hole_size ( grs_bitmap * mask_bmp, int *minx, int *miny, int *maxx, int *maxy );
41
42 // Creates a code mask that will copy data from a bitmap that is sw by sh starting from 
43 // location sx, sy with a rowsize of srowsize onto another bitmap but only copies
44 // into pixel locations that are defined as transparent in bitmap bmp.
45 #ifdef PCCODE
46 ubyte   *       gr_ibitblt_create_mask ( grs_bitmap * mask_bmp, int sx, int sy, int sw, int sh, int srowsize );
47 #else
48 void  gr_ibitblt_create_mask ( grs_bitmap * mask_bmp, int sx, int sy, int sw, int sh, int srowsize );
49 #endif
50
51 // Copy source bitmap onto destination bitmap, not copying pixels that are defined
52 // transparent by the mask
53 #ifdef PCCODE
54 void            gr_ibitblt (grs_bitmap * source_bmp, grs_bitmap * dest_bmp, ubyte * mask );
55 #else
56 void gr_ibitblt(grs_bitmap *src_bmp, grs_bitmap *dest_bmp, ubyte pixel_double);
57 #endif
58
59 #endif
60