1 #ifndef _VA_DRICOMMON_H_
2 #define _VA_DRICOMMON_H_
11 #include <va/va_backend.h>
14 #define XID unsigned int
29 unsigned int attachment;
48 struct dri_drawable *next;
51 #define DRAWABLE_HASH_SZ 32
55 int driConnectedFlag; /* 0: disconnected, 1: DRI, 2: DRI2 */
58 drm_context_t hwContext;
61 struct dri_drawable *drawable_hash[DRAWABLE_HASH_SZ];
63 struct dri_drawable *(*createDrawable)(VADriverContextP ctx, XID x_drawable);
64 void (*destroyDrawable)(VADriverContextP ctx, struct dri_drawable *dri_drawable);
65 void (*swapBuffer)(VADriverContextP ctx, struct dri_drawable *dri_drawable);
66 union dri_buffer *(*getRenderingBuffer)(VADriverContextP ctx, struct dri_drawable *dri_drawable);
67 void (*close)(VADriverContextP ctx);
71 Bool isDRI2Connected(VADriverContextP ctx, char **driver_name);
72 Bool isDRI1Connected(VADriverContextP ctx, char **driver_name);
73 void free_drawable(VADriverContextP ctx, struct dri_drawable* dri_drawable);
74 void free_drawable_hashtable(VADriverContextP ctx);
75 struct dri_drawable *dri_get_drawable(VADriverContextP ctx, XID drawable);
76 void dri_swap_buffer(VADriverContextP ctx, struct dri_drawable *dri_drawable);
77 union dri_buffer *dri_get_rendering_buffer(VADriverContextP ctx, struct dri_drawable *dri_drawable);
79 #endif /* _VA_DRICOMMON_H_ */