summaryrefslogtreecommitdiff
path: root/include/GL/internal/dri_interface.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/GL/internal/dri_interface.h')
-rw-r--r--include/GL/internal/dri_interface.h22
1 files changed, 20 insertions, 2 deletions
diff --git a/include/GL/internal/dri_interface.h b/include/GL/internal/dri_interface.h
index 39d5dd07533..9b85e67ce49 100644
--- a/include/GL/internal/dri_interface.h
+++ b/include/GL/internal/dri_interface.h
@@ -1106,7 +1106,7 @@ struct __DRIbufferRec {
};
#define __DRI_DRI2_LOADER "DRI_DRI2Loader"
-#define __DRI_DRI2_LOADER_VERSION 4
+#define __DRI_DRI2_LOADER_VERSION 5
enum dri_loader_cap {
/* Whether the loader handles RGBA channel ordering correctly. If not,
@@ -1177,6 +1177,15 @@ struct __DRIdri2LoaderExtensionRec {
* \since 4
*/
unsigned (*getCapability)(void *loaderPrivate, enum dri_loader_cap cap);
+
+ /**
+ * Clean up any loader state associated with an image.
+ *
+ * \param loaderPrivate Loader's private data that was previously passed
+ * into a __DRIimageExtensionRec::createImage function
+ * \since 5
+ */
+ void (*destroyLoaderImageState)(void *loaderPrivate);
};
/**
@@ -2032,7 +2041,7 @@ struct __DRIimageList {
};
#define __DRI_IMAGE_LOADER "DRI_IMAGE_LOADER"
-#define __DRI_IMAGE_LOADER_VERSION 3
+#define __DRI_IMAGE_LOADER_VERSION 4
struct __DRIimageLoaderExtensionRec {
__DRIextension base;
@@ -2091,6 +2100,15 @@ struct __DRIimageLoaderExtensionRec {
* \since 3
*/
void (*flushSwapBuffers)(__DRIdrawable *driDrawable, void *loaderPrivate);
+
+ /**
+ * Clean up any loader state associated with an image.
+ *
+ * \param loaderPrivate Loader's private data that was previously passed
+ * into a __DRIimageExtensionRec::createImage function
+ * \since 4
+ */
+ void (*destroyLoaderImageState)(void *loaderPrivate);
};
/**