diff options
author | Tomi Valkeinen <tomi.valkeinen@iki.fi> | 2015-09-28 01:13:34 +0300 |
---|---|---|
committer | Tomi Valkeinen <tomi.valkeinen@iki.fi> | 2015-09-28 01:13:34 +0300 |
commit | 009828beac9bfe9c36d336a4de0d297f90aece52 (patch) | |
tree | 3ea6b22f2036dcc0c23c459ce53bfc2ad282e3e7 /libkms++/connector.h |
Initial version
Diffstat (limited to 'libkms++/connector.h')
-rw-r--r-- | libkms++/connector.h | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/libkms++/connector.h b/libkms++/connector.h new file mode 100644 index 0000000..b7d975c --- /dev/null +++ b/libkms++/connector.h @@ -0,0 +1,49 @@ +#pragma once + +#include <vector> + +#include "drmobject.h" + +namespace kms +{ + +struct ConnectorPriv; + +struct Videomode +{ + uint32_t clock; + uint16_t hdisplay, hsync_start, hsync_end, htotal, hskew; + uint16_t vdisplay, vsync_start, vsync_end, vtotal, vscan; + + uint32_t vrefresh; + + uint32_t flags; + uint32_t type; + char name[32]; // XXX +}; + +class Connector : public DrmObject +{ +public: + Connector(Card& card, uint32_t id, uint32_t idx); + ~Connector(); + + void setup(); + + void print_short() const; + + Videomode get_default_mode() const; + + Crtc* get_current_crtc() const { return m_current_crtc; } + std::vector<Crtc*> get_possible_crtcs() const; + + bool connected(); + +private: + ConnectorPriv* m_priv; + + std::string m_fullname; + + Crtc* m_current_crtc; +}; +} |