2 * Copyright (C) 2005-2020 Team Kodi
3 * This file is part of Kodi - https://kodi.tv
5 * SPDX-License-Identifier: GPL-2.0-or-later
6 * See LICENSES/README.md for more information.
11 #include "DRMObject.h"
22 class CDRMConnector
: public CDRMObject
25 explicit CDRMConnector(int fd
, uint32_t connector
);
26 CDRMConnector(const CDRMConnector
&) = delete;
27 CDRMConnector
& operator=(const CDRMConnector
&) = delete;
28 ~CDRMConnector() = default;
30 std::string
GetType();
31 std::string
GetStatus();
32 std::string
GetName();
34 uint32_t GetEncoderId() const { return m_connector
->encoder_id
; }
35 uint32_t* GetConnectorId() const { return &m_connector
->connector_id
; }
36 int GetModesCount() const { return m_connector
->count_modes
; }
37 drmModeModeInfoPtr
GetModeForIndex(int index
) const { return &m_connector
->modes
[index
]; }
39 bool IsConnected() { return m_connector
->connection
== DRM_MODE_CONNECTED
; }
40 bool CheckConnector();
42 std::vector
<uint8_t> GetEDID() const;
45 struct DrmModeConnectorDeleter
47 void operator()(drmModeConnector
* p
) { drmModeFreeConnector(p
); }
50 std::unique_ptr
<drmModeConnector
, DrmModeConnectorDeleter
> m_connector
;
54 } // namespace WINDOWING