Zao SDK for Jetson / libzep API Reference
All Classes Namespaces Functions Variables Typedefs Enumerations Enumerator Pages
DirectControlInterface.hpp
1/*
2 * Copyright (c) 2022-2023, Soliton Systems K.K. All rights reserved.
3 * Use in source and binary forms, with or without modification,
4 * is permitted provided that the following a condition is met:
5 *
6 * Use is permitted only in accordance with the terms and
7 * conditions set forth in the Software License Agreement available
8 * at https://zao-sdk.org/license-agreement/.
9 */
10#ifndef ZEP_CONTROL_DIRECT_CONTROL_INTERFACE_HPP_
11#define ZEP_CONTROL_DIRECT_CONTROL_INTERFACE_HPP_
12
13#include <cstdint>
14#include <string>
15
16#include "StreamingControlInterface.hpp"
17
18namespace zep {
19namespace control {
20
21class DirectControlCallbackInterface;
22
26class DirectControlInterface : public StreamingControlInterface {
27 public:
34 virtual bool ConnectDirect(const std::string& ip_addr,
35 std::uint16_t port) = 0;
36
40 virtual void DisconnectDirect() = 0;
41
47 virtual bool SetPassPhrase(const std::string& passphrase) = 0;
48
52 virtual void RequestSuid() = 0;
53
57 virtual void RequestVersion() = 0;
58
62 virtual bool RequestConfigDirect() = 0;
63
73 virtual void RegisterCallback(
74 const std::shared_ptr<DirectControlCallbackInterface>& listener,
75 bool use_weak_ptr = false) = 0;
76
85 virtual void RegisterCallback(
86 std::unique_ptr<DirectControlCallbackInterface>&& listener) = 0;
87
88 virtual ~DirectControlInterface() noexcept = default;
89};
90
96 public:
100 virtual void OnConnectingDirect(){};
101
105 virtual void OnConnectDirect(){};
106
110 virtual void OnDisconnectDirect(){};
111
115 virtual void OnReceiveSuid(const std::string& suid) {}
116
120 virtual void OnReceiveVersion(const std::string& package_ver) {}
121
126 virtual void OnRequestConfigDirect(const std::string& ip_addr,
127 std::uint16_t port,
128 const std::string& passphrase){};
129
130 virtual ~DirectControlCallbackInterface() noexcept = default;
131};
132
133} // namespace control
134} // namespace zep
135
136#endif // ZEP_CONTROL_DIRECT_CONTROL_INTERFACE_HPP_
Direct connection control function callback interface.
Definition DirectControlInterface.hpp:95
virtual void OnDisconnectDirect()
View から切断されたときに呼び出されるコールバック。
Definition DirectControlInterface.hpp:110
virtual void OnReceiveSuid(const std::string &suid)
SUID を取得できたときに呼び出されるコールバック。
Definition DirectControlInterface.hpp:115
virtual void OnConnectingDirect()
View へ接続要求が開始されたときに呼び出されるコールバック。
Definition DirectControlInterface.hpp:100
virtual void OnReceiveVersion(const std::string &package_ver)
Version を取得できたときに呼び出されるコールバック。
Definition DirectControlInterface.hpp:120
virtual void OnConnectDirect()
View に接続されたときに呼び出されるコールバック。
Definition DirectControlInterface.hpp:105
virtual void OnRequestConfigDirect(const std::string &ip_addr, std::uint16_t port, const std::string &passphrase)
View から設定ファイルの値が返されたときに呼び出されるコールバック。
Definition DirectControlInterface.hpp:126
Direct connection control function interface.
Definition DirectControlInterface.hpp:26
virtual void RegisterCallback(std::unique_ptr< DirectControlCallbackInterface > &&listener)=0
コールバックの送信先をunique_ptrで登録する
virtual bool SetPassPhrase(const std::string &passphrase)=0
パスフレーズ設定を要求する。
virtual void DisconnectDirect()=0
View の切断を要求する。
virtual bool RequestConfigDirect()=0
Directモードの設定ファイル情報を要求する。
virtual void RegisterCallback(const std::shared_ptr< DirectControlCallbackInterface > &listener, bool use_weak_ptr=false)=0
コールバックの送信先をshared_ptrまたはweak_ptrで登録する
virtual void RequestSuid()=0
SUIDを要求する。
virtual bool ConnectDirect(const std::string &ip_addr, std::uint16_t port)=0
View への接続を要求する。
virtual void RequestVersion()=0
Versionを要求する。
ストリーミング制御機能のコールバックインターフェース
Definition StreamingControlInterface.hpp:46
Namespace for ZEP SDK.
Definition FactoryInterface.hpp:19