Merge remote-tracking branch 'upstream/main' into perlin_noise

This commit is contained in:
Damian Schneider
2025-03-12 20:15:40 +01:00
199 changed files with 1908 additions and 3707 deletions

View File

@@ -327,6 +327,7 @@ void serializePlaylist(JsonObject obj);
//presets.cpp
const char *getPresetsFileName(bool persistent = true);
bool presetNeedsSaving();
void initPresetsFile();
void handlePresets();
bool applyPreset(byte index, byte callMode = CALL_MODE_DIRECT_CHANGE);
@@ -408,7 +409,7 @@ class Usermod {
protected:
um_data_t *um_data; // um_data should be allocated using new in (derived) Usermod's setup() or constructor
public:
Usermod() { um_data = nullptr; }
Usermod() : um_data(nullptr) {};
virtual ~Usermod() { if (um_data) delete um_data; }
virtual void setup() = 0; // pure virtual, has to be overriden
virtual void loop() = 0; // pure virtual, has to be overriden
@@ -445,8 +446,6 @@ class Usermod {
};
namespace UsermodManager {
extern byte numMods;
void loop();
void handleOverlayDraw();
bool handleButton(uint8_t b);
@@ -468,13 +467,12 @@ namespace UsermodManager {
#endif
void onUpdateBegin(bool);
void onStateChange(uint8_t);
bool add(Usermod* um);
Usermod* lookup(uint16_t mod_id);
inline byte getModCount() {return numMods;};
size_t getModCount();
};
//usermods_list.cpp
void registerUsermods();
// Register usermods by building a static list via a linker section
#define REGISTER_USERMOD(x) Usermod* const um_##x __attribute__((__section__(".dtors.tbl.usermods.1"), used)) = &x
//usermod.cpp
void userSetup();