netsurf/riscos/bitmap.h
Richard Wilson 3d9a1198db [project @ 2006-02-22 01:58:19 by rjw]
Reduce constant bitmap overhead per reference by moving to a flag word. Allow bitmaps to be reduced back to their raw data to free extra memory in a highly efficient manner.

svn path=/import/netsurf/; revision=2089
2006-02-22 01:58:19 +00:00

57 lines
1.3 KiB
C

/*
* This file is part of NetSurf, http://netsurf.sourceforge.net/
* Licensed under the GNU General Public License,
* http://www.opensource.org/licenses/gpl-license
* Copyright 2004 James Bursa <bursa@users.sourceforge.net>
*/
#ifndef _NETSURF_RISCOS_BITMAP_H_
#define _NETSURF_RISCOS_BITMAP_H_
#include "oslib/osspriteop.h"
#include "netsurf/image/bitmap.h"
struct osspriteop_area;
struct bitmap {
int width;
int height;
unsigned int state;
void *private_word;
void (*invalidate)(struct bitmap *bitmap, void *private_word);
osspriteop_area *sprite_area; /** Uncompressed data, or NULL */
char *compressed; /** Compressed data, or NULL */
char filename[12]; /** Data filename, or '/0' */
struct bitmap *previous; /** Previous bitmap */
struct bitmap *next; /** Next bitmap */
};
struct bitmap *bitmap_create_file(char *file);
void bitmap_initialise_memory(void);
void bitmap_quit(void);
void bitmap_maintain(void);
/** Whether maintenance of the pool states is needed
*/
extern bool bitmap_maintenance;
/** Whether maintenance of the pool is high priority
*/
extern bool bitmap_maintenance_priority;
/** Maximum amount of memory for direct images
*/
extern unsigned int bitmap_direct_size;
/** Total size of compressed area
*/
extern unsigned int bitmap_compressed_size;
#endif