mirror of
https://github.com/zeldaret/ss
synced 2026-05-24 07:10:53 -04:00
26af4db82d
* update from dtk-template and start work towards using clangd * include <a> -> "a" * Update build.yml * remove/add non-trivial class in union warning
39 lines
1.0 KiB
C++
39 lines
1.0 KiB
C++
#ifndef NW4R_SND_NOTE_ON_CALLBACK_H
|
|
#define NW4R_SND_NOTE_ON_CALLBACK_H
|
|
#include "nw4r/snd/snd_Channel.h"
|
|
#include "nw4r/types_nw4r.h"
|
|
|
|
|
|
namespace nw4r {
|
|
namespace snd {
|
|
namespace detail {
|
|
|
|
// Forward declarations
|
|
class SeqPlayer;
|
|
|
|
struct NoteOnInfo {
|
|
int prgNo; // at 0x0
|
|
int key; // at 0x4
|
|
int velocity; // at 0x8
|
|
int length; // at 0xC
|
|
int initPan; // at 0x10
|
|
int priority; // at 0x14
|
|
int voiceOutCount; // at 0x18
|
|
Channel::ChannelCallback channelCallback; // at 0x1C
|
|
u32 channelCallbackData; // at 0x20
|
|
};
|
|
|
|
class NoteOnCallback {
|
|
public:
|
|
virtual ~NoteOnCallback() {} // at 0x8
|
|
|
|
virtual Channel *NoteOn(SeqPlayer *pPlayer, int bankNo,
|
|
const NoteOnInfo &rInfo) = 0; // at 0xC
|
|
};
|
|
|
|
} // namespace detail
|
|
} // namespace snd
|
|
} // namespace nw4r
|
|
|
|
#endif
|