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