ENLIGHTEN
Cross-platform desktop GUI for Wasatch Photonics spectrometers
Loading...
Searching...
No Matches
acquisitionworker.h
Go to the documentation of this file.
1
26
27#ifndef ACQUISITIONWORKER_H
28#define ACQUISITIONWORKER_H
29
30#include <peak_ipl/peak_ipl.hpp>
31#include <peak/peak.hpp>
32
33
34#include <QImage>
35#include <QObject>
36
37#include <atomic>
38
39class AcquisitionWorker : public QObject
40{
41 Q_OBJECT
42
43public:
44 explicit AcquisitionWorker(QObject* parent = nullptr);
45 ~AcquisitionWorker() override = default;
46
47 void Start();
48 void Stop();
49
50 void SetDataStream(std::shared_ptr<peak::core::DataStream> dataStream);
51
52private:
53 std::shared_ptr<peak::core::DataStream> m_dataStream;
54 std::shared_ptr<peak::core::NodeMap> m_nodemapRemoteDevice;
55
56 std::atomic<bool> m_running{true};
57
59 peak::ipl::Gain *m_gainControllerIPL{};
60
61 unsigned int m_frameCounter{};
62 unsigned int m_errorCounter{};
63
64 size_t m_imageWidth = 0;
65 size_t m_imageHeight = 0;
66 size_t m_bufferWidth = 0;
67 size_t m_bufferHeight = 0;
68
69 std::unique_ptr<peak::ipl::ImageConverter> m_imageConverter;
70
71signals:
72 void imageReceived(QImage image);
73 void imageReceived(const peak::ipl::Image* image);
74 void counterChanged(unsigned int frameCounter, unsigned int errorCounter);
75};
76
77#endif // ACQUISITIONWORKER_H
Definition acquisitionworker.h:41
AcquisitionWorker(QObject *parent=nullptr)
void SetDataStream(std::shared_ptr< peak::core::DataStream > dataStream)
unsigned int m_frameCounter
Definition acquisitionworker.h:62
std::shared_ptr< peak::core::NodeMap > m_nodemapRemoteDevice
Definition acquisitionworker.h:57
bool m_hostColorGainsEnabled
Definition acquisitionworker.h:58
size_t m_imageWidth
Definition acquisitionworker.h:65
void counterChanged(unsigned int frameCounter, unsigned int errorCounter)
std::shared_ptr< peak::core::DataStream > m_dataStream
Definition acquisitionworker.h:56
bool m_running
Definition acquisitionworker.h:60
void imageReceived(const peak::ipl::Image *image)
unsigned int m_errorCounter
Definition acquisitionworker.h:63
size_t m_bufferWidth
Definition acquisitionworker.h:66
size_t m_imageHeight
Definition acquisitionworker.h:66
size_t m_bufferHeight
Definition acquisitionworker.h:67
peak::ipl::Gain * m_gainControllerIPL
Definition acquisitionworker.h:59
void imageReceived(QImage image)
std::unique_ptr< peak::ipl::ImageConverter > m_imageConverter
Definition acquisitionworker.h:68
~AcquisitionWorker() override=default