Plasma Engine  2.0
Loading...
Searching...
No Matches
AudioWorldModule.h
1#pragma once
2
3#include <AudioSystemPlugin/AudioSystemPluginDLL.h>
4
5#include <AudioSystemPlugin/Components/AudioSystemComponent.h>
6#include <AudioSystemPlugin/Components/AudioListenerComponent.h>
7#include <AudioSystemPlugin/Core/AudioSystemAllocator.h>
8
9#include <Core/World/WorldModule.h>
10
13class PL_AUDIOSYSTEMPLUGIN_DLL plAudioWorldModule : public plWorldModule
14{
15 PL_DECLARE_WORLD_MODULE();
16 PL_ADD_DYNAMIC_REFLECTION(plAudioWorldModule, plWorldModule);
17
19
20public:
21 explicit plAudioWorldModule(plWorld* pWorld);
22 ~plAudioWorldModule() override;
23
24 void Initialize() override;
25
26 void AddEnvironment(const plAudioSystemEnvironmentComponent* pComponent);
27 void RemoveEnvironment(const plAudioSystemEnvironmentComponent* pComponent);
28 [[nodiscard]] EnvironmentSet::Iterator GetEnvironments() const;
29
30 void SetDefaultListener(const plAudioListenerComponent* pListener);
31 [[nodiscard]] const plAudioListenerComponent* GetDefaultListener() const;
32
33private:
34 EnvironmentSet m_lEnvironmentComponents;
35 const plAudioListenerComponent* m_pDefaultListener;
36
37 // TODO: Add events handlers for default listener change
38};
Component used to add an audio listener in the scene, allowing to render sounds.
Definition AudioListenerComponent.h:19
Base class for audio system environment components.
Definition AudioSystemComponent.h:67
World Module allowing to access audio system features, query environments and environment amounts,...
Definition AudioWorldModule.h:14
A world encapsulates a scene graph of game objects and various component managers and their component...
Definition World.h:22
Definition WorldModule.h:10
virtual void Initialize()
This method is called after the constructor. A derived type can override this method to do initializa...
Definition WorldModule.h:98
Definition AudioSystemAllocator.h:36