Zao SDK for Jetson / libzep API リファレンス  1.0.0.0 (2023-05-08)
LineInfo.hpp
1 #ifndef ZEP_CONTROL_LINE_INFO_HPP
2 #define ZEP_CONTROL_LINE_INFO_HPP
3 
4 #include <vector>
5 
6 namespace zep {
7 namespace control {
8 
12 enum class line_status_t {
13  kLineNone, // 不明
14  kLineNoDevice, // デバイス未設定
15  kLineNoAddress, // アドレス未設定
16  kLineNoViewConnection, // RASCOW2未接続
17  kLineViewConnected, // RASCOW2接続
18  kLineTunnel, // LANトンネリング設定
19  };
20 
25  public:
30  LineInfoEntry() noexcept {}
31 
38  LineInfoEntry(const std::uint8_t number, const line_status_t status) noexcept {
39  SetNumber(number);
40  SetStatus(status);
41  }
42 
46  std::uint8_t GetNumber() const noexcept { return number_; }
47 
53  void SetNumber(std::uint8_t number) noexcept { number_ = number; }
54 
58  line_status_t GetStatus() const noexcept { return status_; }
59 
65  void SetStatus(line_status_t status) noexcept { status_ = status; }
66 
67  private:
71  std::uint8_t number_;
72 
76  line_status_t status_;
77 
78 };
79 
83 struct LineInfo {
84  public:
89  LineInfo() noexcept {}
90 
94  std::vector<LineInfoEntry> GetLineInfo() const noexcept { return line_info_; }
95 
101  void SetLineInfo(LineInfoEntry& line_info) noexcept {
102  line_info_.push_back(line_info);
103  }
104 
105  private:
109  std::vector<LineInfoEntry> line_info_;
110 
111 };
112 
113 } // namespace control
114 } // namespace zep
115 
116 #endif // ZEP_CONTROL_LINE_INFO_HPP
RASCOW2 Lineステータスリストのフォーマット
Definition: LineInfo.hpp:83
ZEP SDK用名前空間
Definition: FactoryInterface.hpp:10
std::vector< LineInfoEntry > GetLineInfo() const noexcept
RASCOW2 Lineステータスの動的配列を取得する。
Definition: LineInfo.hpp:94
line_status_t GetStatus() const noexcept
Lineステータスを取得する。
Definition: LineInfo.hpp:58
LineInfo() noexcept
LineInfo オブジェクトをデフォルト構築する。
Definition: LineInfo.hpp:89
void SetStatus(line_status_t status) noexcept
Lineステータスを設定する。
Definition: LineInfo.hpp:65
std::uint8_t GetNumber() const noexcept
Line番号を取得する。
Definition: LineInfo.hpp:46
LineInfoEntry() noexcept
LineInfoEntry オブジェクトをデフォルト構築する。
Definition: LineInfo.hpp:30
RASCOW2 Lineステータス情報のフォーマット
Definition: LineInfo.hpp:24
LineInfoEntry(const std::uint8_t number, const line_status_t status) noexcept
LineInfoEntry オブジェクトを初期値付きで構築する。
Definition: LineInfo.hpp:38
void SetLineInfo(LineInfoEntry &line_info) noexcept
RASCOW2 Lineステータスを動的配列に追加する。
Definition: LineInfo.hpp:101
line_status_t
RASCOW2 Lineステータス情報の種類
Definition: LineInfo.hpp:12
void SetNumber(std::uint8_t number) noexcept
Line番号を設定する。
Definition: LineInfo.hpp:53