PicoWaveTracker/MelodyStrategy.h
2026-02-18 14:50:03 +01:00

16 lines
536 B
C++

#ifndef MELODY_STRATEGY_H
#define MELODY_STRATEGY_H
#include "config.h"
#include "TrackerTypes.h"
class MelodyStrategy {
public:
virtual void generate(Step (*sequence)[NUM_STEPS], int track, int numSteps, int* scaleNotes, int numScaleNotes, int seed) = 0;
virtual void generateScale(int* scaleNotes, int& numScaleNotes) = 0;
virtual void mutate(Step (*sequence)[NUM_STEPS], int track, int numSteps, int* scaleNotes, int numScaleNotes) = 0;
virtual const char* getName() = 0;
virtual ~MelodyStrategy() {}
};
#endif