master_clock/include/Settings.h

32 lines
509 B
C++

// Settings.h
#ifndef Settings_h
#define Settings_h
#include "Mod.h"
#include <cstdint>
#define MAX_OUTPUTS 8
#define DATA_PER_OUTPUT 64
enum OutputType : uint8_t { TYPE_GATE };
struct OutputConfig {
uint8_t type;
uint8_t _padding[3];
alignas(4) uint8_t data[DATA_PER_OUTPUT];
};
struct DeviceSettings {
uint32_t magic;
uint32_t version;
OutputConfig configs[MAX_OUTPUTS];
ModSlot slots[16];
};
void save();
bool load();
void load_default();
extern DeviceSettings globalSettings;
#endif