42
43
EGLDisplay display
=
eglGetDisplay
(
EGL_DEFAULT_DISPLAY
);
44
eglInitialize
(
display
,
NULL
,
NULL
);
45
eglGetConfigs
(
display
,
NULL
,
0
,
&
numConfigs
);
46
47
EGLConfig config
;
48
status_t err
=
EGLUtils
::
selectConfigForNativeWindow
(
display
,
attribs
,
mNativeWindow
.
get
(),
&
config
);
49
LOGE_IF
(
err
,
"couldn't find an EGLConfig matching the screen format"
);
50
51
EGLint r
,
g
,
b
,
a
;
52
eglGetConfigAttrib
(
display
,
config
,
EGL_RED_SIZE
,
&
r
);
53
eglGetConfigAttrib
(
display
,
config
,
EGL_GREEN_SIZE
,
&
g
);
54
eglGetConfigAttrib
(
display
,
config
,
EGL_BLUE_SIZE
,
&
b
);
55
eglGetConfigAttrib
(
display
,
config
,
EGL_ALPHA_SIZE
,
&
a
);
56
57
/*
58
* Gather EGL extensions
59
*/
60
61
const
char*
const
egl_extensions
=
eglQueryString
(
display
,
EGL_EXTENSIONS
);
62
63
LOGI
(
"EGL informations:"
);
64
LOGI
(
"# of configs: %d"
,
numConfigs
);
65
LOGI
(
"vendor : %s"
,
eglQueryString
(
display
,
EGL_VENDOR
));
66
LOGI
(
"version : %s"
,
eglQueryString
(
display
,
EGL_VERSION
));
67
LOGI
(
"extensions : %s"
,
eglQueryString
(
egl_extensions
);
68
LOGI
(
"Client API : %s"
,
eglQueryString
(
display
,
EGL_CLIENT_APIS
)
?
:
"Not
Supported"
);
69
LOGI
(
"EGLSurface : %d-%d-%d-%d, config=%p"
,
r
,
g
,
b
,
a
,
config
);
70
71
if
(
mNativeWindow
->
isUpdateOnDemand
())
72
{
73
mFlags
|=
PARTIAL_UPDATES
;
74
}
75
76
if
(
eglGetConfigAttrib
(
display
,
config
,
EGL_CONFIG_CAVEAT
,
&
dummy
)
==
EGL_TRUE
)
77
{
78
if
(
dummy
==
EGL_SLOW_CONFIG
)
79
mFlags
|=
SLOW_CONFIG
;
80
}