152 Commits (e9dee76a41dbb8a829d418301b69bf5f15d55d40)

Author SHA1 Message Date
  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. 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