summaryrefslogtreecommitdiff
path: root/src/audio/DMAudio.h
diff options
context:
space:
mode:
authorclaude-bot <[email protected]>2026-07-13 12:27:07 +0000
committerclaude-bot <[email protected]>2026-07-13 12:27:07 +0000
commit9f61c9e6ac6b1ac5692cf6352d2ebbd47a31a686 (patch)
treea84756b82513739a2672db3a1f0ec579db6d18ff /src/audio/DMAudio.h
downloadre3-miami.tar.gz
re3-miami.zip
Import Cai1Hsu/re3 @ miami (reVC / GTA:VC decompilation)HEADmiami
Snapshot import (no upstream history) into git.ancap.in.ua/claude, per @lzcnt. Source: https://github.com/Cai1Hsu/re3 branch miami.
Diffstat (limited to 'src/audio/DMAudio.h')
-rw-r--r--src/audio/DMAudio.h103
1 files changed, 103 insertions, 0 deletions
diff --git a/src/audio/DMAudio.h b/src/audio/DMAudio.h
new file mode 100644
index 0000000..2c10043
--- /dev/null
+++ b/src/audio/DMAudio.h
@@ -0,0 +1,103 @@
+#pragma once
+
+#include "audio_enums.h"
+#include "soundlist.h"
+#include "Crime.h"
+
+#define AEHANDLE_IS_FAILED(h) ((h)<0)
+#define AEHANDLE_IS_OK(h) ((h)>=0)
+
+#define NO_AUDIO_PROVIDER -3
+#define AUDIO_PROVIDER_NOT_DETERMINED -99
+
+class cAudioScriptObject;
+class CEntity;
+
+class cDMAudio
+{
+public:
+ ~cDMAudio()
+ { }
+
+ void Initialise(void);
+ void Terminate(void);
+ void Service(void);
+
+ int32 CreateEntity(eAudioType type, void *UID);
+ void DestroyEntity(int32 audioEntity);
+ void SetEntityStatus(int32 audioEntity, uint8 status);
+ void PlayOneShot(int32 audioEntity, uint16 oneShot, float volume);
+ void DestroyAllGameCreatedEntities(void);
+
+ void SetMonoMode(uint8 mono);
+ void SetMP3BoostVolume(uint8 volume);
+ void SetEffectsMasterVolume(uint8 volume);
+ void SetMusicMasterVolume(uint8 volume);
+ void SetEffectsFadeVol(uint8 volume);
+ void SetMusicFadeVol(uint8 volume);
+
+ uint8 GetNum3DProvidersAvailable(void);
+ char *Get3DProviderName(uint8 id);
+
+ int8 AutoDetect3DProviders(void);
+
+ int8 GetCurrent3DProviderIndex(void);
+ int8 SetCurrent3DProvider(uint8 which);
+
+ void SetSpeakerConfig(int32 config);
+
+ bool IsMP3RadioChannelAvailable(void);
+
+ void ReleaseDigitalHandle(void);
+ void ReacquireDigitalHandle(void);
+
+ void SetDynamicAcousticModelingStatus(uint8 status);
+
+ bool CheckForAnAudioFileOnCD(void);
+
+ char GetCDAudioDriveLetter(void);
+ bool IsAudioInitialised(void);
+
+ void ReportCrime(eCrimeType crime, CVector const &pos);
+
+ int32 CreateLoopingScriptObject(cAudioScriptObject *scriptObject);
+ void DestroyLoopingScriptObject(int32 audioEntity);
+ void CreateOneShotScriptObject(cAudioScriptObject *scriptObject);
+
+ void PlaySuspectLastSeen(float x, float y, float z);
+
+ void ReportCollision(CEntity *entityA, CEntity *entityB, uint8 surfaceTypeA, uint8 surfaceTypeB, float collisionPower, float velocity);
+
+ void PlayFrontEndSound(uint16 frontend, uint32 volume);
+ void PlayRadioAnnouncement(uint32 announcement);
+ void PlayFrontEndTrack(uint32 track, uint8 frontendFlag);
+ void StopFrontEndTrack(void);
+
+ void ResetTimers(uint32 time);
+
+ void ChangeMusicMode(uint8 mode);
+
+ void PreloadCutSceneMusic(uint32 track);
+ void PlayPreloadedCutSceneMusic(void);
+ void StopCutSceneMusic(void);
+
+ void PreloadMissionAudio(uint8 slot, Const char *missionAudio);
+ uint8 GetMissionAudioLoadingStatus(uint8 slot);
+ void SetMissionAudioLocation(uint8 slot, float x, float y, float z);
+ void PlayLoadedMissionAudio(uint8 slot);
+ bool IsMissionAudioSampleFinished(uint8 slot);
+ void ClearMissionAudio(uint8 slot);
+
+ uint8 GetRadioInCar(void);
+ void SetRadioInCar(uint32 radio);
+ void SetRadioChannel(uint32 radio, int32 pos);
+
+ void SetStartingTrackPositions(uint8 isStartGame);
+ float *GetListenTimeArray();
+ uint32 GetFavouriteRadioStation();
+ int32 GetRadioPosition(uint32 station);
+ void SetPedTalkingStatus(class CPed *ped, uint8 status);
+ void SetPlayersMood(uint8 mood, uint32 time);
+ void ShutUpPlayerTalking(uint8 state);
+};
+extern cDMAudio DMAudio;