kopia lustrzana https://github.com/jameshball/osci-render
rodzic
8f6a9f7ed8
commit
4db2fcc293
|
@ -1,18 +1,18 @@
|
||||||
#pragma once
|
#pragma once
|
||||||
#include <JuceHeader.h>
|
#include <JuceHeader.h>
|
||||||
#include <regex>
|
#include <regex>
|
||||||
#include <numbers>
|
#include <numbers>
|
||||||
#include "../shape/Shape.h"
|
#include "../shape/Shape.h"
|
||||||
|
|
||||||
class ErrorListener {
|
class ErrorListener {
|
||||||
public:
|
public:
|
||||||
virtual void onError(int lineNumber, juce::String error) = 0;
|
virtual void onError(int lineNumber, juce::String error) = 0;
|
||||||
virtual juce::String getFileName() = 0;
|
virtual juce::String getFileName() = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
const int NUM_SLIDERS = 26;
|
const int NUM_SLIDERS = 26;
|
||||||
|
|
||||||
const char SLIDER_NAMES[NUM_SLIDERS][9] = {
|
const char SLIDER_NAMES[NUM_SLIDERS][9] = {
|
||||||
"slider_a",
|
"slider_a",
|
||||||
"slider_b",
|
"slider_b",
|
||||||
"slider_c",
|
"slider_c",
|
||||||
|
@ -39,9 +39,9 @@
|
||||||
"slider_x",
|
"slider_x",
|
||||||
"slider_y",
|
"slider_y",
|
||||||
"slider_z",
|
"slider_z",
|
||||||
};
|
};
|
||||||
|
|
||||||
struct LuaVariables {
|
struct LuaVariables {
|
||||||
|
|
||||||
double sliders[NUM_SLIDERS] = { 0.0 };
|
double sliders[NUM_SLIDERS] = { 0.0 };
|
||||||
|
|
||||||
|
@ -56,11 +56,11 @@
|
||||||
double x = 0;
|
double x = 0;
|
||||||
double y = 0;
|
double y = 0;
|
||||||
double z = 0;
|
double z = 0;
|
||||||
};
|
};
|
||||||
|
|
||||||
struct lua_State;
|
struct lua_State;
|
||||||
class LuaParser {
|
class LuaParser {
|
||||||
public:
|
public:
|
||||||
LuaParser(juce::String fileName, juce::String script, std::function<void(int, juce::String, juce::String)> errorCallback, juce::String fallbackScript = "return { 0.0, 0.0 }");
|
LuaParser(juce::String fileName, juce::String script, std::function<void(int, juce::String, juce::String)> errorCallback, juce::String fallbackScript = "return { 0.0, 0.0 }");
|
||||||
|
|
||||||
std::vector<float> run(lua_State*& L, LuaVariables& vars);
|
std::vector<float> run(lua_State*& L, LuaVariables& vars);
|
||||||
|
@ -71,7 +71,7 @@
|
||||||
|
|
||||||
static std::function<void(const std::string&)> onPrint;
|
static std::function<void(const std::string&)> onPrint;
|
||||||
|
|
||||||
private:
|
private:
|
||||||
void reset(lua_State*& L, juce::String script);
|
void reset(lua_State*& L, juce::String script);
|
||||||
void reportError(const char* error);
|
void reportError(const char* error);
|
||||||
void parse(lua_State*& L);
|
void parse(lua_State*& L);
|
||||||
|
@ -84,4 +84,4 @@
|
||||||
std::function<void(int, juce::String, juce::String)> errorCallback;
|
std::function<void(int, juce::String, juce::String)> errorCallback;
|
||||||
juce::String fileName;
|
juce::String fileName;
|
||||||
std::vector<lua_State*> seenStates;
|
std::vector<lua_State*> seenStates;
|
||||||
};
|
};
|
Ładowanie…
Reference in New Issue