aboutsummaryrefslogtreecommitdiffstats
path: root/src/WrapComp.cpp
diff options
context:
space:
mode:
authorChristoph Scholtes <cschol2112@gmail.com>2018-02-22 00:47:20 +0000
committers-ol <s-ol@users.noreply.github.com>2018-02-22 12:27:48 +0000
commit3fd57784f3e0cd4dba0acdba45900d07694eabce (patch)
tree5916b6e5b6d4400419abe0b79ef34203a8fbca1b /src/WrapComp.cpp
parentsmaller pannels and VC modulo gain (diff)
downloadvcvmods-3fd57784f3e0cd4dba0acdba45900d07694eabce.tar.gz
vcvmods-3fd57784f3e0cd4dba0acdba45900d07694eabce.zip
Update to Rack API v0.6.
Diffstat (limited to 'src/WrapComp.cpp')
-rw-r--r--src/WrapComp.cpp40
1 files changed, 22 insertions, 18 deletions
diff --git a/src/WrapComp.cpp b/src/WrapComp.cpp
index 3da185d..f7eece1 100644
--- a/src/WrapComp.cpp
+++ b/src/WrapComp.cpp
@@ -31,7 +31,7 @@ struct WrapComp : Module {
void WrapComp::step() {
float input = inputs[SIGNAL_INPUT].value + inputs[OFFSET_INPUT].normalize(0.0) + params[OFFSET_PARAM].value;
- float width = clampf((inputs[RANGE_INPUT].normalize(0.0) + params[RANGE_PARAM].value) / 2.0, 0.0, 5.0);
+ float width = clamp((inputs[RANGE_INPUT].normalize(0.0f) + params[RANGE_PARAM].value) / 2.0f, 0.0f, 5.0f);
while (input > 5.0)
input -= 5.0;
@@ -46,15 +46,17 @@ void WrapComp::step() {
}
-WrapCompWidget::WrapCompWidget() {
- WrapComp *module = new WrapComp();
- setModule(module);
+struct WrapCompWidget : ModuleWidget {
+ WrapCompWidget(WrapComp *module);
+};
+
+WrapCompWidget::WrapCompWidget(WrapComp *module) : ModuleWidget(module) {
setPanel(SVG::load(assetPlugin(plugin, "res/WrapComp.svg")));
- addChild(createScrew<ScrewSilver>(Vec(RACK_GRID_WIDTH, 0)));
- addChild(createScrew<ScrewSilver>(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0)));
- addChild(createScrew<ScrewSilver>(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH)));
- addChild(createScrew<ScrewSilver>(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH)));
+ addChild(Widget::create<ScrewSilver>(Vec(RACK_GRID_WIDTH, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 2 * RACK_GRID_WIDTH, 0)));
+ addChild(Widget::create<ScrewSilver>(Vec(RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH)));
+ addChild(Widget::create<ScrewSilver>(Vec(box.size.x - 2 * RACK_GRID_WIDTH, RACK_GRID_HEIGHT - RACK_GRID_WIDTH)));
PJ301MPort p;
RoundSmallBlackKnob k;
@@ -63,19 +65,21 @@ WrapCompWidget::WrapCompWidget() {
Vec kcenter = Vec(box.size.x, 0).minus(k.box.size).div(2);
Vec lcenter = Vec(box.size.x, 0).minus(l.box.size).div(2);
- addInput(createInput<PJ301MPort>(center.plus(Vec(0, 70)), module, WrapComp::SIGNAL_INPUT));
+ addInput(Port::create<PJ301MPort>(center.plus(Vec(0, 70)), Port::INPUT, module, WrapComp::SIGNAL_INPUT));
- addParam(createParam<RoundSmallBlackKnob>(kcenter.plus(Vec(25, 135)), module, WrapComp::OFFSET_PARAM, -5.0, 5.0, 0.0));
- addInput(createInput<PJ301MPort>(center.plus(Vec(-25, 135)), module, WrapComp::OFFSET_INPUT));
+ addParam(ParamWidget::create<RoundSmallBlackKnob>(kcenter.plus(Vec(25, 135)), module, WrapComp::OFFSET_PARAM, -5.0, 5.0, 0.0));
+ addInput(Port::create<PJ301MPort>(center.plus(Vec(-25, 135)), Port::INPUT, module, WrapComp::OFFSET_INPUT));
- addParam(createParam<RoundSmallBlackKnob>(kcenter.plus(Vec(25, 210)), module, WrapComp::RANGE_PARAM, -5.0, 5.0, 0.0));
- addInput(createInput<PJ301MPort>(center.plus(Vec(-25, 210)), module, WrapComp::RANGE_INPUT));
+ addParam(ParamWidget::create<RoundSmallBlackKnob>(kcenter.plus(Vec(25, 210)), module, WrapComp::RANGE_PARAM, -5.0, 5.0, 0.0));
+ addInput(Port::create<PJ301MPort>(center.plus(Vec(-25, 210)), Port::INPUT, module, WrapComp::RANGE_INPUT));
- addChild(createLight<MediumLight<RedLight>>(lcenter.plus(Vec(-15, 255)), module, WrapComp::A_LIGHT));
- addChild(createLight<MediumLight<RedLight>>(lcenter.plus(Vec( 15, 255)), module, WrapComp::B_LIGHT));
+ addChild(ModuleLightWidget::create<MediumLight<RedLight>>(lcenter.plus(Vec(-15, 255)), module, WrapComp::A_LIGHT));
+ addChild(ModuleLightWidget::create<MediumLight<RedLight>>(lcenter.plus(Vec( 15, 255)), module, WrapComp::B_LIGHT));
- addParam(createParam<RoundSmallBlackKnob>(kcenter.plus(Vec(-25, 280)), module, WrapComp::A_OUT_PARAM, -8.0, 8.0, 1.0));
- addParam(createParam<RoundSmallBlackKnob>(kcenter.plus(Vec( 25, 280)), module, WrapComp::B_OUT_PARAM, -8.0, 8.0, 0.0));
+ addParam(ParamWidget::create<RoundSmallBlackKnob>(kcenter.plus(Vec(-25, 280)), module, WrapComp::A_OUT_PARAM, -8.0, 8.0, 1.0));
+ addParam(ParamWidget::create<RoundSmallBlackKnob>(kcenter.plus(Vec( 25, 280)), module, WrapComp::B_OUT_PARAM, -8.0, 8.0, 0.0));
- addOutput(createOutput<PJ301MPort>(center.plus(Vec(0, 315)), module, WrapComp::MAIN_OUTPUT));
+ addOutput(Port::create<PJ301MPort>(center.plus(Vec(0, 315)), Port::OUTPUT, module, WrapComp::MAIN_OUTPUT));
}
+
+Model *modelWrapComp = Model::create<WrapComp, WrapCompWidget>("s-ol", "WrapComp", "Wrapping Comparator", LOGIC_TAG);