![]() |
Diarkis C++Client Library API Document
|
Group用のインターフェースクラス [詳解]
#include <group.h>
公開メンバ関数 | |
virtual | ~IDiarkisGroup () |
IDiarkisGroupクラスのデストラクタ [詳解] | |
virtual void | SetLoggerFactory (const std::shared_ptr< IDiarkisLoggerFactory > &loggerFactory, Diarkis::StdString loggerNameSuffix)=0 |
ロガーを登録します。 [詳解] | |
virtual bool | SetupAsTcp (const std::shared_ptr< IDiarkisTcp > &tcp)=0 |
GroupをTCPプロトコルとして設定します。 [詳解] | |
virtual bool | SetupAsUdp (const std::shared_ptr< IDiarkisUdp > &udp)=0 |
GroupをUDPプロトコルとして設定します。 [詳解] | |
virtual bool | SetTcp (const std::shared_ptr< IDiarkisTcp > &tcp)=0 |
IDiarkisTcpクラスへのポインタを登録します。 [詳解] | |
virtual bool | SetUdp (const std::shared_ptr< IDiarkisUdp > &udp)=0 |
IDiarkisUdpクラスへのポインタを登録します。 [詳解] | |
virtual std::shared_ptr< IDiarkisEvent< const DiarkisGroupEventArgs & > > | GetCreateEvent ()=0 |
グループが作成されたときに呼び出されるコールバックイベントを取得します。 [詳解] | |
virtual std::shared_ptr< IDiarkisEvent< const DiarkisGroupEventArgs & > > | GetJoinEvent ()=0 |
グループに参加したときに呼び出されるコールバックイベントを取得します。 [詳解] | |
virtual std::shared_ptr< IDiarkisEvent< const DiarkisGroupEventArgs & > > | GetLeaveEvent ()=0 |
グループから退出したときに呼び出されるコールバックイベントを取得します。 [詳解] | |
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > | GetMemberJoinEvent ()=0 |
他のクライアントがGroupに参加したときに呼ばれるコールバックイベントを取得します。 [詳解] | |
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > | GetMemberLeaveEvent ()=0 |
他のクライアントがグループから離れた際に呼び出されるコールバックイベントを取得します。 [詳解] | |
virtual std::shared_ptr< IDiarkisEvent< const DiarkisPayloadEventArgs & > > | GetMemberBroadcastEvent ()=0 |
ブロードキャストメッセージを受信したときに呼ばれるコールバックイベントを取得します。 [詳解] | |
virtual void | GetGroupIDs (Diarkis::StdVector< Diarkis::StdString > &idList)=0 |
グループメンバーのユーザーIDのリストを取得する [詳解] | |
virtual Diarkis::System::Result | Create (bool allowEmpty, bool join, uint16_t ttl)=0 |
新しいグループを作成します。 [詳解] | |
virtual Diarkis::System::Result | Join (const char *groupID, const uint8_t *message, size_t messageSize)=0 |
既存のグループに参加します。 [詳解] | |
virtual Diarkis::System::Result | Join (const Diarkis::StdString &groupID, const Diarkis::StdVector< uint8_t > &message)=0 |
Join()と同じ [詳解] | |
virtual Diarkis::System::Result | JoinRandom (uint16_t ttl, const uint8_t *message, size_t messageSize, uint32_t interval=200, bool allowEmpty=false)=0 |
参加できるグループがあれば、そのグループに参加し、なければ新しいグループを作成します。 [詳解] | |
virtual Diarkis::System::Result | JoinRandom (uint16_t ttl, const Diarkis::StdVector< uint8_t > &message, uint32_t interval=200, bool allowEmpty=false)=0 |
JoinRandom()と同じです [詳解] | |
virtual Diarkis::System::Result | Leave (const char *groupID, const uint8_t *message, size_t messageSize)=0 |
グループから退出します。 [詳解] | |
virtual Diarkis::System::Result | Leave (const Diarkis::StdString &groupID, const Diarkis::StdVector< uint8_t > &message)=0 |
Leave()と同じです [詳解] | |
virtual Diarkis::System::Result | BroadcastTo (const char *groupID, const uint8_t *message, size_t messageSize, bool reliable=true)=0 |
グループのすべての参加者にメッセージを送信します。 [詳解] | |
virtual Diarkis::System::Result | BroadcastTo (const Diarkis::StdString &groupID, const Diarkis::StdVector< uint8_t > &message, bool reliable=true)=0 |
BroadcastTo()と同じです [詳解] | |
Group用のインターフェースクラス
Groupを使用するための関数やコールバックイベントが提供されています。
|
inlinevirtual |
IDiarkisGroupクラスのデストラクタ
|
pure virtual |
ロガーを登録します。
[in] | loggerFactory | IDiarkisLoggerFactoryへのポインタ |
[in] | loggerNameSuffix | ログに出力されるタグに追加される文字列 |
|
pure virtual |
GroupをTCPプロトコルとして設定します。
|
pure virtual |
GroupをUDPプロトコルとして設定します。
|
pure virtual |
IDiarkisTcpクラスへのポインタを登録します。
[in] | tcp | IDiarkisTcpクラスへのポインタ |
|
pure virtual |
IDiarkisUdpクラスへのポインタを登録します。
[in] | udp | IDiarkisUdpクラスへのポインタ |
|
pure virtual |
グループが作成されたときに呼び出されるコールバックイベントを取得します。
|
pure virtual |
グループに参加したときに呼び出されるコールバックイベントを取得します。
|
pure virtual |
グループから退出したときに呼び出されるコールバックイベントを取得します。
|
pure virtual |
他のクライアントがGroupに参加したときに呼ばれるコールバックイベントを取得します。
|
pure virtual |
他のクライアントがグループから離れた際に呼び出されるコールバックイベントを取得します。
|
pure virtual |
ブロードキャストメッセージを受信したときに呼ばれるコールバックイベントを取得します。
|
pure virtual |
グループメンバーのユーザーIDのリストを取得する
|
pure virtual |
新しいグループを作成します。
GetCreateEvent() で登録されたコールバックイベント(例:OnGroupCreation)がトリガーされます。
[in] | allowEmpty | グループが空になってもクライアントが残るかどうかを決定します。 true = クライアントがいなくてもグループを保持します。 false = クライアントがいなくなると、ttl で指定された時間経過後にグループが破棄されます。 |
[in] | join | 新しいグループを作成してから参加するかどうかを指定します。 true = 作成された後にグループに参加します。 この場合、サーバーは参加要求に応答しません。 false = グループのみを作成します。 グループに参加したい場合は、別途 Join を実行する必要があります。 |
[in] | ttl | グループが空になった後の存在期間(秒単位)を指定します。allowEmpty が true に設定されている場合のみ使用されます。 |
|
pure virtual |
既存のグループに参加します。
GetJoinEvent() に登録されたコールバックイベント(例: OnGroupJoin)がトリガーされます。
ターゲットグループのメンバーに対して GetMemberJoinEvent() に登録されたコールバックイベント(例:OnGroupMemberJoin)がトリガーされます。
[in] | groupID | 参加するグループのID |
[in] | message | 参加時にグループメンバーにメッセージを送信します。 例えば、新しく参加したメンバーのユーザーIDを通知するためにユーザーIDを含めることができます。 |
[in] | messageSize | メッセージの長さ |
|
pure virtual |
Join()と同じ
|
pure virtual |
参加できるグループがあれば、そのグループに参加し、なければ新しいグループを作成します。
既存のグループに参加すると、GetJoinEvent()で登録されたコールバックイベント(例:OnGroupJoin)がトリガーされます。
新しいグループが作成されると、GetCreateEvent()で登録されたコールバックイベント(例:OnGroupCreation)がトリガーされます。
[in] | ttl | グループが空になってからの経過時間(秒単位)、allowEmptyがtrueに設定されている場合にのみ使用されます。 |
[in] | message | 参加するときにグループメンバーにオプションのメッセージを送信します。 |
[in] | messageSize | メッセージの長さ |
[in] | interval | サーバーがBroadcastToを処理する間隔をミリ秒単位で指定します。デフォルト値は200msです。 intervalで指定された時間のメッセージは、サーバーによってコンパイルされ送信されます。 |
[in] | allowEmpty | クライアントが参加していない場合でもグループを保持するかどうかを決定します。 true = クライアントが存在しなくてもグループを保持します。 false = クライアントがいない場合、ttlで指定された時間後にグループは破棄されます。 |
|
pure virtual |
JoinRandom()と同じです
|
pure virtual |
グループから退出します。
GetMemberLeaveEvent() で登録されたコールバックイベント(例:OnGroupMemberLeave)がトリガーされます。
[in] | groupID | 退出するグループのID |
[in] | message | 退出時にグループメンバーにメッセージを送信します。 |
[in] | messageSize | メッセージの長さ |
|
pure virtual |
Leave()と同じです
|
pure virtual |
グループのすべての参加者にメッセージを送信します。
GetMemberBroadcastEvent() で登録されたコールバックイベント (例:OnGroupMemberBroadcast) がトリガーされます。
あなたが送信したメッセージに対してもコールバックイベントがトリガーされます。
[in] | groupID | グループのID |
[in] | message | 送信するメッセージ |
[in] | messageSize | メッセージの長さ |
[in] | reliable | メッセージが信頼性のある通信 (RUDP) を介して送信されるかどうかを決定します。TCPプロトコルの場合は無視されます。 |
|
pure virtual |
BroadcastTo()と同じです