CommonLibVR
BGSMusicTrack.h
Go to the documentation of this file.
1 #pragma once
2 
3 #include "RE/B/BSIMusicTrack.h"
4 #include "RE/T/TESCondition.h"
5 
6 namespace RE
7 {
8  class TESFile;
9  class TESForm;
10 
12  {
13  public:
14  inline static constexpr auto RTTI = RTTI_BGSMusicTrack;
15  inline static constexpr auto VTABLE = VTABLE_BGSMusicTrack;
16 
17  ~BGSMusicTrack() override; // 00
18 
19  // override (BSIMusicTrack)
20  [[nodiscard]] bool TestCanPlay() const override; // 07 - { return conditions ? conditions->Run(g_thePlayer, g_thePlayer) : true; }
21 
22  // add
23  virtual void InitItem(TESForm* a_form); // 0B
24  virtual void Load(TESFile* a_mod) = 0; // 0C
25 
26  // members
28  std::uint64_t unk18; // 18
29  private:
30  KEEP_FOR_RE()
31  };
32  static_assert(sizeof(BGSMusicTrack) == 0x20);
33 }
#define KEEP_FOR_RE()
Definition: PCH.h:713
Definition: BGSMusicTrack.h:12
~BGSMusicTrack() override
std::uint64_t unk18
Definition: BGSMusicTrack.h:28
bool TestCanPlay() const override
virtual void InitItem(TESForm *a_form)
TESCondition conditions
Definition: BGSMusicTrack.h:27
static constexpr auto RTTI
Definition: BGSMusicTrack.h:14
static constexpr auto VTABLE
Definition: BGSMusicTrack.h:15
virtual void Load(TESFile *a_mod)=0
Definition: BSIMusicTrack.h:6
Definition: TESCondition.h:992
Definition: TESFile.h:17
Definition: TESForm.h:40
Definition: AbsorbEffect.h:6
constexpr std::array< REL::ID, 1 > VTABLE_BGSMusicTrack
Definition: Offsets_VTABLE.h:8664
constexpr REL::ID RTTI_BGSMusicTrack(static_cast< std::uint64_t >(685261))