From 9a9ffe7eebf14ea1828480c2e175e4fc39e26dac Mon Sep 17 00:00:00 2001 From: Manuel Schneider Date: Fri, 18 Oct 2013 11:25:12 +0200 Subject: [Incomplete] Commit for EDID testsystem --- src/output.h | 47 +++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 47 insertions(+) create mode 100644 src/output.h (limited to 'src/output.h') diff --git a/src/output.h b/src/output.h new file mode 100644 index 0000000..553444d --- /dev/null +++ b/src/output.h @@ -0,0 +1,47 @@ +#ifndef OUTPUT_H +#define OUTPUT_H + +#include +#include + +#include +#include + +typedef struct _Resolution{ + unsigned int width; + unsigned int height; +}Resolution; + +inline bool operator==(const Resolution& lhs, const Resolution& rhs) { + return lhs.width == rhs.width && lhs.height == rhs.height; +} + +inline uint qHash(const Resolution &key) +{ + return qHash(key.width ^ key.height); +} + +class Output +{ +public: + + + Output(Display *dpy, XRRScreenResources *resources, RROutput output); + + bool hasEDID() const; + bool isProjector() const; + Resolution getCurrentMode() const; + Resolution getPreferredMode() const; + QSet getSupportedModes() const; + Resolution addMode(Resolution) const; + +private: + + Display *dpy; + XRRScreenResources *resources; + RROutput ID; + + Resolution getResolution(RRMode) const; +}; + +#endif // OUTPUT_H -- cgit v1.2.3-55-g7522