#define ST_CONTEXT_FLAG_DEBUG (1 << 0)
#define ST_CONTEXT_FLAG_FORWARD_COMPATIBLE (1 << 1)
#define ST_CONTEXT_FLAG_ROBUST_ACCESS (1 << 2)
+#define ST_CONTEXT_FLAG_RESET_NOTIFICATION_ENABLED (1 << 3)
/**
* Reasons that context creation might fail.
boolean force_glsl_extensions_warn;
unsigned force_glsl_version;
boolean force_s3tc_enable;
+ boolean allow_glsl_extension_directive_midshader;
};
/**
* the last call might be destroyed. This behavior might change in the
* future.
*/
- boolean (*validate)(struct st_framebuffer_iface *stfbi,
+ boolean (*validate)(struct st_context_iface *stctx,
+ struct st_framebuffer_iface *stfbi,
const enum st_attachment_type *statts,
unsigned count,
struct pipe_resource **out);
*/
void (*destroy)(struct st_api *stapi);
+ /**
+ * Query supported OpenGL versions. (if applicable)
+ * The format is (major*10+minor).
+ */
+ void (*query_versions)(struct st_api *stapi, struct st_manager *sm,
+ struct st_config_options *options,
+ int *gl_core_version,
+ int *gl_compat_version,
+ int *gl_es1_version,
+ int *gl_es2_version);
+
/**
* Return an API entry point.
*
/**
* Return true if the visual has the specified buffers.
*/
-static INLINE boolean
+static inline boolean
st_visual_have_buffers(const struct st_visual *visual, unsigned mask)
{
return ((visual->buffer_mask & mask) == mask);