30 void FlipPage(
struct gbm_bo* bo,
bool rendered,
bool videoLayer)
override;
31 bool SetVideoMode(
const RESOLUTION_INFO& res,
struct gbm_bo* bo)
override;
32 bool SetActive(
bool active)
override;
34 void DestroyDrm()
override;
35 bool AddProperty(
CDRMObject*
object,
const char* name, uint64_t value);
37 bool DisplayHardwareScalingEnabled();
40 void DrmAtomicCommit(
int fb_id,
int flags,
bool rendered,
bool videoLayer);
42 bool SetScalingFilter(
CDRMObject*
object,
const char* name,
const char* type);
47 class CDRMAtomicRequest
51 ~CDRMAtomicRequest() =
default;
52 CDRMAtomicRequest(
const CDRMAtomicRequest& right) =
delete;
54 drmModeAtomicReqPtr Get()
const {
return m_atomicRequest.get(); }
56 bool AddProperty(
CDRMObject*
object,
const char* name, uint64_t value);
57 void LogAtomicRequest();
59 static void LogAtomicDiff(CDRMAtomicRequest* current, CDRMAtomicRequest* old);
62 static void LogAtomicRequest(
63 uint8_t logLevel, std::map<
CDRMObject*, std::map<uint32_t, uint64_t>>& atomicRequestItems);
65 std::map<CDRMObject*, std::map<uint32_t, uint64_t>> m_atomicRequestItems;
67 struct DrmModeAtomicReqDeleter
69 void operator()(drmModeAtomicReqPtr p)
const;
72 std::unique_ptr<drmModeAtomicReq, DrmModeAtomicReqDeleter> m_atomicRequest;
75 CDRMAtomicRequest* m_req =
nullptr;
76 std::deque<std::unique_ptr<CDRMAtomicRequest>> m_atomicRequestQueue;
Definition: DRMObject.h:25
Provide info of a resolution.
Definition: Resolution.h:66
Controller configuration window.
Definition: AudioDecoder.h:18
bool InitDrm() override
Definition: DRMAtomic.cpp:196
Definition: DRMAtomic.h:25
Definition: DRMUtils.h:37