169 Commits (39f5a2f71007cdcbb9a942a09c13dee961f7226d)

Author SHA1 Message Date
  Andrew Belt 39f5a2f710 Reword Trigger -> Dispatch in comments. 3 years ago
  Andrew Belt 0c9598ba8f Add SetPrimaryEvent and UnsetPrimaryEvent to Module. 3 years ago
  Andrew Belt 6e8cb42e7b Serialize primaryModule in Engine instead of relying on modules to do it themselves. 3 years ago
  Andrew Belt 661fd3863d Add Module Save event. 4 years ago
  Andrew Belt ea431882a7 Add Engine meter to menu bar. 4 years ago
  Andrew Belt 46fff99244 Add Module::getPatchStorageDir(). 4 years ago
  Andrew Belt 2966cd57f7 Move asset::autosavePath to Patch. Add Module::createPatchStorageDir() and remove asset::module(). 4 years ago
  Andrew Belt 5043d0e10a Use Engine frame instead of seconds timestamp for midi::Message. 4 years ago
  Andrew Belt c4cc1c4368 Clean up fromJson Engine and RackWidget methods. Fix v0.6 patch loading. 4 years ago
  Andrew Belt f5bad0e20f Add hard-coded plugin/model slug fallbacks/aliases. Catch Exceptions from Module::fromJson(). 4 years ago
  Andrew Belt 5f8f9b8e35 Change `bypass` variable name to `bypassed` when appropriate. 4 years ago
  Andrew Belt 317b9125b6 Make ReadWriteLock non-recursive and add *_NoLock() methods to Engine as needed. 4 years ago
  Andrew Belt 2f5ce16ce8 No longer require that a primary Module belongs to the Engine. 4 years ago
  Andrew Belt 9f04e56106 AudioInterface: Set primary module after instead of before adding to the Engine (WIP). 4 years ago
  Andrew Belt 4e44157d27 Don't write-lock Engine::fromJson() because it only needs it when adding modules and cables, which already has a write-lock. 4 years ago
  Andrew Belt 90ada5c532 Add Engine::setSuggestedSampleRate(). Make ReadWriteLock support recursive writes. 4 years ago
  Andrew Belt 4c7c5b1694 Add auto engine sample rate setting. 4 years ago
  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