1 #ifndef _DRISW_API_H_
2 #define _DRISW_API_H_
3 
4 #include "pipe/p_compiler.h"
5 #include "sw_winsys.h"
6 
7 struct pipe_screen;
8 struct dri_drawable;
9 
10 /**
11  * This callback struct is intended for the winsys to call the loader.
12  */
13 struct drisw_loader_funcs
14 {
15    void (*get_image) (struct dri_drawable *dri_drawable,
16                       int x, int y, unsigned width, unsigned height, unsigned stride,
17                       void *data);
18    void (*put_image) (struct dri_drawable *dri_drawable,
19                       void *data, unsigned width, unsigned height);
20    void (*put_image2) (struct dri_drawable *dri_drawable,
21                        void *data, int x, int y, unsigned width, unsigned height, unsigned stride);
22    void (*put_image_shm) (struct dri_drawable *dri_drawable,
23                           int shmid, char *shmaddr, unsigned offset, unsigned offset_x,
24                           int x, int y, unsigned width, unsigned height, unsigned stride);
25 };
26 
27 #endif
28