void * QXlibNativeInterface::nativeResourceForWindow(const QByteArray &resourceString, QWindow *window) { QByteArray lowerCaseResource = resourceString.toLower(); ResourceType resource = qXlibResourceMap()->value(lowerCaseResource); void *result = 0; switch(resource) { case Display: result = displayForWindow(window); break; case EglDisplay: result = eglDisplayForWindow(window); break; case Connection: result = connectionForWindow(window); break; case Screen: result = reinterpret_cast<void *>(qPlatformScreenForWindow(window)->xScreenNumber()); break; case GraphicsDevice: result = graphicsDeviceForWindow(window); break; case EglContext: result = eglContextForWindow(window); break; default: result = 0; } return result; }
void *QKmsNativeInterface::nativeResourceForWindow(const QByteArray &resourceString, QWindow *window) { QByteArray lowerCaseResource = resourceString.toLower(); ResourceType resource = qKmsResourceMap()->value(lowerCaseResource); void *result = 0; switch (resource) { case EglDisplay: result = eglDisplayForWindow(window); break; case EglContext: result = eglContextForWindow(window); break; default: result = 0; } return result; }
void *QXcbNativeInterface::nativeResourceForWindow(const QByteArray &resourceString, QWindow *window) { void *result = 0; switch (resourceType(resourceString)) { case Display: result = displayForWindow(window); break; case EglDisplay: result = eglDisplayForWindow(window); break; case Connection: result = connectionForWindow(window); break; case Screen: result = screenForWindow(window); break; default: break; } return result; }
void *QOpenWFDNativeInterface::nativeResourceForWindow(const QByteArray &resourceString, QWindow *window) { QByteArray lowerCaseResource = resourceString.toLower(); ResourceType resource = qOpenWFDResourceMap()->value(lowerCaseResource); void *result = 0; switch (resource) { //What should we do for int wfd handles? This is clearly not the solution case WFDDevice: result = (void *)wfdDeviceForWindow(window); break; case WFDPort: result = (void *)wfdPortForWindow(window); break; case WFDPipeline: result = (void *)wfdPipelineForWindow(window); break; case EglDisplay: result = eglDisplayForWindow(window); break; default: result = 0; } return result; }