diff options
author | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2016-06-14 22:20:08 +0300 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@ti.com> | 2016-06-16 21:45:26 +0300 |
commit | 84d89b1659b6eb3e7707f2fe107b9cada516f053 (patch) | |
tree | 8120c41cd8fdeb7f583c2432b5422deb5cd0a30d /kms++util/inc/kms++util/resourcemanager.h | |
parent | 34e63f641195019e903104c8b9e6eb855efeee2c (diff) |
add ResourceManager
Diffstat (limited to 'kms++util/inc/kms++util/resourcemanager.h')
-rw-r--r-- | kms++util/inc/kms++util/resourcemanager.h | 27 |
1 files changed, 27 insertions, 0 deletions
diff --git a/kms++util/inc/kms++util/resourcemanager.h b/kms++util/inc/kms++util/resourcemanager.h new file mode 100644 index 0000000..92e7b93 --- /dev/null +++ b/kms++util/inc/kms++util/resourcemanager.h @@ -0,0 +1,27 @@ +#include <kms++/kms++.h> +#include <vector> +#include <string> + +namespace kms { + +class ResourceManager +{ +public: + ResourceManager(Card& card); + + void reset(); + + Connector* reserve_connector(const std::string& name = ""); + Crtc* reserve_crtc(Connector* conn); + Plane* reserve_plane(Crtc* crtc, PlaneType type, PixelFormat format = PixelFormat::Undefined); + Plane* reserve_primary_plane(Crtc* crtc, PixelFormat format = PixelFormat::Undefined); + Plane* reserve_overlay_plane(Crtc* crtc, PixelFormat format = PixelFormat::Undefined); + +private: + Card& m_card; + std::vector<Connector*> m_reserved_connectors; + std::vector<Crtc*> m_reserved_crtcs; + std::vector<Plane*> m_reserved_planes; +}; + +} |