4#include <unordered_map>
9#include <condition_variable>
11#include <spdlog/common.h>
12#include <spdlog/logger.h>
29std::pair<unsigned int, SharedString>
findReqField(internal::StrMap2<unsigned int> &req,
30 const SharedString &member,
31 const SharedString &field);
35 std::shared_ptr<spdlog::logger>
logger;
53 bool sync_init =
false;
126 std::unordered_map<unsigned int, std::unordered_map<std::size_t, int>>
129 inline static unsigned int last_member_id = 0;
135 std::string_view remote_addr,
136 const spdlog::sink_ptr &sink,
137 spdlog::level::level_enum level);
141 void onRecv(
const std::string &msg);
143 std::atomic<bool> closing =
false;
146 static constexpr std::chrono::milliseconds ping_interval{5000};
149 bool ping_status_req =
false;
154 void send(
const std::string &msg);
155 template <
typename T>
157 logger->debug(
"-> sending {}", obj);
158 send(message::packSingle(obj));
161 template <
typename T>
163 logger->debug(
"-> sending {}", obj);
164 message::pack(send_buffer, send_len, obj);
u8stringとstringとwstringをshared_ptrで持ち共有する
Definition encoding.h:67
std::map< SharedString, T > StrMap1
Definition map.h:15
StrMap1< StrMap1< T > > StrMap2
Definition map.h:17
std::set< SharedString > StrSet1
Definition map.h:18
void * wsConnPtr
Definition server.h:21
std::pair< unsigned int, SharedString > findReqField(internal::StrMap2< unsigned int > &req, const SharedString &member, const SharedString &field)
Definition member_data.cc:136
client初期化(client->server->client)
Definition sync.h:30
Definition member_data.h:33
std::mutex image_m
Definition member_data.h:82
internal::StrMap2< int > image_req_changed
Definition member_data.h:91
spdlog::sink_ptr sink
Definition member_data.h:34
SharedString name
Definition member_data.h:55
internal::StrMap2< unsigned int > canvas3d_old_req
Definition member_data.h:101
std::stringstream send_buffer
Definition member_data.h:151
std::optional< std::chrono::milliseconds > last_ping_duration
Definition member_data.h:148
internal::StrMap2< unsigned int > canvas2d_old_req
Definition member_data.h:102
internal::StrMap2< std::optional< std::thread > > image_convert_thread
Definition member_data.h:106
std::chrono::system_clock::time_point last_sync_time
Definition member_data.h:98
internal::StrMap2< unsigned int > image_req
Definition member_data.h:100
internal::StrMap1< message::ViewData > view
Definition member_data.h:67
void pack(const T &obj)
Definition member_data.h:162
std::unordered_map< unsigned int, std::unordered_map< std::size_t, int > > pending_calls
まだ完了していない自分へのcall呼び出しのリスト
Definition member_data.h:127
internal::StrMap2< message::ImageReq > image_req_info
Definition member_data.h:96
std::condition_variable image_cv
Definition member_data.h:81
internal::StrMap1< std::shared_ptr< ValAdaptor > > text
Definition member_data.h:65
void send(const T &obj)
Definition member_data.h:156
internal::StrMap1< message::ImageFrame > image
Definition member_data.h:71
std::chrono::system_clock::time_point last_send_ping
Definition member_data.h:147
internal::StrMap1< message::Canvas3DData > canvas3d
Definition member_data.h:68
internal::StrMap1< std::shared_ptr< std::vector< double > > > value
最新の値
Definition member_data.h:64
internal::StrMap1< message::Canvas2DData > canvas2d
Definition member_data.h:69
internal::StrMap1< int > image_changed
Definition member_data.h:87
wsConnPtr con
ws接続のポインタ、切断後(onClose後)nullptrになる
Definition member_data.h:43
message::SyncInit init_data
Definition member_data.h:57
~MemberData()
Definition member_data.h:138
bool connected() const
Definition member_data.h:45
internal::StrMap1< std::shared_ptr< message::FuncInfo > > func
Definition member_data.h:66
MemberData(const MemberData &)=delete
std::shared_ptr< spdlog::logger > logger
Definition member_data.h:35
spdlog::level::level_enum logger_level
Definition member_data.h:36
internal::StrMap1< std::vector< std::shared_ptr< message::RobotLink > > > robot_model
Definition member_data.h:109
ServerStorage * store
Definition member_data.h:38
MemberData & operator=(const MemberData &)=delete
internal::StrSet1 log_req_default
古いLogリクエスト ("default"のログを古いメッセージ形式で返す)
Definition member_data.h:113
unsigned int member_id
Definition member_data.h:56
std::string remote_addr
Definition member_data.h:44
internal::StrMap1< std::shared_ptr< std::deque< message::LogLine > > > log
ログ全履歴
Definition member_data.h:115
#define WEBCFACE_NS_END
Definition webcface-config.h:118
#define WEBCFACE_NS_BEGIN
Definition webcface-config.h:117