2 * Copyright (c) 2021 Samsung Electronics Co., Ltd.
\r
4 * Licensed under the Apache License, Version 2.0 (the "License");
\r
5 * you may not use this file except in compliance with the License.
\r
6 * You may obtain a copy of the License at
\r
8 * http://www.apache.org/licenses/LICENSE-2.0
\r
10 * Unless required by applicable law or agreed to in writing, software
\r
11 * distributed under the License is distributed on an "AS IS" BASIS,
\r
12 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
\r
13 * See the License for the specific language governing permissions and
\r
14 * limitations under the License.
\r
19 #include <dali/internal/window-system/windows/display-connection-impl-win.h>
\r
21 // EXTERNAL INCLUDES
\r
22 #include <dali/integration-api/debug.h>
\r
24 // INTERNAL INCLUDES
\r
25 #include <dali/internal/graphics/gles/egl-graphics.h>
\r
33 DisplayConnection* DisplayConnectionWin::New()
\r
35 DisplayConnection* pDisplayConnection(new DisplayConnectionWin());
\r
37 return pDisplayConnection;
\r
40 DisplayConnectionWin::DisplayConnectionWin()
\r
45 DisplayConnectionWin::~DisplayConnectionWin()
\r
49 Any DisplayConnectionWin::GetDisplay()
\r
51 return Any(mDisplay);
\r
54 void DisplayConnectionWin::ConsumeEvents()
\r
58 bool DisplayConnectionWin::InitializeEgl(EglInterface& egl)
\r
60 EglImplementation& eglImpl = static_cast<EglImplementation&>(egl);
\r
62 if(!eglImpl.InitializeGles(reinterpret_cast<EGLNativeDisplayType>(mDisplay)))
\r
64 DALI_LOG_ERROR("Failed to initialize GLES.\n");
\r
71 bool DisplayConnectionWin::InitializeGraphics()
\r
73 auto eglGraphics = static_cast<EglGraphics*>(mGraphics);
\r
74 EglImplementation& eglImpl = eglGraphics->GetEglImplementation();
\r
76 if(!eglImpl.InitializeGles(reinterpret_cast<EGLNativeDisplayType>(mDisplay)))
\r
78 DALI_LOG_ERROR("Failed to initialize GLES.\n");
\r
85 void DisplayConnectionWin::SetSurfaceType(Dali::RenderSurfaceInterface::Type type)
\r
87 if(type == Dali::RenderSurfaceInterface::WINDOW_RENDER_SURFACE)
\r
89 mDisplay = GetDC(GetForegroundWindow());
\r
93 void DisplayConnectionWin::SetGraphicsInterface(GraphicsInterface& graphics)
\r
95 mGraphics = &graphics;
\r
98 } // namespace Adaptor
\r
100 } // namespace Internal
\r
102 } // namespace Dali
\r