AtomicReq: add helper to add multiple props
authorTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 27 May 2016 13:30:13 +0000 (16:30 +0300)
committerTomi Valkeinen <tomi.valkeinen@ti.com>
Fri, 27 May 2016 14:24:14 +0000 (17:24 +0300)
libkms++/atomicreq.cpp
libkms++/atomicreq.h

index 0e627a84aab03bf6d31e15e8c3d0d06c63d3efba..0d895daaecb7b5de7675d3af7fbae5f024ce58a1 100644 (file)
@@ -56,6 +56,12 @@ void AtomicReq::add(DrmObject* ob, const string& prop, uint64_t value)
        add(ob, m_card.get_prop(prop), value);
 }
 
+void AtomicReq::add(DrmObject* ob, const map<string, uint64_t>& values)
+{
+       for(const auto& kvp : values)
+               add(ob, kvp.first, kvp.second);
+}
+
 int AtomicReq::test()
 {
        uint32_t flags = DRM_MODE_ATOMIC_TEST_ONLY;
index d9aeb08e8036df481fb01b7b638fd376b21970db..77a9ddecb6b948f8aa36bad30ad4646ed4576b33 100644 (file)
@@ -2,6 +2,7 @@
 
 #include <cstdint>
 #include <string>
+#include <map>
 
 struct _drmModeAtomicReq;
 
@@ -21,6 +22,7 @@ public:
        void add(uint32_t ob_id, uint32_t prop_id, uint64_t value);
        void add(DrmObject *ob, Property *prop, uint64_t value);
        void add(DrmObject *ob, const std::string& prop, uint64_t value);
+       void add(DrmObject *ob, const std::map<std::string, uint64_t>& values);
 
        int test();
        int commit(void* data);