19 #ifndef MIR_TEST_DOUBLES_MOCK_EGL_H_
20 #define MIR_TEST_DOUBLES_MOCK_EGL_H_
22 #include <gmock/gmock.h>
24 #define GL_GLEXT_PROTOTYPES
25 #define EGL_EGLEXT_PROTOTYPES
27 #include <EGL/eglext.h>
29 #include <GLES2/gl2.h>
30 #include <GLES2/gl2ext.h>
39 MATCHER_P(AttrMatches, val, std::string(
"matches"))
42 while ((val[i] != EGL_NONE) && (arg[i] != EGL_NONE))
49 if ((val[i] == EGL_NONE) && (arg[i] == EGL_NONE))
58 bool attrib_position =
true;
59 bool attrib_found =
false;
61 while (!attrib_position || *arg != EGL_NONE)
63 if (attrib_position && *arg == attrib)
67 else if (!attrib_position)
69 if (attrib_found && *arg == value)
76 attrib_position = !attrib_position;
91 MOCK_METHOD1(eglGetDisplay, EGLDisplay(NativeDisplayType));
92 MOCK_METHOD3(eglInitialize, EGLBoolean(EGLDisplay,EGLint*,EGLint*));
94 MOCK_METHOD2(eglQueryString,
const char*(EGLDisplay, EGLint));
99 MOCK_METHOD4(eglGetConfigs, EGLBoolean(EGLDisplay,EGLConfig*,EGLint,EGLint*));
100 MOCK_METHOD5(eglChooseConfig, EGLBoolean(EGLDisplay,
const EGLint*,EGLConfig*,EGLint,EGLint*));
101 MOCK_METHOD4(eglGetConfigAttrib, EGLBoolean(EGLDisplay,EGLConfig,EGLint,EGLint*));
104 MOCK_METHOD4(eglCreateWindowSurface, EGLSurface(EGLDisplay,EGLConfig,NativeWindowType,
const EGLint*));
105 MOCK_METHOD4(eglCreatePixmapSurface, EGLSurface(EGLDisplay,EGLConfig,NativePixmapType,
const EGLint*));
106 MOCK_METHOD3(eglCreatePbufferSurface, EGLSurface(EGLDisplay,EGLConfig,
const EGLint*));
107 MOCK_METHOD2(eglDestroySurface, EGLBoolean(EGLDisplay,EGLSurface));
108 MOCK_METHOD4(eglQuerySurface, EGLBoolean(EGLDisplay,EGLSurface,EGLint,EGLint*));
111 MOCK_METHOD4(eglSurfaceAttrib, EGLBoolean(EGLDisplay,EGLSurface,EGLint,EGLint));
112 MOCK_METHOD3(eglBindTexImage, EGLBoolean(EGLDisplay,EGLSurface,EGLint));
113 MOCK_METHOD3(eglReleaseTexImage, EGLBoolean(EGLDisplay,EGLSurface,EGLint));
116 MOCK_METHOD2(eglSwapInterval, EGLBoolean(EGLDisplay,EGLint));
118 MOCK_METHOD4(eglCreateContext, EGLContext(EGLDisplay,EGLConfig,EGLContext,
const EGLint*));
119 MOCK_METHOD2(eglDestroyContext, EGLBoolean(EGLDisplay,EGLContext));
120 MOCK_METHOD4(eglMakeCurrent, EGLBoolean(EGLDisplay,EGLSurface,EGLSurface,EGLContext));
124 MOCK_METHOD4(eglQueryContext, EGLBoolean(EGLDisplay,EGLContext,EGLint,EGLint*));
128 MOCK_METHOD2(eglSwapBuffers, EGLBoolean(EGLDisplay,EGLSurface));
129 MOCK_METHOD3(eglCopyBuffers, EGLBoolean(EGLDisplay,EGLSurface,NativePixmapType));
133 MOCK_METHOD5(eglCreateImageKHR, EGLImageKHR(EGLDisplay, EGLContext, EGLenum, EGLClientBuffer,
const EGLint*));
134 MOCK_METHOD2(eglDestroyImageKHR,EGLBoolean(EGLDisplay, EGLImageKHR));
135 MOCK_METHOD2(glEGLImageTargetTexture2DOES,
void(GLenum, GLeglImageOES));
void(* generic_function_pointer_t)(void)
Definition: mock_egl.h:89
MOCK_METHOD0(eglGetCurrentContext, EGLContext())
EGLImageKHR fake_egl_image
Definition: mock_egl.h:142
MOCK_METHOD5(eglChooseConfig, EGLBoolean(EGLDisplay, const EGLint *, EGLConfig *, EGLint, EGLint *))
EGLSurface fake_egl_surface
Definition: mock_egl.h:140
EGLContext fake_egl_context
Definition: mock_egl.h:141
MATCHER_P2(EGLConfigContainsAttrib, attrib, value,"")
Definition: mock_egl.h:56
MOCK_METHOD4(eglGetConfigs, EGLBoolean(EGLDisplay, EGLConfig *, EGLint, EGLint *))
EGLint fake_configs_num
Definition: mock_egl.h:139
int fake_visual_id
Definition: mock_egl.h:143
MOCK_METHOD3(eglInitialize, EGLBoolean(EGLDisplay, EGLint *, EGLint *))
EGLConfig * fake_configs
Definition: mock_egl.h:138
Definition: mock_egl.h:83
MOCK_METHOD2(eglQueryString, const char *(EGLDisplay, EGLint))
MOCK_METHOD1(eglGetDisplay, EGLDisplay(NativeDisplayType))
EGLDisplay fake_egl_display
Definition: mock_egl.h:137
MATCHER_P(KeyOfSymbol, keysym,"")
Definition: client_event_matchers.h:40