Fix build error on Windows
[platform/core/uifw/dali-adaptor.git] / dali / internal / window-system / windows / display-connection-impl-win.h
1 #ifndef DALI_INTERNAL_WIN_DIPLAY_CONNECTION_H\r
2 #define DALI_INTERNAL_WIN_DIPLAY_CONNECTION_H\r
3 \r
4 /*\r
5  * Copyright (c) 2018 Samsung Electronics Co., Ltd.\r
6  *\r
7  * Licensed under the Apache License, Version 2.0 (the "License");\r
8  * you may not use this file except in compliance with the License.\r
9  * You may obtain a copy of the License at\r
10  *\r
11  * http://www.apache.org/licenses/LICENSE-2.0\r
12  *\r
13  * Unless required by applicable law or agreed to in writing, software\r
14  * distributed under the License is distributed on an "AS IS" BASIS,\r
15  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.\r
16  * See the License for the specific language governing permissions and\r
17  * limitations under the License.\r
18  *\r
19  */\r
20 \r
21 // INTERNAL INCLUDES\r
22 #include <dali/internal/window-system/common/display-connection-impl.h>\r
23 #include <dali/public-api/object/base-object.h>\r
24 #include <dali/internal/graphics/gles/egl-implementation.h>\r
25 \r
26 namespace Dali\r
27 {\r
28 \r
29 class RenderSurface;\r
30 class DisplayConnection;\r
31 \r
32 namespace Internal\r
33 {\r
34 \r
35 namespace Adaptor\r
36 {\r
37 \r
38 /**\r
39  * DisplayConnection implementation\r
40  */\r
41 class DisplayConnectionWin : public Dali::Internal::Adaptor::DisplayConnection\r
42 {\r
43 public:\r
44 \r
45   /**\r
46    * @brief Default constructor\r
47    */\r
48   DisplayConnectionWin();\r
49 \r
50   /**\r
51    * @brief Create an initialized DisplayConnection.\r
52    *\r
53    * @return A handle to a newly allocated DisplayConnection resource.\r
54    */\r
55   static DisplayConnection* New();\r
56 \r
57 public:\r
58 \r
59   /**\r
60    * @copydoc Dali::DisplayConnection::GetDisplay\r
61    */\r
62   Any GetDisplay();\r
63 \r
64   /**\r
65    * @copydoc Dali::DisplayConnection::ConsumeEvents\r
66    */\r
67   void ConsumeEvents();\r
68 \r
69   /**\r
70    * @copydoc Dali::DisplayConnection::InitializeEgl\r
71    */\r
72   bool InitializeEgl(EglInterface& egl);\r
73 \r
74   /**\r
75   * @copydoc Dali::DisplayConnection::InitializeGraphics\r
76   */\r
77   bool InitializeGraphics();\r
78 \r
79   /**\r
80   * @copydoc Dali::Internal::Adaptor::DisplayConnection::SetSurfaceType\r
81   */\r
82   void SetSurfaceType( Dali::Integration::RenderSurface::Type type );\r
83 \r
84   /**\r
85   * @copydoc Dali::Internal::Adaptor::DisplayConnection::SetGraphicsInterface\r
86   */\r
87   void SetGraphicsInterface( GraphicsInterface& graphics );\r
88 \r
89 public:\r
90 \r
91   /**\r
92    * Destructor\r
93    */\r
94   virtual ~DisplayConnectionWin();\r
95 \r
96 private:\r
97 \r
98   // Undefined\r
99   DisplayConnectionWin(const DisplayConnectionWin&) = delete;\r
100 \r
101   // Undefined\r
102   DisplayConnectionWin& operator=(const DisplayConnectionWin& rhs) = delete;\r
103 \r
104 private:\r
105 \r
106   GraphicsInterface *mGraphics; ///< The graphics interface\r
107   HDC mDisplay;\r
108 };\r
109 \r
110 } // namespace Adaptor\r
111 \r
112 } // namespace internal\r
113 \r
114 } // namespace Dali\r
115 \r
116 #endif // DALI_INTERNAL_WIN_DIPLAY_CONNECTION_H\r