65 Commits (cb3f136d51d42409113ea77a900f5068702337e4)

Author SHA1 Message Date
  Andrew Belt cb3f136d51 Encode Port::active as channels=0. Change behavior of Port::setChannels(). 6 years ago
  Andrew Belt 696939069d Use <> instead of "" for include directive. 6 years ago
  Andrew Belt 54544bbe93 Use Module::Expander struct for accessing expander messages. 6 years ago
  Andrew Belt 7bd98943db Add left/rightMessageFlipRequested to Module. 6 years ago
  Andrew Belt 09c85276d6 Use linear scaling for Light value. 6 years ago
  Andrew Belt 8d63d198ea Make random state thread-local. 6 years ago
  Andrew Belt e693d9beef Fix submodule broken by previous commit. 6 years ago
  Andrew Belt 269f9aca9b Only use Engine::yieldWorkers() when we know it's needed in Core Audio. Use _mm_pause() in spinlocks. 6 years ago
  Andrew Belt 30c5b24ec5 Add Engine::yieldWorker() which turns worker spinlocks into mutex locks. Fix race condition in EngineWorker::run() when changing number of threads. 6 years ago
  Andrew Belt de95175596 Since dragging a ModuleWidget can move all modules, push a ComplexAction of ModuleMove actions instead of a single action. 6 years ago
  Andrew Belt ce2936c0c8 Restart engine workers when setting real-time priority. 6 years ago
  Andrew Belt a0e738bc07 Write to `settings::sampleRate` and `threadCount` instead of calling Engine methods. 6 years ago
  Andrew Belt 893b45277a Disable engine real time thread by default. 6 years ago
  Andrew Belt 357952c3d3 Move all metadata from Param to ParamQuantity. 6 years ago
  Andrew Belt 445686b89d Allow Param limits with min > max 6 years ago
  Andrew Belt 2446756c54 Make settings a namespace instead of a global class. 6 years ago
  Andrew Belt 7e2d4a6bf9 Use larger canvas for RackScrollWidget. 6 years ago
  Andrew Belt 6fe14dca06 Move reset and randomize from Param to ParamWidget. 6 years ago
  Andrew Belt 9943d7b13a Fix mistakes in assignment of adjacent module IDs. Swap message buffers at the end of each Engine step. 6 years ago
  Andrew Belt e9aacbed93 Add adjacent module IDs and pointers to Module. 6 years ago
  Andrew Belt a509fab1c1 Move and rename widget::DrawContext to widget::Widget::DrawArgs. Rename Module::ProcessContext to Module::ProcessArgs. 6 years ago
  Andrew Belt 9c275dd20d Add Module::process and Module::ProcessContext. 6 years ago
  Andrew Belt 27f6a546aa Add dsp::Counter. Rename dsp::VUMeter to VuMeter. Add Light::setSmoothBrightness(), deprecate setBrightnessSmooth(). 6 years ago
  Andrew Belt 13dadef857 ModuleBrowser WIP. Add Widget::show/hide(). 6 years ago
  Andrew Belt e155450ccb Use on-demand module assignment for engine worker threads instead of fixed strides. 6 years ago
  Andrew Belt 578dd8aed2 Add scrolling to MIDI-Map with up to 128 mappings. Add onAdd and onRemove events. Fix minor ScrollWidget behavior. 6 years ago
  Andrew Belt d699c2e07d Don't overwrite param handles when duplicating MIDI-Map. 6 years ago
  Andrew Belt 83ad8523c2 Add unmap context menu item to ParamWidget. Add indicator on mapped ParamWidgets. 6 years ago
  Andrew Belt 66aa746476 Replace ModuleHandle with ParamHandle. Move touchedParam from Engine to RackWidget. Fix param mapping bugs in MIDI-Map. 6 years ago
  Andrew Belt 7458b5d709 Add param touch to engine. Add param learning to MIDI-Map. 6 years ago
  Andrew Belt d7b72c5b0f Rewrite thread API. Add ParamMap::to/fromJson(). 6 years ago
  Andrew Belt bfcae28495 Update MIDI-Map panel. Add Engine::getModule(). 6 years ago
  Andrew Belt da4110367a Move DSP window functions to window.hpp. Use 0-indexed module/cable IDs instead of 1-indexed. Unserialize module/cable IDs as they are in the patch file. 6 years ago
  Andrew Belt e3c648a7f5 Set realtime thread priority for engine and engine worker threads. 6 years ago
  Andrew Belt 62214d106a Convert settings namespace into class 6 years ago
  Andrew Belt 59630bf52e Remove unnecessary resetting of output channels in engine module step function. 6 years ago
  Andrew Belt 510f7b2179 Change behavior of Port::getPolyVoltage(). Change port behavior when module is bypassed. 6 years ago
  Andrew Belt ddebd2d8d2 Switch to SpinBarrier for engineBarrier 6 years ago
  Andrew Belt 2b98dfc6f9 Write custom threading model in Engine. Remove OpenMP dep. Fix bugs in string::basename/extension. 6 years ago
  Andrew Belt 64602576b0 Create `engine::` namespace 6 years ago
  Andrew Belt 278c9dd387 Disable OpenMP on Mac 6 years ago
  Andrew Belt d737504011 Add intro message when the rack is empty. Round zoom level to nearest percent. 6 years ago
  Andrew Belt c8fbc1a076 Set plug lights to 0 when disconnected 6 years ago
  Andrew Belt 350ff7c3e7 Use guided scheduling mode in openmp for. Seems to be 5% better in my tests. 6 years ago
  Andrew Belt d35d91de05 Make engine multithreaded with OpenMP 6 years ago
  Andrew Belt 0a22c3e378 Use engine mutex for bypassing module 6 years ago
  Andrew Belt 6d86a8280c Add convenience methods to Port. Draw blue plug lights for polyphonic ports. 6 years ago
  Andrew Belt d35de0b6f1 Merge Port::channels and Port::active concept. Add third Light to plug for polyphony. 6 years ago
  Andrew Belt c6f8153d74 Use various other history actions when interacting with the rack 6 years ago
  Andrew Belt 2862703f4c Add CV-MIDI to Core. Move arrow key scrolling from ScrollWidget to RackWidget. 6 years ago