X-Git-Url: https://git.libre-soc.org/?a=blobdiff_plain;f=src%2Fegl%2Fmain%2Feglconfig.h;h=22da697e83c32599b866e455719d4366354402fe;hb=9db5cc829f6bd7ba09f3bf0bf057b7162d05d037;hp=adab95cd6a3a14c3001ab834600b4f005a193144;hpb=424b1210d951c206e7c2fb8f2778acbd384eb247;p=mesa.git diff --git a/src/egl/main/eglconfig.h b/src/egl/main/eglconfig.h index adab95cd6a3..22da697e83c 100644 --- a/src/egl/main/eglconfig.h +++ b/src/egl/main/eglconfig.h @@ -1,6 +1,6 @@ /************************************************************************** * - * Copyright 2008 Tungsten Graphics, Inc., Cedar Park, Texas. + * Copyright 2008 VMware, Inc. * Copyright 2009-2010 Chia-I Wu * Copyright 2010-2011 LunarG, Inc. * All Rights Reserved. @@ -34,9 +34,15 @@ #include #include +#include "c99_compat.h" + #include "egltypedefs.h" +#ifdef __cplusplus +extern "C" { +#endif + /* update _eglValidationTable and _eglOffsetOfConfig before updating this * struct */ struct _egl_config @@ -80,13 +86,15 @@ struct _egl_config /* extensions */ EGLint YInvertedNOK; + EGLint FramebufferTargetAndroid; + EGLint RecordableAndroid; }; /** * Map an EGL attribute enum to the offset of the member in _EGLConfig. */ -static INLINE EGLint +static inline EGLint _eglOffsetOfConfig(EGLint attr) { switch (attr) { @@ -127,6 +135,8 @@ _eglOffsetOfConfig(EGLint attr) ATTRIB_MAP(EGL_CONFORMANT, Conformant); /* extensions */ ATTRIB_MAP(EGL_Y_INVERTED_NOK, YInvertedNOK); + ATTRIB_MAP(EGL_FRAMEBUFFER_TARGET_ANDROID, FramebufferTargetAndroid); + ATTRIB_MAP(EGL_RECORDABLE_ANDROID, RecordableAndroid); #undef ATTRIB_MAP default: return -1; @@ -141,7 +151,7 @@ _eglOffsetOfConfig(EGLint attr) * in the attribute enums. The separation is to catch application errors. * Drivers should never set a key that is an invalid attribute. */ -static INLINE void +static inline void _eglSetConfigKey(_EGLConfig *conf, EGLint key, EGLint val) { EGLint offset = _eglOffsetOfConfig(key); @@ -153,7 +163,7 @@ _eglSetConfigKey(_EGLConfig *conf, EGLint key, EGLint val) /** * Return the value for a given key. */ -static INLINE EGLint +static inline EGLint _eglGetConfigKey(const _EGLConfig *conf, EGLint key) { EGLint offset = _eglOffsetOfConfig(key); @@ -162,11 +172,11 @@ _eglGetConfigKey(const _EGLConfig *conf, EGLint key) } -PUBLIC void +extern void _eglInitConfig(_EGLConfig *config, _EGLDisplay *dpy, EGLint id); -PUBLIC EGLConfig +extern EGLConfig _eglLinkConfig(_EGLConfig *conf); @@ -177,32 +187,32 @@ _eglLookupConfig(EGLConfig config, _EGLDisplay *dpy); /** * Return the handle of a linked config. */ -static INLINE EGLConfig +static inline EGLConfig _eglGetConfigHandle(_EGLConfig *conf) { return (EGLConfig) conf; } -PUBLIC EGLBoolean +extern EGLBoolean _eglValidateConfig(const _EGLConfig *conf, EGLBoolean for_matching); -PUBLIC EGLBoolean +extern EGLBoolean _eglMatchConfig(const _EGLConfig *conf, const _EGLConfig *criteria); -PUBLIC EGLBoolean +extern EGLBoolean _eglParseConfigAttribList(_EGLConfig *conf, _EGLDisplay *dpy, const EGLint *attrib_list); -PUBLIC EGLint +extern EGLint _eglCompareConfigs(const _EGLConfig *conf1, const _EGLConfig *conf2, const _EGLConfig *criteria, EGLBoolean compare_id); -PUBLIC EGLBoolean +extern EGLBoolean _eglFilterConfigArray(_EGLArray *array, EGLConfig *configs, EGLint config_size, EGLint *num_configs, EGLBoolean (*match)(const _EGLConfig *, void *), @@ -223,4 +233,8 @@ extern EGLBoolean _eglGetConfigs(_EGLDriver *drv, _EGLDisplay *dpy, EGLConfig *configs, EGLint config_size, EGLint *num_config); +#ifdef __cplusplus +} +#endif + #endif /* EGLCONFIG_INCLUDED */