// QT includes #include // Hyperion-Dispmanx includes #include class AmlogicWrapper : public QObject { Q_OBJECT public: AmlogicWrapper(unsigned grabWidth, unsigned grabHeight); const Image & getScreenshot(); /// /// Starts the threaded capturing of screenshots /// void start(); void stop(); signals: void sig_screenshot(const Image & screenshot); private slots: /// /// Performs screenshot captures and publishes the capture screenshot on the screenshot signal. /// void capture(); private: /// The QT thread to generate capture-publish events QThread _thread; /// The grabber for creating screenshots AmlogicGrabber _grabber; // image buffers Image _screenshot; };