QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
ImageProtocolManager.h
Go to the documentation of this file.
1#pragma once
2
3#include "MAVLinkLib.h"
4
5#include <QtCore/QByteArray>
6#include <QtCore/QObject>
7#include <QtGui/QImage>
8
13class ImageProtocolManager : public QObject
14{
15 Q_OBJECT
16
17public:
18 ImageProtocolManager(QObject *parent = nullptr);
20
21 uint32_t flowImageIndex() const { return _flowImageIndex; }
22
23 bool requestImage(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t &message);
24 void cancelRequest(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t &message);
25
26signals:
27 void imageReady(const QImage &image);
28 void flowImageIndexChanged(uint32_t index);
29
30public slots:
31 void mavlinkMessageReceived(const mavlink_message_t &message);
32
33private:
34 QImage _getImage();
35
36 mavlink_data_transmission_handshake_t _imageHandshake = {};
37 QByteArray _imageBytes;
38 uint32_t _flowImageIndex = 0;
39};
struct __mavlink_message mavlink_message_t
Supports the Mavlink image transmission protocol (https://mavlink.io/en/services/image_transmission....
bool requestImage(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t &message)
void cancelRequest(uint8_t system_id, uint8_t component_id, uint8_t chan, mavlink_message_t &message)
uint32_t flowImageIndex() const
void mavlinkMessageReceived(const mavlink_message_t &message)
void flowImageIndexChanged(uint32_t index)
void imageReady(const QImage &image)