SkyWay Linux SDK
読み取り中…
検索中…
一致する文字列を見つけられません
local_room_member.hpp
1//
2// local_room_member.hpp
3// skyway
4//
5// Created by Naoto Takahashi on 2023/12/18.
6// Copyright © 2023 NTT Communications. All rights reserved.
7//
8
9#ifndef SKYWAY_ROOM_ABSTRACT_LOCAL_ROOM_MEMBER_HPP
10#define SKYWAY_ROOM_ABSTRACT_LOCAL_ROOM_MEMBER_HPP
11
12#include <skyway/core/interface/local_person.hpp>
13
14#include "skyway/room/abstract/room_member.hpp"
15#include "skyway/room/interface/local_room_member.hpp"
16#include "skyway/room/interface/room_domain_factory.hpp"
17
18namespace skyway {
19namespace room {
20namespace abstract {
21
26public:
27 virtual ~LocalRoomMember();
28
33
34protected:
35 LocalRoomMember(std::shared_ptr<core::interface::LocalPerson> core,
36 std::shared_ptr<interface::Room> room,
37 interface::RoomDomainFactory* factory);
38
39private:
40 // core::interface::LocalPerson::EventListener
41 void OnStreamPublished(std::shared_ptr<core::interface::Publication> publication) override;
42 void OnStreamUnpublished(std::shared_ptr<core::interface::Publication> publication) override;
43 void OnPublicationSubscribed(
44 std::shared_ptr<core::interface::Subscription> subscription) override;
45 void OnPublicationUnsubscribed(
46 std::shared_ptr<core::interface::Subscription> subscription) override;
47
48 // core::interface::Member::EventListener
49 void OnLeft() override;
50 void OnMetadataUpdated(const std::string& metadata) override;
51 void OnPublicationListChanged() override;
52 void OnSubscriptionListChanged() override;
53
54 std::mutex listener_mtx_;
56};
57
58} // namespace abstract
59} // namespace room
60} // namespace skyway
61
62#endif /* SKYWAY_ROOM_ABSTRACT_LOCAL_ROOM_MEMBER_HPP */
イベントリスナ
Definition local_person.hpp:26
LocalRoomMemberの操作を行う抽象クラス
Definition local_room_member.hpp:25
void AddEventListener(interface::LocalRoomMember::EventListener *listener) override
イベントの購読します。
void RemoveEventListener(interface::LocalRoomMember::EventListener *listener) override
イベントの購読を中止します。
RoomMemberの操作を行う抽象クラス
Definition room_member.hpp:21
イベントリスナ
Definition local_room_member.hpp:24
LocalRoomMemberの操作を行うインターフェース
Definition local_room_member.hpp:21