#ifndef TIMESWITCHERSTATUSDTO_H
#define TIMESWITCHERSTATUSDTO_H

#include <QObject>

#include "protocol/dto/DeviceFrameBaseDto.h"

class TimeSwitcherStatusDto : public DeviceFrameBaseDto
{
    Q_OBJECT
public:
    explicit TimeSwitcherStatusDto(QObject *parent = nullptr);

    QString devStatus; // <1>
    QString refSelectType; // <2>
    QString refTmSrc; // <3>
    QList<QString> tmSrcStatusList; // <4-8>
    QList<double> localTmDiffList; // <9-13>
    qlonglong oppsPhaseAccOut; // <14>
    qint8 bacRatio; // <15> B-AC调制比，2~6
    float bacRange; // <16> B-AC幅度，5表示0.5V，50表示5.0V，100表示10V
    QList<qlonglong> delayCompensList; // <17-22>
    QList<QString> oppsOutStatusList; // <23>
    QList<QString> bdcOutStatusList; // <24>
    QList<QString> bacOutStatusList; // <25>

    QJsonObject toJSON();

private:
    const QString tmSrcStr[3] = {"1PPS", "B-DC", "B-AC"};
};

#endif // TIMESWITCHERSTATUSDTO_H
