CommonLibSSE (powerof3)
BGSMusicPaletteTrack.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BGSMusicTrack.h"
4 #include "RE/B/BSTArray.h"
5 
6 namespace RE
7 {
9  {
10  public:
11  inline static constexpr auto RTTI = RTTI_BGSMusicPaletteTrack;
12  inline static constexpr auto VTABLE = VTABLE_BGSMusicPaletteTrack;
13 
14  ~BGSMusicPaletteTrack() override; // 00
15 
16  // override (BGSMusicTrack)
17  void DoUpdate() override; // 01
18  void DoPlay() override; // 02
19  void DoPause() override; // 03
20  void DoFinish(bool a_arg1, float a_arg2) override; // 04
21  float GetDurationImpl() const override; // 05 - { return duration; }
22  TrackType GetType() const override; // 06 - "BGSMusicPaletteTrack"
23  void InitItem(TESForm* a_form) override; // 0B
24  void Load(TESFile* a_mod) override; // 0C
25 
26  // members
27  BSTArray<BSIMusicTrack*> layers[3]; // 20 - SNAM - tracks are split based on null entries on the record
28  std::int32_t playingIndexes[3]; // 68
29  float duration; // 74 - FLTV
30  float fadeOutTime; // 78 - DNAM
31  std::uint32_t pad7C; // 7C
32  std::uint64_t playTime; // 80
33  std::uint64_t pauseTime; // 88
34  };
35  static_assert(sizeof(BGSMusicPaletteTrack) == 0x90);
36 }
Definition: BGSMusicPaletteTrack.h:9
void DoUpdate() override
static constexpr auto VTABLE
Definition: BGSMusicPaletteTrack.h:12
void Load(TESFile *a_mod) override
std::uint32_t pad7C
Definition: BGSMusicPaletteTrack.h:31
std::int32_t playingIndexes[3]
Definition: BGSMusicPaletteTrack.h:28
float duration
Definition: BGSMusicPaletteTrack.h:29
float GetDurationImpl() const override
TrackType GetType() const override
void DoPlay() override
void InitItem(TESForm *a_form) override
float fadeOutTime
Definition: BGSMusicPaletteTrack.h:30
static constexpr auto RTTI
Definition: BGSMusicPaletteTrack.h:11
BSTArray< BSIMusicTrack * > layers[3]
Definition: BGSMusicPaletteTrack.h:27
~BGSMusicPaletteTrack() override
std::uint64_t pauseTime
Definition: BGSMusicPaletteTrack.h:33
void DoFinish(bool a_arg1, float a_arg2) override
void DoPause() override
std::uint64_t playTime
Definition: BGSMusicPaletteTrack.h:32
Definition: BGSMusicTrack.h:12
TrackType
Definition: BSIMusicTrack.h:12
Definition: BSTArray.h:378
Definition: TESFile.h:17
Definition: TESForm.h:36
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BGSMusicPaletteTrack
Definition: Offsets_VTABLE.h:8661
constexpr REL::ID RTTI_BGSMusicPaletteTrack(static_cast< std::uint64_t >(685260))