145 Commits (35f3bdfc66b762b56f9af534dc00b199693e49cb)

Author SHA1 Message Date
  Andrew Belt 2966cd57f7 Move asset::autosavePath to Patch. Add Module::createPatchStorageDir() and remove asset::module(). 3 years ago
  Andrew Belt 1b76dd5f07 Change midi::Message::toString() to const. Clean up midi code. 3 years ago
  Andrew Belt 5043d0e10a Use Engine frame instead of seconds timestamp for midi::Message. 3 years ago
  Andrew Belt 357bd847bf Rename PRIVATE macro to INTERNAL. 3 years ago
  Andrew Belt 5f8f9b8e35 Change `bypass` variable name to `bypassed` when appropriate. 3 years ago
  Andrew Belt 317b9125b6 Make ReadWriteLock non-recursive and add *_NoLock() methods to Engine as needed. 3 years ago
  Andrew Belt 2f5ce16ce8 No longer require that a primary Module belongs to the Engine. 3 years ago
  Andrew Belt 9f04e56106 AudioInterface: Set primary module after instead of before adding to the Engine (WIP). 3 years ago
  Andrew Belt 90ada5c532 Add Engine::setSuggestedSampleRate(). Make ReadWriteLock support recursive writes. 3 years ago
  Andrew Belt 4c7c5b1694 Add auto engine sample rate setting. 3 years ago
  Andrew Belt f0753792b8 Rename "step" terminology of Engine to "block". Tweak ModuleWidget meter appearance. 3 years ago
  Andrew Belt 7003adffe2 Move module stepping code from Engine to Module. Change meter to a time plot. 3 years ago
  Andrew Belt 7efd063392 Change timestamps from int64_t to double, and define epoch as when `system::init()` is called. 3 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 cb65043538 Add virtual ParamQuantity::toJson() and fromJson() so plugins can override JSON serialization behavior of params. 4 years ago
  Andrew Belt e80beefba4 Add AudioButton and MidiButton and Component Library subclasses with graphics. 4 years ago
  Andrew Belt 5e4124f66a Rename bypassed to bypass everywhere. 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 6285f3f222 Add documentation to `engine::Module::ProcessArgs` 4 years ago
  Andrew Belt 624dcec8fd Do not force Port alignment to 32 bytes. 4 years ago
  Andrew Belt abde7d983f Add Engine::getFrameTime() and getStepDuration(). 4 years ago
  Andrew Belt 64cc9dddb0 Add Module::configButton() for configuring momentary switches (which I'll now call buttons). 4 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. 4 years ago
  Andrew Belt b8d47b5378 Add Engine::getNumModules() and getModuleIds() methods. 4 years ago
  Andrew Belt 05427d938b Overhaul threading model for Engine using a shared mutex based design. 4 years ago
  Andrew Belt 537b64d011 Remove engine pausing as it no longer makes sense with the new "external stepping" engine architecture. 4 years ago
  Andrew Belt 97fcc04630 Fix documentation formulas. 4 years ago
  Andrew Belt 97c03ea464 Improve documentation for Module. 4 years ago
  Andrew Belt 79ee967210 Fix documentation of Module. 4 years ago
  Andrew Belt 8ace079ee5 Fix randomization of snapped params. 4 years ago
  Andrew Belt d5c7144e32 Add Module::paramsToJson and paramsFromJson. 4 years ago
  Andrew Belt 92f777d184 Add configSwitch(), which is a quicker way to configure parameters with SwitchQuantitys. 4 years ago
  Andrew Belt 87935d7e6f Add SwitchQuantity. Add return value to config*() methods in Module. 4 years ago
  Andrew Belt 120aafe6d3 Change order of includes to C++ standard headers, library headers, and local project headers. 4 years ago
  Andrew Belt 82e4bea015 Make Module::toJson() virtual. 4 years ago
  Andrew Belt 306e454f0c Use higher resolution clock for system::getNanoseconds() on Windows. 4 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. 4 years ago
  Andrew Belt d11223d0e0 Call ParamQuantity::getDefaultValue() in configParam() to set initial value of param. 4 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 12fcaa4b08 Move moduleFromJson from engine to plugin namespace. Move Engine mutex lock at the top of Engine::step(). 5 years ago
  Andrew Belt 804dc4daf2 Interpret blank ParamQuantity/PortInfo name as "#id". 5 years ago
  Andrew Belt adc3f681c3 Rearrange text in PortTooltip 5 years ago
  Andrew Belt 7b61f3599d Add configInpug/Output to helper.py. 5 years ago
  Andrew Belt ae19e33774 Make PortInfo a virtual class. 5 years ago
  Andrew Belt ef89a96c87 Change ParamQuantity/PortInfo label to name. 5 years ago
  Andrew Belt 0dbce1683d Work on PortTooltips. 5 years ago