2021-12-04 21:33:04 +01:00
|
|
|
#ifndef SOFTWARERENDERER_HPP
|
|
|
|
|
#define SOFTWARERENDERER_HPP
|
|
|
|
|
|
|
|
|
|
#include <QWidget>
|
2021-12-15 00:37:48 +02:00
|
|
|
#include <atomic>
|
2021-12-07 13:47:42 +01:00
|
|
|
#include "qt_renderercomon.hpp"
|
2021-12-04 21:33:04 +01:00
|
|
|
|
2021-12-07 13:47:42 +01:00
|
|
|
class SoftwareRenderer : public QWidget, public RendererCommon
|
2021-12-04 21:33:04 +01:00
|
|
|
{
|
|
|
|
|
Q_OBJECT
|
|
|
|
|
public:
|
|
|
|
|
explicit SoftwareRenderer(QWidget *parent = nullptr);
|
|
|
|
|
|
|
|
|
|
void paintEvent(QPaintEvent *event) override;
|
|
|
|
|
public slots:
|
2021-12-21 16:38:13 +06:00
|
|
|
void onBlit(const std::unique_ptr<uint8_t>* img, int, int, int, int, std::atomic_flag* in_use);
|
2021-12-04 21:33:04 +01:00
|
|
|
|
2021-12-07 13:47:42 +01:00
|
|
|
protected:
|
|
|
|
|
void resizeEvent(QResizeEvent *event) override;
|
2021-12-04 21:33:04 +01:00
|
|
|
};
|
|
|
|
|
|
|
|
|
|
#endif // SOFTWARERENDERER_HPP
|