CommonLibSSE (Parapets fork)
Loading...
Searching...
No Matches
BSIMusicTrack.h
Go to the documentation of this file.
1#pragma once
2
3namespace RE
4{
6 {
7 public:
8 inline static constexpr auto RTTI = RTTI_BSIMusicTrack;
9
10 enum class TrackType : std::uint32_t
11 {
12 kSilentTrack = 0xA1A9C4D5,
13 kSingleTrack = 0x6ED7E048,
14 kPalette = 0x23F678C3
15 };
16
17 enum class MUSIC_STATUS
18 {
19 kInactive = 0,
20 kPlaying = 1,
21 kPaused = 2,
22 kFinishing = 3,
23 kFinished = 4
24 };
25
26 virtual ~BSIMusicTrack(); // 00
27
28 // add
29 virtual void DoUpdate() = 0; // 01
30 virtual void DoPlay() = 0; // 02
31 virtual void DoPause() = 0; // 03
32 virtual void DoFinish(bool a_immediate, float a_fadeTime) = 0; // 04
33 [[nodiscard]] virtual float GetDurationImpl() const = 0; // 05
34 [[nodiscard]] virtual TrackType GetType() const = 0; // 06 - CRC32 hash of class name
35 [[nodiscard]] virtual bool TestCanPlay() const; // 07 - { return true; }
36 [[nodiscard]] virtual MUSIC_STATUS GetMusicStatus() const; // 08 - { return trackStatus; }
37 virtual void DoSetDuckingAttenuation(std::uint16_t a_ducking); // 09 - { return; }
38 virtual void DoClearDucking(); // 0A - { return; }
39
40 // members
42 std::uint32_t pad0C; // 0C
43 };
44 static_assert(sizeof(BSIMusicTrack) == 0x10);
45}
Definition: BSIMusicTrack.h:6
virtual void DoPause()=0
static constexpr auto RTTI
Definition: BSIMusicTrack.h:8
virtual bool TestCanPlay() const
virtual ~BSIMusicTrack()
virtual void DoClearDucking()
MUSIC_STATUS
Definition: BSIMusicTrack.h:18
virtual void DoUpdate()=0
virtual TrackType GetType() const =0
virtual float GetDurationImpl() const =0
virtual void DoPlay()=0
stl::enumeration< MUSIC_STATUS, std::uint32_t > trackStatus
Definition: BSIMusicTrack.h:41
std::uint32_t pad0C
Definition: BSIMusicTrack.h:42
TrackType
Definition: BSIMusicTrack.h:11
virtual MUSIC_STATUS GetMusicStatus() const
virtual void DoSetDuckingAttenuation(std::uint16_t a_ducking)
virtual void DoFinish(bool a_immediate, float a_fadeTime)=0
Definition: PCH.h:216
Definition: AbsorbEffect.h:6
constexpr REL::ID RTTI_BSIMusicTrack
Definition: Offsets_RTTI.h:1731