1 #ifndef DALI_INTERNAL_WINDOW_SYSTEM_X11_DISPLAY_CONNECTION_IMPL_X_H
2 #define DALI_INTERNAL_WINDOW_SYSTEM_X11_DISPLAY_CONNECTION_IMPL_X_H
5 * Copyright (c) 2024 Samsung Electronics Co., Ltd.
7 * Licensed under the Apache License, Version 2.0 (the "License");
8 * you may not use this file except in compliance with the License.
9 * You may obtain a copy of the License at
11 * http://www.apache.org/licenses/LICENSE-2.0
13 * Unless required by applicable law or agreed to in writing, software
14 * distributed under the License is distributed on an "AS IS" BASIS,
15 * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
16 * See the License for the specific language governing permissions and
17 * limitations under the License.
23 #include <dali/internal/window-system/common/display-connection-impl.h>
27 class DisplayConnection;
29 namespace Internal::Adaptor
32 * DisplayConnection implementation
34 class DisplayConnectionX11 : public Dali::Internal::Adaptor::DisplayConnection
38 * @brief Default constructor
40 DisplayConnectionX11();
43 * @brief Create an initialized DisplayConnection.
45 * @return A handle to a newly allocated DisplayConnection resource.
47 static DisplayConnection* New();
51 * @copydoc Dali::DisplayConnection::GetDisplay
53 Any GetDisplay() override;
56 * @copydoc Dali::DisplayConnection::GetNativeGraphicsDisplay
58 Any GetNativeGraphicsDisplay() override;
61 * @copydoc Dali::DisplayConnection::ConsumeEvents
63 void ConsumeEvents() override;
66 * @copydoc Dali::Internal::Adaptor::DisplayConnection::SetSurfaceType
68 void SetSurfaceType(Dali::Integration::RenderSurfaceInterface::Type type) override;
74 ~DisplayConnectionX11() override;
76 DisplayConnectionX11(const DisplayConnectionX11&) = delete;
78 DisplayConnectionX11& operator=(const DisplayConnectionX11& rhs) = delete;
81 ::Display* mDisplay; ///< X-display for rendering
84 } // namespace Internal::Adaptor
88 #endif // DALI_INTERNAL_WINDOW_SYSTEM_X11_DISPLAY_CONNECTION_IMPL_X_H