summaryrefslogtreecommitdiff
path: root/src/network/network.h
diff options
context:
space:
mode:
authorGravatar liamwhite2022-07-25 18:31:45 -0400
committerGravatar GitHub2022-07-25 18:31:45 -0400
commit1e67d2b59f6dfd561768db3fb9a8e0c6a16ec9f2 (patch)
tree999411f1ca76390654d1034c6d0bd2c47c3f101c /src/network/network.h
parentMerge pull request #8564 from lat9nq/dinner-fork (diff)
parentnetwork: Address review comments (diff)
downloadyuzu-1e67d2b59f6dfd561768db3fb9a8e0c6a16ec9f2.tar.gz
yuzu-1e67d2b59f6dfd561768db3fb9a8e0c6a16ec9f2.tar.xz
yuzu-1e67d2b59f6dfd561768db3fb9a8e0c6a16ec9f2.zip
Merge pull request #8541 from FearlessTobi/multiplayer-part1
yuzu, network: Add room service and UI configuration
Diffstat (limited to 'src/network/network.h')
-rw-r--r--src/network/network.h33
1 files changed, 33 insertions, 0 deletions
diff --git a/src/network/network.h b/src/network/network.h
new file mode 100644
index 000000000..e4de207b2
--- /dev/null
+++ b/src/network/network.h
@@ -0,0 +1,33 @@
1// SPDX-FileCopyrightText: Copyright 2017 Citra Emulator Project
2// SPDX-License-Identifier: GPL-2.0-or-later
3
4#pragma once
5
6#include <memory>
7#include "network/room.h"
8#include "network/room_member.h"
9
10namespace Network {
11
12class RoomNetwork {
13public:
14 RoomNetwork();
15
16 /// Initializes and registers the network device, the room, and the room member.
17 bool Init();
18
19 /// Returns a pointer to the room handle
20 std::weak_ptr<Room> GetRoom();
21
22 /// Returns a pointer to the room member handle
23 std::weak_ptr<RoomMember> GetRoomMember();
24
25 /// Unregisters the network device, the room, and the room member and shut them down.
26 void Shutdown();
27
28private:
29 std::shared_ptr<RoomMember> m_room_member; ///< RoomMember (Client) for network games
30 std::shared_ptr<Room> m_room; ///< Room (Server) for network games
31};
32
33} // namespace Network