LeviLamina
Loading...
Searching...
No Matches
LevelSoundManager.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/core/utility/NonOwnerPointer.h"
7#include "mc/deps/core/utility/pub_sub/Connector.h"
8#include "mc/deps/core/utility/pub_sub/Publisher.h"
9#include "mc/deps/shared_types/legacy/LevelSoundEvent.h"
10#include "mc/network/NetworkIdentifierWithSubId.h"
11#include "mc/network/packet/LevelSoundEventPacket.h"
12#include "mc/world/level/ILevelSoundManagerConnector.h"
13
14// auto generated forward declare list
15// clang-format off
17class IDimension;
19class PacketSender;
20class Player;
22class Vec3;
23namespace Bedrock::PubSub::ThreadModel { struct MultiThreaded; }
24// clang-format on
25
27public:
28 // LevelSoundManager inner types declare
29 // clang-format off
34 // clang-format on
35
36 // LevelSoundManager inner types define
38 public:
39 // member variables
40 // NOLINTBEGIN
41 ::ll::TypedStorage<8, 120, ::LevelSoundEventPacket> mPacket;
42 // NOLINTEND
43
44 public:
45 // member functions
46 // NOLINTBEGIN
48 // NOLINTEND
49
50 public:
51 // destructor thunk
52 // NOLINTBEGIN
53 MCFOLD void $dtor();
54 // NOLINTEND
55 };
56
58 public:
59 // member variables
60 // NOLINTBEGIN
61 ::ll::TypedStorage<8, 120, ::LevelSoundEventPacket> mPacket;
62 // NOLINTEND
63
64 public:
65 // member functions
66 // NOLINTBEGIN
68 // NOLINTEND
69
70 public:
71 // destructor thunk
72 // NOLINTBEGIN
73 MCFOLD void $dtor();
74 // NOLINTEND
75 };
76
78 public:
79 // member variables
80 // NOLINTBEGIN
81 ::ll::TypedStorage<8, 120, ::LevelSoundEventPacket> mPacket;
82 ::ll::TypedStorage<8, 184, ::NetworkIdentifierWithSubId> mNetworkId;
83 // NOLINTEND
84
85 public:
86 // member functions
87 // NOLINTBEGIN
89 // NOLINTEND
90
91 public:
92 // destructor thunk
93 // NOLINTBEGIN
94 MCFOLD void $dtor();
95 // NOLINTEND
96 };
97
99 public:
100 // member variables
101 // NOLINTBEGIN
102 ::ll::TypedStorage<8, 120, ::LevelSoundEventPacket> mPacket;
103 ::ll::TypedStorage<8, 24, ::std::vector<::NetworkIdentifierWithSubId>> mNetworkIds;
104 // NOLINTEND
105
106 public:
107 // member functions
108 // NOLINTBEGIN
110 // NOLINTEND
111
112 public:
113 // destructor thunk
114 // NOLINTBEGIN
115 MCAPI void $dtor();
116 // NOLINTEND
117 };
118
119 using QueuedSoundPacket = ::std::variant<
124
125public:
126 // member variables
127 // NOLINTBEGIN
128 ::ll::TypedStorage<8, 24, ::Bedrock::NonOwnerPointer<::SoundPlayerInterface>> mSoundPlayer;
129 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::PacketSender>> mLevelPacketSender;
130 ::ll::TypedStorage<1, 1, bool> mIsClientSide;
131 ::ll::TypedStorage<1, 1, bool> mServerAuthSoundEnabled;
132 ::ll::TypedStorage<8, 24, ::Bedrock::NotNullNonOwnerPtr<::LevelEventCoordinator> const> mLevelEventCoordinator;
133 ::ll::TypedStorage<
134 8,
135 24,
136 ::std::vector<::std::variant<
141 mSoundPacketQueue;
142 ::ll::TypedStorage<
143 8,
144 128,
146 void(::SharedTypes::Legacy::LevelSoundEvent, ::Vec3 const&, int, ::ActorSoundIdentifier const&, bool),
148 0>>
149 mOnLevelSoundEvent;
150 ::ll::TypedStorage<
151 8,
152 128,
154 void(::std::string const&, ::Vec3 const&, float, float),
156 0>>
157 mOnLevelSoundEventWithVolumeAndPitch;
158 ::ll::TypedStorage<
159 8,
160 128,
162 mOnStopLevelSoundEvent;
164 mOnStopAllLevelSoundsEvent;
166 mOnStopMusicEvent;
167 // NOLINTEND
168
169public:
170 // prevent constructor by default
172
173public:
174 // virtual functions
175 // NOLINTBEGIN
176 // vIndex: 1
177 virtual ::Bedrock::PubSub::Connector<
178 void(::SharedTypes::Legacy::LevelSoundEvent, ::Vec3 const&, int, ::ActorSoundIdentifier const&, bool)>&
179 getOnLevelSoundEventConnector() /*override*/;
180
181 // vIndex: 2
182 virtual ::Bedrock::PubSub::Connector<void(::std::string const&, ::Vec3 const&, float, float)>&
183 getOnLevelSoundEventWithVolumeAndPitchConnector() /*override*/;
184
185 // vIndex: 3
186 virtual ::Bedrock::PubSub::Connector<void(::std::string const&)>& getOnStopLevelSoundEventConnector() /*override*/;
187
188 // vIndex: 4
189 virtual ::Bedrock::PubSub::Connector<void()>& getOnStopAllLevelSoundsEventConnector() /*override*/;
190
191 // vIndex: 5
192 virtual ::Bedrock::PubSub::Connector<void()>& getOnStopMusicEventConnector() /*override*/;
193
194 // vIndex: 0
195 virtual ~LevelSoundManager() /*override*/;
196 // NOLINTEND
197
198public:
199 // member functions
200 // NOLINTBEGIN
201 MCAPI LevelSoundManager(
202 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> soundPlayer,
203 bool isClientSide,
204 ::Bedrock::NotNullNonOwnerPtr<::LevelEventCoordinator> levelEventCoordinator,
205 ::Bedrock::NotNullNonOwnerPtr<::PacketSender> packetSender,
206 bool isServerAuthSoundEnabled
207 );
208
209 MCAPI void _queueSoundPacket(
210 ::std::variant<
215 );
216
217 MCAPI void broadcastSoundEvent(
218 ::IDimension& dimension,
219 ::SharedTypes::Legacy::LevelSoundEvent type,
220 ::Vec3 const& pos,
221 int data,
222 ::ActorSoundIdentifier const& actorSoundIdentifier,
223 bool isGlobal,
224 ::Player* primaryLocalPlayer
225 );
226
227 MCAPI void playPredictiveSynchronizedSound(
228 ::IDimension& dimension,
229 ::SharedTypes::Legacy::LevelSoundEvent type,
230 ::Vec3 const& pos,
231 ::Player* targetPlayer,
232 int data,
233 ::ActorSoundIdentifier const& actorSoundIdentifier,
234 bool isGlobal
235 );
236
237 MCAPI void playSynchronizedSound_DEPRECATED(
238 ::IDimension& dimension,
239 ::SharedTypes::Legacy::LevelSoundEvent type,
240 ::Vec3 const& pos,
241 ::Player* primaryLocalPlayer,
242 int data,
243 ::ActorSoundIdentifier const& actorSoundIdentifier,
244 bool isGlobal
245 );
246
247 MCAPI void stopSoundEvent(::std::string const& name);
248 // NOLINTEND
249
250public:
251 // constructor thunks
252 // NOLINTBEGIN
253 MCAPI void* $ctor(
254 ::Bedrock::NotNullNonOwnerPtr<::SoundPlayerInterface> soundPlayer,
255 bool isClientSide,
256 ::Bedrock::NotNullNonOwnerPtr<::LevelEventCoordinator> levelEventCoordinator,
257 ::Bedrock::NotNullNonOwnerPtr<::PacketSender> packetSender,
258 bool isServerAuthSoundEnabled
259 );
260 // NOLINTEND
261
262public:
263 // destructor thunk
264 // NOLINTBEGIN
265 MCAPI void $dtor();
266 // NOLINTEND
267
268public:
269 // virtual function thunks
270 // NOLINTBEGIN
271 MCFOLD ::Bedrock::PubSub::Connector<
272 void(::SharedTypes::Legacy::LevelSoundEvent, ::Vec3 const&, int, ::ActorSoundIdentifier const&, bool)>&
273 $getOnLevelSoundEventConnector();
274
275 MCFOLD ::Bedrock::PubSub::Connector<void(::std::string const&, ::Vec3 const&, float, float)>&
276 $getOnLevelSoundEventWithVolumeAndPitchConnector();
277
278 MCAPI ::Bedrock::PubSub::Connector<void(::std::string const&)>& $getOnStopLevelSoundEventConnector();
279
280 MCAPI ::Bedrock::PubSub::Connector<void()>& $getOnStopAllLevelSoundsEventConnector();
281
282 MCFOLD ::Bedrock::PubSub::Connector<void()>& $getOnStopMusicEventConnector();
283 // NOLINTEND
284
285public:
286 // vftables
287 // NOLINTBEGIN
288 MCNAPI static void** $vftable();
289 // NOLINTEND
290};
Definition ActorSoundIdentifier.h:16
Definition Publisher.h:8
Definition IDimension.h:24
Definition ILevelSoundManagerConnector.h:18
Definition LevelEventCoordinator.h:25
Definition LevelSoundManager.h:26
static MCAPI void ** $vftable()
Definition PacketSender.h:17
Definition Player.h:123
Definition SoundPlayerInterface.h:20
Definition Vec3.h:10
Definition LevelSoundManager.h:57
Definition LevelSoundManager.h:37