|
| | SyncDataStore2 (const SharedString &name) |
| |
| bool | isSelf (const SharedString &member) const |
| |
| unsigned int | addReq (const SharedString &member, SharedString field) |
| | リクエストを追加
|
| |
| unsigned int | addReq (const SharedString &member, SharedString field, const ReqT &req_info) |
| | リクエストを追加
|
| |
| void | setSend (SharedString name, const T &data) |
| | 送信するデータをセット
|
| |
| void | setSend (const FieldBase &base, const T &data) |
| |
| void | setRecv (const SharedString &from, SharedString name, const T &data) |
| | 受信したデータをdata_recvにセット
|
| |
| void | setRecv (const FieldBase &base, const T &data) |
| |
| void | clearRecv (const SharedString &from, SharedString name) |
| | 受信したデータを削除
|
| |
| void | clearRecv (const FieldBase &base) |
| |
| std::optional< T > | getRecv (const SharedString &from, SharedString name) |
| | data_recvからデータを返す
|
| |
| std::optional< T > | getRecv (const FieldBase &base) |
| |
| bool | unsetRecv (const SharedString &from, SharedString name) |
| | data_recvからデータを削除, reqを消す
|
| |
| bool | unsetRecv (const FieldBase &base) |
| |
| void | initMember (const SharedString &from) |
| | memberのentryとデータをクリア
|
| |
| void | setEntry (const SharedString &from, SharedString e) |
| | 受信したentryを追加
|
| |
| StrSet1 | getEntry (const SharedString &from) |
| | entryを取得
|
| |
| StrSet1 | getEntry (const FieldBase &base) |
| |
| std::pair< SharedString, SharedString > | getReq (unsigned int req_id, SharedString sub_field) |
| | req_idに対応するmember名とフィールド名を返す
|
| |
| const ReqT & | getReqInfo (const SharedString &member, const SharedString &field) |
| | member名とフィールド名に対応するreq_infoを返す
|
| |
| StrMap1< T > | transferSend (bool is_first) |
| | data_sendを返し、data_sendをクリア
|
| |
| StrMap1< T > | getSendPrev (bool is_first) |
| |
| StrMap2< unsigned int > | transferReq () |
| | req_sendを返し、req_sendをクリア
|
| |
template<typename T, typename ReqT = int, bool normalizeName = false>
class webcface::internal::SyncDataStore2< T, ReqT, normalizeName >
送受信するデータを保持するクラス
memberごとにフィールドを持つデータに使う。 member, fieldの2次元mapとなる
T=FuncInfoの時、entryとreqは使用しない(常にすべての関数の情報が送られてくる)
ver3.1〜 normalizeNameがtrueの場合(Funcのみ)、field名を常に正規化 (Func以外はサーバー側で正規化しており、 サーバーからクライアントに名前指定を含むメッセージが送られてくることはないので、 正規化の必要がない)