*//*--------------------------------------------------------------------*/
#include "teglConfigList.hpp"
-#include "tcuEgl.hpp"
#include "tcuTestLog.hpp"
#include "egluStrUtil.hpp"
+#include "egluUtil.hpp"
+#include "eglwLibrary.hpp"
+#include "eglwEnums.hpp"
#include "deStringUtil.hpp"
#include <vector>
-using std::vector;
-
namespace deqp
{
namespace egl
{
+using std::vector;
+using namespace eglw;
+
ConfigList::ConfigList (EglTestContext& eglTestCtx)
: TestCase(eglTestCtx, "configs", "Output the list of configs from EGL")
tcu::TestNode::IterateResult ConfigList::iterate (void)
{
+ const Library& egl = m_eglTestCtx.getLibrary();
tcu::TestLog& log = m_testCtx.getLog();
- EGLDisplay display = m_eglTestCtx.getDisplay().getEGLDisplay();
- vector<EGLConfig> configs;
+ EGLDisplay display = eglu::getAndInitDisplay(m_eglTestCtx.getNativeDisplay());
+ vector<EGLConfig> configs = eglu::getConfigs(egl, display);
// \todo [2011-03-23 pyry] Check error codes!
// \todo [kalle 10/08/2010] Get EGL version.
- m_eglTestCtx.getDisplay().getConfigs(configs);
-
log.startEglConfigSet("EGL-configs", "List of all EGL configs");
// \todo [kalle 10/08/2010] Add validity checks for the values?
qpEglConfigInfo info;
EGLint val = 0;
- eglGetConfigAttrib(display, configs[i], EGL_BUFFER_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_BUFFER_SIZE, &val);
info.bufferSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_RED_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_RED_SIZE, &val);
info.redSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_GREEN_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_GREEN_SIZE, &val);
info.greenSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_BLUE_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_BLUE_SIZE, &val);
info.blueSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_LUMINANCE_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_LUMINANCE_SIZE, &val);
info.luminanceSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_ALPHA_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_ALPHA_SIZE, &val);
info.alphaSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_ALPHA_MASK_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_ALPHA_MASK_SIZE, &val);
info.alphaMaskSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_BIND_TO_TEXTURE_RGB, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_BIND_TO_TEXTURE_RGB, &val);
info.bindToTextureRGB = val == EGL_TRUE ? DE_TRUE : DE_FALSE;
- eglGetConfigAttrib(display, configs[i], EGL_BIND_TO_TEXTURE_RGBA, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_BIND_TO_TEXTURE_RGBA, &val);
info.bindToTextureRGBA = val == EGL_TRUE ? DE_TRUE : DE_FALSE;
- eglGetConfigAttrib(display, configs[i], EGL_COLOR_BUFFER_TYPE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_COLOR_BUFFER_TYPE, &val);
std::string colorBufferType = de::toString(eglu::getColorBufferTypeStr(val));
info.colorBufferType = colorBufferType.c_str();
- eglGetConfigAttrib(display, configs[i], EGL_CONFIG_CAVEAT, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_CONFIG_CAVEAT, &val);
std::string caveat = de::toString(eglu::getConfigCaveatStr(val));
info.configCaveat = caveat.c_str();
- eglGetConfigAttrib(display, configs[i], EGL_CONFIG_ID, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_CONFIG_ID, &val);
info.configID = val;
- eglGetConfigAttrib(display, configs[i], EGL_CONFORMANT, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_CONFORMANT, &val);
std::string conformant = de::toString(eglu::getAPIBitsStr(val));
info.conformant = conformant.c_str();
- eglGetConfigAttrib(display, configs[i], EGL_DEPTH_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_DEPTH_SIZE, &val);
info.depthSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_LEVEL, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_LEVEL, &val);
info.level = val;
- eglGetConfigAttrib(display, configs[i], EGL_MAX_PBUFFER_WIDTH, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_MAX_PBUFFER_WIDTH, &val);
info.maxPBufferWidth = val;
- eglGetConfigAttrib(display, configs[i], EGL_MAX_PBUFFER_HEIGHT, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_MAX_PBUFFER_HEIGHT, &val);
info.maxPBufferHeight = val;
- eglGetConfigAttrib(display, configs[i], EGL_MAX_PBUFFER_PIXELS, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_MAX_PBUFFER_PIXELS, &val);
info.maxPBufferPixels = val;
- eglGetConfigAttrib(display, configs[i], EGL_MAX_SWAP_INTERVAL, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_MAX_SWAP_INTERVAL, &val);
info.maxSwapInterval = val;
- eglGetConfigAttrib(display, configs[i], EGL_MIN_SWAP_INTERVAL, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_MIN_SWAP_INTERVAL, &val);
info.minSwapInterval = val;
- eglGetConfigAttrib(display, configs[i], EGL_NATIVE_RENDERABLE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_NATIVE_RENDERABLE, &val);
info.nativeRenderable = val == EGL_TRUE ? DE_TRUE : DE_FALSE;
- eglGetConfigAttrib(display, configs[i], EGL_RENDERABLE_TYPE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_RENDERABLE_TYPE, &val);
std::string renderableTypes = de::toString(eglu::getAPIBitsStr(val));
info.renderableType = renderableTypes.c_str();
- eglGetConfigAttrib(display, configs[i], EGL_SAMPLE_BUFFERS, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_SAMPLE_BUFFERS, &val);
info.sampleBuffers = val;
- eglGetConfigAttrib(display, configs[i], EGL_SAMPLES, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_SAMPLES, &val);
info.samples = val;
- eglGetConfigAttrib(display, configs[i], EGL_STENCIL_SIZE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_STENCIL_SIZE, &val);
info.stencilSize = val;
- eglGetConfigAttrib(display, configs[i], EGL_SURFACE_TYPE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_SURFACE_TYPE, &val);
std::string surfaceTypes = de::toString(eglu::getSurfaceBitsStr(val));
info.surfaceTypes = surfaceTypes.c_str();
- eglGetConfigAttrib(display, configs[i], EGL_TRANSPARENT_TYPE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_TRANSPARENT_TYPE, &val);
std::string transparentType = de::toString(eglu::getTransparentTypeStr(val));
info.transparentType = transparentType.c_str();
- eglGetConfigAttrib(display, configs[i], EGL_TRANSPARENT_RED_VALUE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_TRANSPARENT_RED_VALUE, &val);
info.transparentRedValue = val;
- eglGetConfigAttrib(display, configs[i], EGL_TRANSPARENT_GREEN_VALUE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_TRANSPARENT_GREEN_VALUE, &val);
info.transparentGreenValue = val;
- eglGetConfigAttrib(display, configs[i], EGL_TRANSPARENT_BLUE_VALUE, &val);
+ egl.getConfigAttrib(display, configs[i], EGL_TRANSPARENT_BLUE_VALUE, &val);
info.transparentBlueValue = val;
log.writeEglConfig(&info);
}
log.endEglConfigSet();
+ egl.terminate(display);
+
getTestContext().setTestResult(QP_TEST_RESULT_PASS, "");
return TestNode::STOP;