9#include "webcface/common/webcface-config.h"
19 std::shared_ptr<internal::ClientData> data;
42 explicit Client(
const std::string &name,
43 const std::string &host =
"127.0.0.1",
58 explicit Client(
const std::wstring &name,
59 const std::wstring &host = L
"127.0.0.1",
67 const std::shared_ptr<internal::ClientData> &data);
73 bool connected()
const;
83 const Client &close()
const;
93 const Client &autoReconnect(
bool enabled)
const;
98 bool autoReconnect()
const;
105 const Client &start()
const;
118 const Client &waitConnection()
const;
122 syncImpl(std::optional<std::chrono::microseconds> timeout)
const;
140 return syncImpl(std::chrono::microseconds(0));
156 return syncImpl(timeout);
167 template <
typename Clock,
typename Duration>
170 return syncImpl(std::chrono::duration_cast<std::chrono::microseconds>(
171 timeout - Clock::now()));
208 return Member{data, name};
221 return member(SharedString::encode(name));
231 return member(SharedString::encode(name));
239 std::vector<Member> members();
247 std::vector<Member> members()
const;
273 std::streambuf *loggerStreamBuf()
const;
281 std::streambuf *loggerStreamBuf(std::string_view name)
const;
294 std::ostream &loggerOStream()
const;
302 std::ostream &loggerOStream(std::string_view name)
const;
308 std::wstreambuf *loggerWStreamBuf()
const;
316 std::wstreambuf *loggerWStreamBuf(std::wstring_view name)
const;
322 std::wostream &loggerWOStream()
const;
330 std::wostream &loggerWOStream(std::wstring_view name)
const;
336 const std::string &serverVersion()
const;
344 const std::string &serverName()
const;
349 const std::string &serverHostName()
const;
サーバーに接続するクライアント。
Definition client.h:18
const Client & loopSyncFor(std::chrono::microseconds timeout) const
送信用にセットしたデータをすべて送信キューに入れ、受信したデータを処理する。
Definition client.h:155
const Client & loopSync() const
送信用にセットしたデータをすべて送信キューに入れ、受信したデータを処理する。
Definition client.h:184
const Client & loopSyncUntil(std::chrono::time_point< Clock, Duration > timeout) const
送信用にセットしたデータをすべて送信キューに入れ、受信したデータを処理する。
Definition client.h:169
Client()
名前を指定せずサーバーに接続する
Definition client.h:31
Client(const Client &)=delete
Client(const std::wstring &name, const std::wstring &host=L"127.0.0.1", int port=7530)
名前を指定しサーバーに接続する (wstring)
Definition client.h:58
const Client & sync() const
送信用にセットしたデータをすべて送信キューに入れ、受信したデータを処理する。
Definition client.h:139
Member member(std::string_view name) const
他のmemberにアクセスする
Definition client.h:220
Client(const std::string &name, const std::string &host="127.0.0.1", int port=7530)
名前を指定しサーバーに接続する
Definition client.h:42
Member member(std::wstring_view name) const
他のmemberにアクセスする (wstring)
Definition client.h:230
const Client & operator=(const Client &)=delete
Memberを指すクラス
Definition member.h:22
u8stringとstringとwstringをshared_ptrで持ち共有する
Definition encoding.h:69
bool empty() const
Definition encoding.cc:118
Member member() const
Memberを返す
Definition field.cc:21
#define WEBCFACE_DLL
Definition webcface-config.h:60
#define WEBCFACE_NS_END
Definition webcface-config.h:104
#define WEBCFACE_NS_BEGIN
Definition webcface-config.h:103
#define WEBCFACE_DEFAULT_PORT
Definition webcface-config.h:4
#define WEBCFACE_CALL_FP
Definition webcface-config.h:98