mirror of
https://github.com/open-goal/jak-project.git
synced 2024-10-20 11:26:18 -04:00
e81431bd21
Some checks are pending
Build / 🖥️ Windows (push) Waiting to run
Build / 🐧 Linux (push) Waiting to run
Build / 🍎 MacOS (push) Waiting to run
Inform Pages Repo / Generate Documentation (push) Waiting to run
Lint / 📝 Required Checks (push) Waiting to run
Lint / 📝 Optional Checks (push) Waiting to run
Lint / 📝 Formatting (push) Waiting to run
30 lines
770 B
C++
30 lines
770 B
C++
// Copyright: 2021 - 2024, Ziemas
|
|
// SPDX-License-Identifier: ISC
|
|
#pragma once
|
|
|
|
#include "common/common_types.h"
|
|
|
|
namespace snd {
|
|
static constexpr int PAN_RESET = -1;
|
|
static constexpr int PAN_DONT_CHANGE = -2;
|
|
static constexpr int VOLUME_DONT_CHANGE = 0x7fffffff;
|
|
|
|
class SoundBank;
|
|
|
|
class SoundHandler {
|
|
public:
|
|
virtual ~SoundHandler() = default;
|
|
virtual bool Tick() = 0;
|
|
virtual SoundBank& Bank() = 0;
|
|
virtual void Pause() = 0;
|
|
virtual void Unpause() = 0;
|
|
virtual u8 Group() = 0;
|
|
virtual void Stop() = 0;
|
|
virtual void SetVolPan(s32 vol, s32 pan) = 0;
|
|
virtual void SetPMod(s32 mod) = 0;
|
|
virtual void SetPBend(s32 /*mod*/){};
|
|
virtual void SetRegister(u8 /*reg*/, u8 /*value*/) {}
|
|
virtual u32 SoundID() const { return -1; }
|
|
};
|
|
} // namespace snd
|