Use comptime for fully declarative LV2 and Custom commands #14
1 changed files with 0 additions and 134 deletions
134
src/runner.zig
134
src/runner.zig
|
@ -190,26 +190,6 @@ pub const Runner = struct {
|
||||||
_ = try proc.spawnAndWait();
|
_ = try proc.spawnAndWait();
|
||||||
}
|
}
|
||||||
|
|
||||||
fn highpassCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://invadarecords.com/plugins/lv2/filter/hpf/mono", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn delayCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/delayorama", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn vinylCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/vynil", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn revDelayCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/revdelay", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn noiseCmd(self: *Runner, pos: Position, map: *ParamMap) !void {
|
fn noiseCmd(self: *Runner, pos: Position, map: *ParamMap) !void {
|
||||||
var image = try self.getImage();
|
var image = try self.getImage();
|
||||||
try image.runCustomPlugin(custom.RandomNoise, pos, *ParamMap, map);
|
try image.runCustomPlugin(custom.RandomNoise, pos, *ParamMap, map);
|
||||||
|
@ -242,81 +222,6 @@ pub const Runner = struct {
|
||||||
try magick.runRotate(image, deg, c_bgfill);
|
try magick.runRotate(image, deg, c_bgfill);
|
||||||
}
|
}
|
||||||
|
|
||||||
fn gateCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://hippie.lt/lv2/gate", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn detuneCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://drobilla.net/plugins/mda/Detune", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn overdriveCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://drobilla.net/plugins/mda/Overdrive", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn degradeCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://drobilla.net/plugins/mda/Degrade", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn repsychoCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://drobilla.net/plugins/mda/RePsycho", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn talkboxCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://drobilla.net/plugins/mda/TalkBox", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn dynCompCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://gareus.org/oss/lv2/darc#mono", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn foverdriveCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/foverdrive", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn thruZeroCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://drobilla.net/plugins/mda/ThruZero", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn gverbCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/gverb", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn tapedelayCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/tapeDelay", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn moddelayCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://plugin.org.uk/swh-plugins/modDelay", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn multichorusCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://calf.sourceforge.net/plugins/MultiChorus", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn saturatorCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://calf.sourceforge.net/plugins/Saturator", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn vintagedelayCmd(self: *Runner, pos: Position, params: ParamList) !void {
|
|
||||||
var image = try self.getImage();
|
|
||||||
try image.runPlugin("http://calf.sourceforge.net/plugins/VintageDelay", pos, params);
|
|
||||||
}
|
|
||||||
|
|
||||||
fn executeLV2Command(self: *@This(), command: var) !void {
|
fn executeLV2Command(self: *@This(), command: var) !void {
|
||||||
const pos = plugin.Position{
|
const pos = plugin.Position{
|
||||||
.split = command.split,
|
.split = command.split,
|
||||||
|
@ -462,45 +367,6 @@ pub const Runner = struct {
|
||||||
try self.rotateCmd(deg, bgfill);
|
try self.rotateCmd(deg, bgfill);
|
||||||
},
|
},
|
||||||
|
|
||||||
.Gverb => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
try self.gverbCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
.Invert => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
try self.gverbCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
.TapeDelay => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
|
|
||||||
try self.tapedelayCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
.ModDelay => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
try cmd.appendParam(¶ms, "base");
|
|
||||||
try self.moddelayCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
.MultiChorus => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
|
|
||||||
try self.multichorusCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
.Saturator => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
|
|
||||||
try self.saturatorCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
.VintageDelay => {
|
|
||||||
const pos = try cmd.consumePosition();
|
|
||||||
try self.vintagedelayCmd(pos, params);
|
|
||||||
},
|
|
||||||
|
|
||||||
else => blk: {
|
else => blk: {
|
||||||
std.debug.warn("Unsupported command: {}\n", .{cmd.command});
|
std.debug.warn("Unsupported command: {}\n", .{cmd.command});
|
||||||
break :blk RunError.UnknownCommand;
|
break :blk RunError.UnknownCommand;
|
||||||
|
|
Loading…
Reference in a new issue