40 lines
863 B
C++
40 lines
863 B
C++
#ifndef PROCESSING_H
|
|
#define PROCESSING_H
|
|
|
|
#include <QThreadPool>
|
|
#include <QDebug>
|
|
#include <QPainter>
|
|
#include <opencv4/opencv2/imgcodecs.hpp>
|
|
#include <opencv4/opencv2/opencv.hpp>
|
|
#include <vector>
|
|
#include <iostream>
|
|
#undef signals
|
|
#include <arv.h>
|
|
#undef signals
|
|
#define signals Q_SIGNALS
|
|
|
|
#include "idscam.h"
|
|
#include "framebatch.h"
|
|
|
|
using namespace cv;
|
|
using namespace std;
|
|
|
|
ProcessingResult processArvBuffer(ArvBuffer* buffer, const ProcessingConfig& config);
|
|
|
|
QImage drawHitsOnGrayImage(const QImage& grayImage, const ProcessingResult& result);
|
|
|
|
class Worker : public QRunnable
|
|
{
|
|
public:
|
|
Worker(FrameBatch* batch, ArvStream *stream, ResList *result);
|
|
void run() override;
|
|
private:
|
|
FrameBatch* batch;
|
|
ArvStream *stream;
|
|
ProcessingConfig cfg{};
|
|
ResList *result;
|
|
BatchResult *batch_result = nullptr;
|
|
|
|
};
|
|
|
|
#endif // PROCESSING_H
|