35 lines
1.0 KiB
C++
35 lines
1.0 KiB
C++
#pragma once
|
|
|
|
#include <cstdint>
|
|
|
|
class Note {
|
|
public:
|
|
Note();
|
|
Note(const uint16_t note);
|
|
Note(const uint8_t note, const uint8_t instrument, const uint8_t volume, const uint8_t effect);
|
|
Note(const uint8_t note, const uint8_t octave, const uint8_t instrument, const uint8_t volume, const uint8_t effect);
|
|
|
|
void Set(const uint16_t note);
|
|
void SetAbsoluteNote(const uint8_t note);
|
|
void SetNote(const uint8_t note);
|
|
void SetFirstNote(const uint8_t note, const uint8_t octave, const uint8_t instrument, const uint8_t volume, const uint8_t effect);
|
|
void SetOctave(const uint8_t octave);
|
|
void SetInstrument(const uint8_t instrument);
|
|
void SetVolume(const uint8_t volume);
|
|
void SetEffect(const uint8_t effect);
|
|
|
|
const uint16_t Get();
|
|
const uint8_t GetAbsoluteNote();
|
|
const uint8_t GetNote();
|
|
const uint8_t GetOctave();
|
|
const uint8_t GetInstrument();
|
|
const uint8_t GetVolume();
|
|
const uint8_t GetEffect();
|
|
private:
|
|
uint8_t note;
|
|
uint8_t octave;
|
|
uint8_t instrument;
|
|
uint8_t volume;
|
|
uint8_t effect;
|
|
};
|