VideoSettings.h 3.61 KB
Newer Older
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17
/****************************************************************************
 *
 *   (c) 2009-2016 QGROUNDCONTROL PROJECT <http://www.qgroundcontrol.org>
 *
 * QGroundControl is licensed according to the terms in the file
 * COPYING.md in the root of the source code directory.
 *
 ****************************************************************************/

#ifndef VideoSettings_H
#define VideoSettings_H

#include "SettingsGroup.h"

class VideoSettings : public SettingsGroup
{
    Q_OBJECT
18

19 20 21
public:
    VideoSettings(QObject* parent = NULL);

22 23 24 25 26 27 28 29 30 31 32 33 34 35
    Q_PROPERTY(Fact* videoSource            READ videoSource            CONSTANT)
    Q_PROPERTY(Fact* udpPort                READ udpPort                CONSTANT)
    Q_PROPERTY(Fact* tcpUrl                 READ tcpUrl                 CONSTANT)
    Q_PROPERTY(Fact* rtspUrl                READ rtspUrl                CONSTANT)
    Q_PROPERTY(Fact* aspectRatio            READ aspectRatio            CONSTANT)
    Q_PROPERTY(Fact* gridLines              READ gridLines              CONSTANT)
    Q_PROPERTY(Fact* showRecControl         READ showRecControl         CONSTANT)
    Q_PROPERTY(Fact* recordingFormat        READ recordingFormat        CONSTANT)
    Q_PROPERTY(Fact* maxVideoSize           READ maxVideoSize           CONSTANT)
    Q_PROPERTY(Fact* enableStorageLimit     READ enableStorageLimit     CONSTANT)
    Q_PROPERTY(Fact* rtspTimeout            READ rtspTimeout            CONSTANT)
    Q_PROPERTY(Fact* streamEnabled          READ streamEnabled          CONSTANT)
    Q_PROPERTY(Fact* disableWhenDisarmed    READ disableWhenDisarmed    CONSTANT)
    Q_PROPERTY(bool  streamConfigured       READ streamConfigured       NOTIFY streamConfiguredChanged)
36

37 38 39 40 41 42 43 44 45 46 47 48 49 50
    Fact* videoSource           (void);
    Fact* udpPort               (void);
    Fact* rtspUrl               (void);
    Fact* tcpUrl                (void);
    Fact* aspectRatio           (void);
    Fact* gridLines             (void);
    Fact* showRecControl        (void);
    Fact* recordingFormat       (void);
    Fact* maxVideoSize          (void);
    Fact* enableStorageLimit    (void);
    Fact* rtspTimeout           (void);
    Fact* streamEnabled         (void);
    Fact* disableWhenDisarmed   (void);
    bool  streamConfigured      (void);
51

Don Gagne's avatar
Don Gagne committed
52
    static const char* videoSettingsGroupName;
53

54 55 56
    static const char* videoSourceName;
    static const char* udpPortName;
    static const char* rtspUrlName;
57
    static const char* tcpUrlName;
58
    static const char* videoAspectRatioName;
59
    static const char* videoGridLinesName;
60 61 62
    static const char* showRecControlName;
    static const char* recordingFormatName;
    static const char* maxVideoSizeName;
63
    static const char* enableStorageLimitName;
64
    static const char* rtspTimeoutName;
65
    static const char* streamEnabledName;
66
    static const char* disableWhenDisarmedName;
67 68

    static const char* videoSourceNoVideo;
69
    static const char* videoDisabled;
70 71
    static const char* videoSourceUDP;
    static const char* videoSourceRTSP;
72
    static const char* videoSourceTCP;
73

74 75 76 77 78 79
signals:
    void streamConfiguredChanged    ();

private slots:
    void _configChanged             (QVariant value);

80
private:
81 82
    SettingsFact* _videoSourceFact;
    SettingsFact* _udpPortFact;
83
    SettingsFact* _tcpUrlFact;
84
    SettingsFact* _rtspUrlFact;
85
    SettingsFact* _videoAspectRatioFact;
86
    SettingsFact* _gridLinesFact;
87 88 89
    SettingsFact* _showRecControlFact;
    SettingsFact* _recordingFormatFact;
    SettingsFact* _maxVideoSizeFact;
90
    SettingsFact* _enableStorageLimitFact;
91
    SettingsFact* _rtspTimeoutFact;
92
    SettingsFact* _streamEnabledFact;
93
    SettingsFact* _disableWhenDisarmedFact;
94 95 96
};

#endif