CommonLibSSE (powerof3)
Loading...
Searching...
No Matches
BSSoundHandle.h
Go to the documentation of this file.
1#pragma once
2
3#include "RE/N/NiPoint3.h"
4
5namespace RE
6{
7 class NiAVObject;
8
10 {
11 public:
12 enum : std::uint32_t
13 {
14 kInvalidID = static_cast<std::uint32_t>(-1)
15 };
16
17 enum class AssumedState
18 {
19 kInitialized = 0,
20 kPlaying = 1,
21 kStopped = 2,
22 kPaused = 3
23 };
24
25 enum class LoopType
26 {
27 kNone = 0,
28 kWholeFile = 1,
29 kEnvFast = 2,
30 kEnvSlow = 3
31 };
32
34 ~BSSoundHandle() = default;
35
36 bool FadeOutAndRelease(std::uint16_t a_fadeTimeMS);
37 [[nodiscard]] bool IsValid() const;
38 bool SetFrequency(float a_frequency);
39 bool SetPosition(NiPoint3 a_pos);
41 bool SetVolume(float a_volume);
42 bool Stop();
43 bool Play();
44
45 // members
46 std::uint32_t soundID; // 00
47 bool assumeSuccess; // 04
48 std::uint8_t pad05; // 05
49 std::uint16_t pad06; // 06
51 };
52 static_assert(sizeof(BSSoundHandle) == 0xC);
53}
Definition: NiAVObject.h:50
Definition: NiPoint3.h:6
Definition: PCH.h:217
Definition: AbsorbEffect.h:6
Definition: BSSoundHandle.h:10
~BSSoundHandle()=default
std::uint8_t pad05
Definition: BSSoundHandle.h:48
bool FadeOutAndRelease(std::uint16_t a_fadeTimeMS)
std::uint16_t pad06
Definition: BSSoundHandle.h:49
bool SetFrequency(float a_frequency)
bool assumeSuccess
Definition: BSSoundHandle.h:47
@ kInvalidID
Definition: BSSoundHandle.h:14
bool IsValid() const
std::uint32_t soundID
Definition: BSSoundHandle.h:46
bool SetVolume(float a_volume)
AssumedState
Definition: BSSoundHandle.h:18
bool SetPosition(NiPoint3 a_pos)
stl::enumeration< AssumedState, std::uint32_t > state
Definition: BSSoundHandle.h:50
void SetObjectToFollow(NiAVObject *a_node)
LoopType
Definition: BSSoundHandle.h:26