mirror of
https://gitlab.gnome.org/GNOME/gimp
synced 2024-10-24 05:22:00 +00:00
d2e6afe08c
Sun Jul 12 19:00:15 EDT 1998 Michael K. Johnson <johnsonm@redhat.com> * app/tile_swap.c * app/tile_swap.h * app/tile_manager.c * app/tile_manager.h * app/pixel_region.c * app/pixel_region.h: asynchronous swapin on systems with pthreads. This version is not at all tuned, and the only interface which makes use of it now is pixel_region_{g,s}et_{row,col}. Other functions which know ahead of time the area that they will be needing can request that it be asynchronously swapped in via the pixel_region_get_async() function. Compiles and survives basic testing.
35 lines
724 B
C
35 lines
724 B
C
#ifndef __TILE_SWAP_H__
|
|
#define __TILE_SWAP_H__
|
|
|
|
|
|
#include "tile.h"
|
|
|
|
|
|
typedef enum {
|
|
SWAP_IN = 1,
|
|
SWAP_IN_ASYNC,
|
|
SWAP_OUT,
|
|
SWAP_DELETE,
|
|
SWAP_COMPRESS
|
|
} SwapCommand;
|
|
|
|
typedef int (*SwapFunc) (int fd,
|
|
Tile *tile,
|
|
int cmd,
|
|
gpointer user_data);
|
|
|
|
|
|
void tile_swap_exit (void);
|
|
int tile_swap_add (char *filename,
|
|
SwapFunc swap_func,
|
|
gpointer user_data);
|
|
void tile_swap_remove (int swap_num);
|
|
void tile_swap_in (Tile *tile);
|
|
void tile_swap_in_async (Tile *tile);
|
|
void tile_swap_out (Tile *tile);
|
|
void tile_swap_delete (Tile *tile);
|
|
void tile_swap_compress (int swap_num);
|
|
|
|
|
|
#endif /* __TILE_SWAP_H__ */
|