Pillow/src/libImaging/ImDib.h

65 lines
1.2 KiB
C
Raw Normal View History

2010-07-31 06:52:47 +04:00
/*
* The Python Imaging Library
* $Id$
*
* Windows DIB specifics
*
* Copyright (c) Secret Labs AB 1997-98.
* Copyright (c) Fredrik Lundh 1996.
*
* See the README file for information on usage and redistribution.
*/
#ifdef _WIN32
2010-07-31 06:52:47 +04:00
#include "ImPlatform.h"
2010-07-31 06:52:47 +04:00
#if defined(__cplusplus)
extern "C" {
#endif
struct ImagingDIBInstance {
/* Windows interface */
HDC dc;
HBITMAP bitmap;
HGDIOBJ old_bitmap;
BITMAPINFO *info;
UINT8 *bits;
HPALETTE palette;
/* Used by cut and paste */
char mode[4];
int xsize, ysize;
int pixelsize;
int linesize;
ImagingShuffler pack;
ImagingShuffler unpack;
};
2021-01-03 06:17:51 +03:00
typedef struct ImagingDIBInstance *ImagingDIB;
2010-07-31 06:52:47 +04:00
2021-01-03 06:17:51 +03:00
extern char *
ImagingGetModeDIB(int size_out[2]);
2010-07-31 06:52:47 +04:00
2021-01-03 06:17:51 +03:00
extern ImagingDIB
ImagingNewDIB(const char *mode, int xsize, int ysize);
2010-07-31 06:52:47 +04:00
2021-01-03 06:17:51 +03:00
extern void
ImagingDeleteDIB(ImagingDIB im);
2010-07-31 06:52:47 +04:00
2021-01-03 06:17:51 +03:00
extern void
ImagingDrawDIB(ImagingDIB dib, void *dc, int dst[4], int src[4]);
extern void
ImagingExposeDIB(ImagingDIB dib, void *dc);
2010-07-31 06:52:47 +04:00
2021-01-03 06:17:51 +03:00
extern int
ImagingQueryPaletteDIB(ImagingDIB dib, void *dc);
2010-07-31 06:52:47 +04:00
2021-01-03 06:17:51 +03:00
extern void
ImagingPasteDIB(ImagingDIB dib, Imaging im, int xy[4]);
2010-07-31 06:52:47 +04:00
#if defined(__cplusplus)
}
#endif
#endif