Andrew Belt
|
f0753792b8
|
Rename "step" terminology of Engine to "block". Tweak ModuleWidget meter appearance.
|
4 years ago |
Andrew Belt
|
7003adffe2
|
Move module stepping code from Engine to Module. Change meter to a time plot.
|
4 years ago |
Andrew Belt
|
2a1bbf4ae3
|
Rename system::getRuntime() to getTime().
|
4 years ago |
Andrew Belt
|
790e1053cc
|
Rename system::getTime() to getRuntime(). Add system::getUnixTime().
|
4 years ago |
Andrew Belt
|
b986ff5882
|
Replace Module Browser sidebar with header. Add multiple tag selection (WIP), zoom (WIP), and sorting options (WIP).
|
4 years ago |
Andrew Belt
|
11721cab00
|
Add WIP Engine::step() timer. Fix module timer.
|
4 years ago |
Andrew Belt
|
7efd063392
|
Change timestamps from int64_t to double, and define epoch as when `system::init()` is called.
|
4 years ago |
Andrew Belt
|
6e35afb053
|
Add engine::LightInfo and Module::configLight() helper for configuring the LightInfo. Add LightTooltip for LightWidgets.
|
4 years ago |
Andrew Belt
|
36f062e33d
|
Fix random module/cable ID generation on Windows
|
4 years ago |
Andrew Belt
|
cb65043538
|
Add virtual ParamQuantity::toJson() and fromJson() so plugins can override JSON serialization behavior of params.
|
4 years ago |
Andrew Belt
|
5e4124f66a
|
Rename bypassed to bypass everywhere.
|
4 years ago |
Andrew Belt
|
f3c8262183
|
Make Module always deserialize "id", "leftModuleId", and "rightModuleId". Due to this, make pasting and cloning modules delete these properties from the JSON before `fromJson()` is called.
|
4 years ago |
Andrew Belt
|
06c6590b51
|
Implement Module::ExpanderChangeEvent event trigger.
|
4 years ago |
Andrew Belt
|
f887faea79
|
Fix module and cable ID variables that were `int` instead of `int64_t`. Add `Engine::getNumCables()` and `Engine::getCableIds()`.
|
4 years ago |
Andrew Belt
|
50747839d4
|
Use randomly-generated 53-bit IDs for Module and Cable.
|
4 years ago |
Andrew Belt
|
8d908a0a55
|
Add system::join(). Add asset::module().
|
4 years ago |
Andrew Belt
|
80d08ec15c
|
Omit duplicate tags in Model.
|
5 years ago |
Andrew Belt
|
7103404c5a
|
CV-MIDI: Add back rate limiting to pitch wheel, mod wheel, velocity, and pan. CV-CC and CV-Gate: Add timestamps to generates MIDI messages.
|
5 years ago |
Andrew Belt
|
7aa8f896a3
|
Remove rate limiting from CV-MIDI, WIP.
|
5 years ago |
Andrew Belt
|
abde7d983f
|
Add Engine::getFrameTime() and getStepDuration().
|
5 years ago |
Andrew Belt
|
6f7f0cc7b3
|
Cache modules and cables in engine by ID. Add lock to Engine::reset/randomize/bypassModule(). Remove lock from Engine::get/setParam and get/setSmoothParam.
|
5 years ago |
Andrew Belt
|
df0f44cf3e
|
Don't allow setting the Engine's primary module if it is not added to the Engine.
|
5 years ago |
Andrew Belt
|
b8d47b5378
|
Add Engine::getNumModules() and getModuleIds() methods.
|
5 years ago |
Andrew Belt
|
05427d938b
|
Overhaul threading model for Engine using a shared mutex based design.
|
5 years ago |
Andrew Belt
|
537b64d011
|
Remove engine pausing as it no longer makes sense with the new "external stepping" engine architecture.
|
5 years ago |
Andrew Belt
|
9086c1aeed
|
Hide ParamResetItem if param is unbounded.
|
5 years ago |
Andrew Belt
|
4e766a7eca
|
Don't randomize ParamQuantity if unbounded.
|
5 years ago |
Andrew Belt
|
8ace079ee5
|
Fix randomization of snapped params.
|
5 years ago |
Andrew Belt
|
d5c7144e32
|
Add Module::paramsToJson and paramsFromJson.
|
5 years ago |
Andrew Belt
|
f819bd4255
|
Use menu items for selecting SwitchQuantity params.
|
5 years ago |
Andrew Belt
|
87935d7e6f
|
Add SwitchQuantity. Add return value to config*() methods in Module.
|
5 years ago |
Andrew Belt
|
120aafe6d3
|
Change order of includes to C++ standard headers, library headers, and local project headers.
|
5 years ago |
Andrew Belt
|
3f83066966
|
Make global context a thread_local variable. Add contextSet().
|
5 years ago |
Andrew Belt
|
ca9231e1b3
|
Rename App to Context and app.hpp to context.hpp. The APP macro is still valid.
|
5 years ago |
Andrew Belt
|
306e454f0c
|
Use higher resolution clock for system::getNanoseconds() on Windows.
Ban `long` from codebase. Use int64_t instead.
|
5 years ago |
Andrew Belt
|
d0098ae7cc
|
Allow left button to scroll ScrollWidget, so that the rack and other scroll containers can be scrolled with a touch screen.
|
5 years ago |
Andrew Belt
|
60d2283010
|
Add timestamp to MIDI message. Make MIDI-* modules wait until a message is `stepFrames` frames old until processing it, improving MIDI stability. Add Engine::getStepFrame, getStepTime, and getStepFrames.
|
5 years ago |
Andrew Belt
|
5a45c26da6
|
Add system::getNanoseconds(). Use it instead of std::chrono.
|
5 years ago |
Andrew Belt
|
538f5589c2
|
Make headless mode work somewhat.
|
5 years ago |
Andrew Belt
|
70d527d99a
|
Test audio. Fix audio deadlock in Engine::fromJson().
|
5 years ago |
Andrew Belt
|
4a5027ef1c
|
Add internal struct to Module.
|
5 years ago |
Andrew Belt
|
c33dc3c842
|
Rename module disabling to bypassing.
|
5 years ago |
Andrew Belt
|
cc711b6d2d
|
Replace module disabling with bypassing using BypassRoute and Module::configBypass().
|
5 years ago |
Andrew Belt
|
ba820dd802
|
Add infinity and NaN protection to Cable_step.
|
5 years ago |
Andrew Belt
|
12fcaa4b08
|
Move moduleFromJson from engine to plugin namespace. Move Engine mutex lock at the top of Engine::step().
|
5 years ago |
Andrew Belt
|
61f6d8164d
|
Add and test secondary module audio interface flushing.
|
5 years ago |
Andrew Belt
|
032c321fd3
|
Port change from v1 26bda06eb7
|
5 years ago |
Andrew Belt
|
804dc4daf2
|
Interpret blank ParamQuantity/PortInfo name as "#id".
|
5 years ago |
Andrew Belt
|
ef89a96c87
|
Change ParamQuantity/PortInfo label to name.
|
5 years ago |
Andrew Belt
|
6907d53a25
|
Remove real-time menu item and setting.
|
5 years ago |