SkyWay for Linux
|
Channelの実装クラス [詳解]
#include <channel.hpp>
公開メンバ関数 | |
void | AddEventListener (interface::Channel::EventListener *listener) override |
イベントを購読します。 | |
void | RemoveEventListener (interface::Channel::EventListener *listener) override |
イベントの購読を中止します。 | |
std::string | Id () const override |
Idを取得します。 | |
boost::optional< std::string > | Name () const override |
Nameを取得します。 | |
boost::optional< std::string > | Metadata () const override |
Metadataを取得します。 | |
interface::LocalPerson * | LocalPerson () override |
ChannelにJoinしているLocalPersonを取得します。 | |
std::vector< RemoteMember * > | Bots (bool active_only=true) override |
ChannelにJoinしているBotを取得します。 | |
std::vector< MemberInterface * > | Members (bool active_only=true) override |
ChannelにJoinしているすべてのMemberを取得します。 | |
std::vector< PublicationInterface * > | Publications (bool active_only=true) override |
Publicationの一覧を取得します。 | |
std::vector< SubscriptionInterface * > | Subscriptions (bool active_only=true) override |
Subscriptionの一覧を取得します。 | |
ChannelState | State () const override |
Channelの状態を取得します。 | |
interface::LocalPerson * | Join (const model::Member::Init &init) override |
ChannelにLocalPersonを追加します。 | |
bool | UpdateMetadata (const std::string &metadata) override |
Metadataを更新します。 | |
bool | Leave (MemberInterface *member) override |
ChannelからMemberを退出させます。 | |
bool | Close () override |
Channelを閉じます。 | |
void | Dispose (bool remove_myself_if_needed=true) override |
Channelを閉じずにChannelインスタンスを無効にし、リソースを解放します。 | |
静的公開メンバ関数 | |
static std::shared_ptr< Channel > | Create (const ChannelInit &init) |
Channelを作成します。 | |
static std::shared_ptr< Channel > | Create () |
Channelを作成します。 | |
static std::shared_ptr< Channel > | Find (const ChannelQuery &query) |
既に存在するChannelを検索します。 | |
static std::shared_ptr< Channel > | FindOrCreate (const ChannelInit &init) |
既に存在するChannelを検索し、存在しない場合はChannelを作成します。 | |
Channelの実装クラス
|
overridevirtual |
|
overridevirtual |
ChannelにJoinしているBotを取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
Channelを閉じます。
サーバからの応答を同期的に待ち、ブロックします。
Dispose
とは異なり、Channelを閉じるとJoinしているMemberは全て退出し、Channelは破棄されます。
Closeのコール後にChannelのリソースは破棄するのでDispose
をコールする必要はありません。
Close後のChannelインスタンスは利用できません。
skyway::core::interface::Channelを実装しています。
|
static |
Channelを作成します。
作成するChannelが既に存在する場合はnullptrを返します。
init | 作成するChannelの情報 |
|
overridevirtual |
Channelを閉じずにChannelインスタンスを無効にし、リソースを解放します。
Close
とは異なり、Channelは破棄しないため入室しているMemberには影響しません。
Dispose後のChannelインスタンスは利用できません。
skyway::core::interface::Channelを実装しています。
|
static |
既に存在するChannelを検索します。
Channelが存在しない場合はnullptrを返します。
query | 検索するChannelの情報 |
|
static |
既に存在するChannelを検索し、存在しない場合はChannelを作成します。
init | 検索、作成するChannelの情報 |
|
overridevirtual |
Idを取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
ChannelにLocalPersonを追加します。
サーバからの応答を同期的に待ち、ブロックします。
init | 初期化オプション |
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
ChannelからMemberを退出させます。
サーバからの応答を同期的に待ち、ブロックします。
認可されていればLocalPersonだけでなく、RemoteMemberも退出させることができます。
member | 退出させるMember |
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
ChannelにJoinしているLocalPersonを取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
ChannelにJoinしているすべてのMemberを取得します。
このMemberはLocalPersonも含まれます。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
Metadataを取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
Nameを取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
Publicationの一覧を取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
|
overridevirtual |
Channelの状態を取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
Subscriptionの一覧を取得します。
skyway::core::interface::Channelを実装しています。
|
overridevirtual |
Metadataを更新します。
skyway::core::interface::Channelを実装しています。