11#include "webcface/common/webcface-config.h"
26 Member(
const std::weak_ptr<internal::ClientData> &data_w,
28 :
Field(data_w, member) {}
37 const std::string &
name()
const {
return member_.decode(); }
42 const std::wstring &
nameW()
const {
return member_.decodeW(); }
45 using Field::operator[];
47 using Field::canvas2D;
48 using Field::canvas3D;
50 using Field::funcListener;
52 using Field::robotModel;
60 template <WEBCFACE_COMPLETE(Log)>
61 Log_
log(std::string_view name)
const {
62 return this->
child(name);
67 template <WEBCFACE_COMPLETE(Log)>
68 Log_
log(std::wstring_view name)
const {
69 return this->
child(name);
75 template <WEBCFACE_COMPLETE(Log)>
78 using Field::canvas2DEntries;
79 using Field::canvas3DEntries;
80 using Field::children;
81 using Field::childrenRecurse;
82 using Field::funcEntries;
83 using Field::hasChildren;
84 using Field::imageEntries;
85 using Field::logEntries;
86 using Field::robotModelEntries;
87 using Field::textEntries;
88 using Field::valueEntries;
89 using Field::viewEntries;
95 [[deprecated]] std::vector<Value> values()
const;
100 [[deprecated]] std::vector<Text> texts()
const;
106 [[deprecated]] std::vector<RobotModel> robotModels()
const;
112 [[deprecated]] std::vector<Func> funcs()
const;
117 [[deprecated]] std::vector<View> views()
const;
122 [[deprecated]] std::vector<Image> images()
const;
140 bool connected()
const;
157 template <
typename F,
typename std::enable_if_t<std::is_invocable_v<F>,
158 std::
nullptr_t> =
nullptr>
161 [callback = std::move(callback)](
const auto &) { callback(); });
179 template <
typename F,
typename std::enable_if_t<std::is_invocable_v<F>,
180 std::
nullptr_t> =
nullptr>
183 [callback = std::move(callback)](
const auto &) { callback(); });
208 const Member &onRobotModelEntry(
240 const Member &onCanvas3DEntry(
248 const Member &onCanvas2DEntry(
273 template <
typename F,
typename std::enable_if_t<std::is_invocable_v<F>,
274 std::
nullptr_t> =
nullptr>
277 [callback = std::move(callback)](
const auto &) { callback(); });
285 std::chrono::system_clock::time_point syncTime()
const;
293 const std::string &libName()
const;
298 const std::string &libVersion()
const;
303 const std::string &remoteAddr()
const;
316 std::optional<int> pingStatus()
const;
336 template <
typename F,
typename std::enable_if_t<std::is_invocable_v<F>,
337 std::
nullptr_t> =
nullptr>
340 [callback = std::move(callback)](
const auto &) { callback(); });
347 template <
typename T,
typename std::enable_if_t<std::is_same_v<T, Member>,
348 std::
nullptr_t> =
nullptr>
350 return static_cast<Field>(*this) ==
static_cast<Field>(other);
352 template <
typename T,
typename std::enable_if_t<std::is_same_v<T, Member>,
353 std::
nullptr_t> =
nullptr>
355 return static_cast<Field>(*this) !=
static_cast<Field>(other);
358extern template Log Member::log<Log, true>()
const;
Canvas2Dの送受信データを表すクラス
Definition canvas2d.h:24
Canvas3Dの送受信データを表すクラス
Definition canvas3d.h:28
関数1つを表すクラス
Definition func.h:95
(ver1.3から追加) 画像の送受信データを表すクラス
Definition image.h:20
ログの送受信データを表すクラス
Definition log.h:65
Memberを指すクラス
Definition member.h:23
bool operator==(const T &other) const
Memberを比較
Definition member.h:349
const std::string & name() const
Member名
Definition member.h:37
Log_ log(std::wstring_view name) const
Definition member.h:68
const Member & onConnect(F callback) const
Memberがサーバーに接続したときに呼び出されるコールバックを設定
Definition member.h:181
const std::wstring & nameW() const
Member名 (wstring)
Definition member.h:42
bool operator!=(const T &other) const
Definition member.h:354
const Member & onSync(F callback) const
Memberがsync()したときのイベント
Definition member.h:275
Log_ log(std::string_view name) const
Definition member.h:61
const Member & onDisconnect(F callback) const
Memberが切断したときに呼び出されるコールバックを設定
Definition member.h:159
Member(const std::weak_ptr< internal::ClientData > &data_w, const SharedString &member)
Definition member.h:26
Member(const Field &base)
Definition member.h:29
const Member & onPing(F callback) const
通信速度が更新された時のイベント
Definition member.h:338
RobotModelの送受信データを表すクラス
Definition robot_model.h:26
u8stringとstringとwstringをshared_ptrで持ち共有する
Definition encoding.h:67
文字列の送受信データを表すクラス
Definition text.h:183
実数値またはその配列の送受信データを表すクラス
Definition value.h:59
Viewの送受信データを表すクラス
Definition view.h:36
ClientDataの参照とメンバ名とデータ名を持つクラス
Definition field.h:71
Field child(const SharedString &field) const
Definition field.cc:42
Definition client_internal.h:46
#define WEBCFACE_DLL
Definition webcface-config.h:69
#define WEBCFACE_NS_END
Definition webcface-config.h:118
#define WEBCFACE_NS_BEGIN
Definition webcface-config.h:117
#define WEBCFACE_CALL_FP
Definition webcface-config.h:107