VideoSettings.h 3.63 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

52 53
    static const char* name;
    static const char* settingsGroup;
54

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

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

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

private slots:
    void _configChanged             (QVariant value);

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

#endif