LeviLamina
Loading...
Searching...
No Matches
HttpAudioFetcher.h
1#pragma once
2
3#include "mc/_HeaderOutputPredefine.h"
4
5// auto generated inclusion list
6#include "mc/deps/audio/online_streaming/IOnlineAudioFetcher.h"
7#include "mc/deps/core/threading/Async.h"
8#include "mc/deps/core/utility/NonOwnerPointer.h"
9#include "mc/platform/brstd/move_only_function.h"
10
11// auto generated forward declare list
12// clang-format off
13class TaskGroup;
14namespace Audio { class IOnlineAudioFetcherUpdateHandle; }
15namespace Audio { class OnlineStreamedAudioBuffer; }
16namespace Audio { struct HttpRangeResponse; }
17namespace Audio { struct OnlineAudioFetcherSnapshot; }
18namespace Audio { struct OnlineStreamConfig; }
19// clang-format on
20
21namespace Audio {
22
23class HttpAudioFetcher : public ::Audio::IOnlineAudioFetcher {
24public:
25 // member variables
26 // NOLINTBEGIN
28 // NOLINTEND
29
30public:
31 // prevent constructor by default
32 HttpAudioFetcher& operator=(HttpAudioFetcher const&);
33 HttpAudioFetcher(HttpAudioFetcher const&);
34 HttpAudioFetcher();
35
36public:
37 // virtual functions
38 // NOLINTBEGIN
39 virtual ~HttpAudioFetcher() /*override*/ = default;
40
41 virtual void start() /*override*/;
42
43 virtual void seekTo(uint64 offset) /*override*/;
44
45 virtual void stop() /*override*/;
46
47 virtual void notifyPlaybackStarted() /*override*/;
48
49 virtual ::Audio::OnlineAudioFetcherSnapshot getSnapshot() const /*override*/;
50
51 virtual ::std::shared_ptr<::Audio::IOnlineAudioFetcherUpdateHandle> getUpdateHandle() /*override*/;
52 // NOLINTEND
53
54public:
55 // static functions
56 // NOLINTBEGIN
57#ifdef LL_PLAT_C
58 MCNAPI static ::brstd::move_only_function<::std::unique_ptr<::Audio::IOnlineAudioFetcher>(
59 ::std::string const&,
60 ::std::shared_ptr<::Audio::OnlineStreamedAudioBuffer>,
62 )> createFetcherFactory(::Bedrock::NotNullNonOwnerPtr<::TaskGroup> const& taskGroup);
63#endif
64 // NOLINTEND
65
66public:
67 // virtual function thunks
68 // NOLINTBEGIN
69#ifdef LL_PLAT_C
70 MCNAPI void $start();
71
72 MCNAPI void $seekTo(uint64 offset);
73
74 MCNAPI void $stop();
75
76 MCNAPI void $notifyPlaybackStarted();
77
78 MCNAPI ::Audio::OnlineAudioFetcherSnapshot $getSnapshot() const;
79
80 MCNAPI ::std::shared_ptr<::Audio::IOnlineAudioFetcherUpdateHandle> $getUpdateHandle();
81#endif
82
83
84 // NOLINTEND
85};
86
87} // namespace Audio
Definition IOnlineAudioFetcherUpdateHandle.h:7
Definition IOnlineAudioFetcher.h:13
Definition OnlineStreamedAudioBuffer.h:10
Definition TaskGroup.h:86
Definition HttpRangeResponse.h:7
Definition OnlineAudioFetcherSnapshot.h:7
Definition OnlineStreamConfig.h:7
Definition Alias.h:14