From 009828beac9bfe9c36d336a4de0d297f90aece52 Mon Sep 17 00:00:00 2001 From: Tomi Valkeinen Date: Mon, 28 Sep 2015 01:13:34 +0300 Subject: Initial version --- libkms++/card.h | 49 +++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 49 insertions(+) create mode 100644 libkms++/card.h (limited to 'libkms++/card.h') diff --git a/libkms++/card.h b/libkms++/card.h new file mode 100644 index 0000000..fb45d04 --- /dev/null +++ b/libkms++/card.h @@ -0,0 +1,49 @@ +#pragma once + +#include +#include +#include + +#include "decls.h" + +namespace kms +{ + +class Card +{ +public: + Card(); + ~Card(); + + Card(const Card& other) = delete; + Card& operator=(const Card& other) = delete; + + int fd() const { return m_fd; } + + Connector* get_first_connected_connector() const; + + DrmObject* get_object(uint32_t id) const; + Crtc* get_crtc(uint32_t id) const; + Crtc* get_crtc_by_index(uint32_t idx) const; + Encoder* get_encoder(uint32_t id) const; + Property* get_prop(uint32_t id) const; + Property* get_prop(const char *name) const; + + bool master() const { return m_master; } + bool has_atomic() const { return m_has_atomic; } + + void print_short() const; + + std::vector get_connectors() const; + std::vector get_objects() const; + std::vector get_planes() const; + +private: + std::map m_obmap; + + int m_fd; + bool m_master; + + bool m_has_atomic; +}; +} -- cgit v1.2.3