AJA NTV2 SDK  18.0.0.2122
NTV2 SDK 18.0.0.2122
konaipjsonsetup.h
Go to the documentation of this file.
1 /* SPDX-License-Identifier: MIT */
2 #ifndef KONAIPBOARD_H
3 #define KONAIPBOARD_H
4 
5 #include "ntv2card.h"
6 #include "konaipjsonparse.h"
7 
8 #include <QJsonObject>
9 #include <QList>
10 
11 #include "ntv2config2022.h"
12 #include "ntv2config2110.h"
13 
14 typedef struct
15 {
16  QString mSfpDesignator;
17  QString mIPAddress;
18  QString mSubnetMask;
19  QString mGateway;
20  QString mEnable;
21 }SFPStruct;
22 
23 typedef struct
24 {
27  QString mSfp1SrcPort;
29  QString mSfp1DestPort;
30  QString mSfp1Filter;
32  QString mSfp2SrcPort;
34  QString mSfp2DestPort;
35  QString mSfp2Filter;
36  QString mPlayoutDelay;
37  QString mVLAN;
38  QString mSSRC;
39  QString mSfp1Enable;
40  QString mSfp2Enable;
41  QString mEnable;
43 
44 typedef struct
45 {
48  QString mSfp1RemotePort;
49  QString mSfp1LocalPort;
51  QString mSfp2RemotePort;
52  QString mSfp2LocalPort;
53  QString mTOS;
54  QString mTTL;
55  QString mSSRC;
56  QString mSfp1Enable;
57  QString mSfp2Enable;
58  QString mEnable;
60 
61 typedef struct {
62  QList<SFPStruct> mSFPs;
63  QList<ReceiveStruct2022> mReceive2022Channels;
64  QList<TransmitStruct2022> mTransmit2022Channels;
66 
67 
69 {
70 public:
72 
73  bool openJson(QString fileName);
74  bool setupBoard(std::string deviceSpec);
75 
76 protected:
77  bool setupBoard2110(std::string deviceSpec);
78  bool setupBoard2022(std::string deviceSpec);
79  bool readJson2022(const QJsonObject &json);
80 
82 
83 private:
84  bool mEnable2022_7;
85  bool mIs2110;
86  bool m4KMode;
87  uint32_t mNetworkPathDifferential;
88  QString mPTPMasterAddr;
89 
90  CKonaIpJsonParse2110 parse2110;
91 };
92 
93 #endif // KONAIPBOARD_H
bool setupBoard2022(std::string deviceSpec)
nlohmann::json json
bool readJson2022(const QJsonObject &json)
bool setupBoard2110(std::string deviceSpec)
QString mSfp2RemoteIPAddress
QList< TransmitStruct2022 > mTransmit2022Channels
Declares the CNTV2Config2110 class.
QString mSfpDesignator
Declares the CNTV2Config2022 class.
QString mChannelDesignator
QString mSfp2DestIPAddress
QString mSfp1DestIPAddress
QString mSfp1RemoteIPAddress
QString mGateway
KonaIP2022ParamSetupStruct mKonaIP2022Params
Declares the CNTV2Card class.
QList< ReceiveStruct2022 > mReceive2022Channels
QList< SFPStruct > mSFPs
QString mEnable
bool setupBoard(std::string deviceSpec)
QString mIPAddress
bool openJson(QString fileName)
QString mSubnetMask