projects
/
mesa.git
/ blobdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
|
commitdiff
|
tree
raw
|
inline
| side by side
Merge branch '7.8'
[mesa.git]
/
src
/
mesa
/
drivers
/
dri
/
common
/
dri_util.h
diff --git
a/src/mesa/drivers/dri/common/dri_util.h
b/src/mesa/drivers/dri/common/dri_util.h
index c95a5c8299a11c672527137bea9f78b4bbea3cf6..f63583cebc01256039731e98f3ec077197d3818e 100644
(file)
--- a/
src/mesa/drivers/dri/common/dri_util.h
+++ b/
src/mesa/drivers/dri/common/dri_util.h
@@
-59,16
+59,12
@@
typedef struct __DRIswapInfoRec __DRIswapInfo;
typedef struct __DRIswapInfoRec __DRIswapInfo;
-/* Typedefs to avoid rewriting the world. */
-typedef struct __DRIscreenRec __DRIscreenPrivate;
-typedef struct __DRIdrawableRec __DRIdrawablePrivate;
-typedef struct __DRIcontextRec __DRIcontextPrivate;
-
/**
* Extensions.
*/
extern const __DRIlegacyExtension driLegacyExtension;
extern const __DRIcoreExtension driCoreExtension;
/**
* Extensions.
*/
extern const __DRIlegacyExtension driLegacyExtension;
extern const __DRIcoreExtension driCoreExtension;
+extern const __DRIdri2Extension driDRI2Extension;
extern const __DRIextension driReadDrawableExtension;
extern const __DRIcopySubBufferExtension driCopySubBufferExtension;
extern const __DRIswapControlExtension driSwapControlExtension;
extern const __DRIextension driReadDrawableExtension;
extern const __DRIcopySubBufferExtension driCopySubBufferExtension;
extern const __DRIswapControlExtension driSwapControlExtension;
@@
-299,7
+295,8
@@
struct __DRIdrawableRec {
unsigned int index;
/**
unsigned int index;
/**
- * Pointer to the "drawable has changed ID" stamp in the SAREA.
+ * Pointer to the "drawable has changed ID" stamp in the SAREA (or
+ * to dri2.stamp if DRI2 is being used).
*/
unsigned int *pStamp;
*/
unsigned int *pStamp;
@@
-380,6
+377,11
@@
struct __DRIdrawableRec {
* GLX_MESA_swap_control.
*/
unsigned int swap_interval;
* GLX_MESA_swap_control.
*/
unsigned int swap_interval;
+
+ struct {
+ unsigned int stamp;
+ drm_clip_rect_t clipRect;
+ } dri2;
};
/**
};
/**
@@
-415,6
+417,16
@@
struct __DRIcontextRec {
* Pointer to screen on which this context was created.
*/
__DRIscreen *driScreenPriv;
* Pointer to screen on which this context was created.
*/
__DRIscreen *driScreenPriv;
+
+ /**
+ * The loaders's private context data. This structure is opaque.
+ */
+ void *loaderPrivate;
+
+ struct {
+ int draw_stamp;
+ int read_stamp;
+ } dri2;
};
/**
};
/**
@@
-532,16
+544,13
@@
struct __DRIscreenRec {
* fields will not be valid or initializaed in that case. */
int enabled;
__DRIdri2LoaderExtension *loader;
* fields will not be valid or initializaed in that case. */
int enabled;
__DRIdri2LoaderExtension *loader;
+ __DRIimageLookupExtension *image;
} dri2;
/* The lock actually in use, old sarea or DRI2 */
drmLock *lock;
};
} dri2;
/* The lock actually in use, old sarea or DRI2 */
drmLock *lock;
};
-extern void
-__driUtilMessage(const char *f, ...);
-
-
extern void
__driUtilUpdateDrawableInfo(__DRIdrawable *pdp);
extern void
__driUtilUpdateDrawableInfo(__DRIdrawable *pdp);
@@
-552,4
+561,7
@@
driCalculateSwapUsage( __DRIdrawable *dPriv,
extern GLint
driIntersectArea( drm_clip_rect_t rect1, drm_clip_rect_t rect2 );
extern GLint
driIntersectArea( drm_clip_rect_t rect1, drm_clip_rect_t rect2 );
+extern void
+dri2InvalidateDrawable(__DRIdrawable *drawable);
+
#endif /* _DRI_UTIL_H_ */
#endif /* _DRI_UTIL_H_ */