f887faea79 
								
							
								 
							
						 
						
							
							
								
								Fix module and cable ID variables that were `int` instead of `int64_t`. Add `Engine::getNumCables()` and `Engine::getCableIds()`.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								50747839d4 
								
							
								 
							
						 
						
							
							
								
								Use randomly-generated 53-bit IDs for Module and Cable.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								6285f3f222 
								
							
								 
							
						 
						
							
							
								
								Add documentation to `engine::Module::ProcessArgs`  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								624dcec8fd 
								
							
								 
							
						 
						
							
							
								
								Do not force Port alignment to 32 bytes.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								abde7d983f 
								
							
								 
							
						 
						
							
							
								
								Add Engine::getFrameTime() and getStepDuration().  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								64cc9dddb0 
								
							
								 
							
						 
						
							
							
								
								Add Module::configButton() for configuring momentary switches (which I'll now call buttons).  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								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  
				
					
						
							
							
								 
						
							
							
							
								
							
								b8d47b5378 
								
							
								 
							
						 
						
							
							
								
								Add Engine::getNumModules() and getModuleIds() methods.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								05427d938b 
								
							
								 
							
						 
						
							
							
								
								Overhaul threading model for Engine using a shared mutex based design.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								537b64d011 
								
							
								 
							
						 
						
							
							
								
								Remove engine pausing as it no longer makes sense with the new "external stepping" engine architecture.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								97fcc04630 
								
							
								 
							
						 
						
							
							
								
								Fix documentation formulas.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								97c03ea464 
								
							
								 
							
						 
						
							
							
								
								Improve documentation for Module.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								79ee967210 
								
							
								 
							
						 
						
							
							
								
								Fix documentation of Module.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								8ace079ee5 
								
							
								 
							
						 
						
							
							
								
								Fix randomization of snapped params.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								d5c7144e32 
								
							
								 
							
						 
						
							
							
								
								Add Module::paramsToJson and paramsFromJson.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								92f777d184 
								
							
								 
							
						 
						
							
							
								
								Add configSwitch(), which is a quicker way to configure parameters with SwitchQuantitys.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								87935d7e6f 
								
							
								 
							
						 
						
							
							
								
								Add SwitchQuantity. Add return value to config*() methods in Module.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								120aafe6d3 
								
							
								 
							
						 
						
							
							
								
								Change order of includes to C++ standard headers, library headers, and local project headers.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								82e4bea015 
								
							
								 
							
						 
						
							
							
								
								Make Module::toJson() virtual.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								306e454f0c 
								
							
								 
							
						 
						
							
							
								
								Use higher resolution clock for system::getNanoseconds() on Windows.  
							
							Ban `long` from codebase. Use int64_t instead. 
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								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  
				
					
						
							
							
								 
						
							
							
							
								
							
								d11223d0e0 
								
							
								 
							
						 
						
							
							
								
								Call ParamQuantity::getDefaultValue() in configParam() to set initial value of param.  
							
							
								
							
							
						 
						5 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4a5027ef1c 
								
							
								 
							
						 
						
							
							
								
								Add internal struct to Module.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								c33dc3c842 
								
							
								 
							
						 
						
							
							
								
								Rename module disabling to bypassing.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								cc711b6d2d 
								
							
								 
							
						 
						
							
							
								
								Replace module disabling with bypassing using BypassRoute and Module::configBypass().  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								12fcaa4b08 
								
							
								 
							
						 
						
							
							
								
								Move moduleFromJson from engine to plugin namespace. Move Engine mutex lock at the top of Engine::step().  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								804dc4daf2 
								
							
								 
							
						 
						
							
							
								
								Interpret blank ParamQuantity/PortInfo name as "#id".  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								adc3f681c3 
								
							
								 
							
						 
						
							
							
								
								Rearrange text in PortTooltip  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								7b61f3599d 
								
							
								 
							
						 
						
							
							
								
								Add configInpug/Output to helper.py.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								ae19e33774 
								
							
								 
							
						 
						
							
							
								
								Make PortInfo a virtual class.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								ef89a96c87 
								
							
								 
							
						 
						
							
							
								
								Change ParamQuantity/PortInfo label to name.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								0dbce1683d 
								
							
								 
							
						 
						
							
							
								
								Work on PortTooltips.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								99b17727ab 
								
							
								 
							
						 
						
							
							
								
								WIP:  
							
							- Make ParamWidget hold module/paramId instead of paramQuantity.
- Add configInput/configOutput.
- Add engine::PortInfo.
- Avoid calling particular events when cursor is locked.
- Add PortTooltip. 
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								4936df2c0b 
								
							
								 
							
						 
						
							
							
								
								Move ParamWidget/Knob/Switch properties to ParamQuantity. Fix static linking on Linux.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								e4b6056ded 
								
							
								 
							
						 
						
							
							
								
								Massive WIP v2 overhaul:  
							
							- Add Engine::fromJson which can be called without the GUI at all.
- Make RackWidget::fromJson attach itself to existing Engine state. However, once attached, they own their Engine objects (Module, Cable).
- Remove Engine thread. Now Engine must be stepped by other threads, such as the audio thread. This is fantastic because there is no longer a mutex lock every audio buffer.
	- Add concept of the "primary module", which is allowed to call Engine::step().
- Add many Module events. 
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								dca30e2b53 
								
							
								 
							
						 
						
							
							
								
								Auto-format code with astyle.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								b4bd09a2eb 
								
							
								 
							
						 
						
							
							
								
								Add more documentation to Port.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								9e830a61e6 
								
							
								 
							
						 
						
							
							
								
								Add SIMD methods to Port.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								1252437344 
								
							
								 
							
						 
						
							
							
								
								Add Engine::getFrame().  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								fe18110e22 
								
							
								 
							
						 
						
							
							
								
								Added Port::active alias for Port::channels. Set default Port channels to 0.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								08a4d73457 
								
							
								 
							
						 
						
							
							
								
								Add text and color to ParamHandle.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								41552e79f2 
								
							
								 
							
						 
						
							
							
								
								Restructure ParamHandle Engine internals.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								31ee9bdfc7 
								
							
								 
							
						 
						
							
							
								
								Add documentation to Port::setChannels().  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								cb3f136d51 
								
							
								 
							
						 
						
							
							
								
								Encode Port::active as channels=0. Change behavior of Port::setChannels().  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								436615f361 
								
							
								 
							
						 
						
							
							
								
								Simplify Light::setBrightness/Smooth.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								02ef6641f4 
								
							
								 
							
						 
						
							
							
								
								Add Port::getVoltageSum. Rename get/setVoltages to read/writeVoltages. Add getVoltages.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								696939069d 
								
							
								 
							
						 
						
							
							
								
								Use <> instead of "" for include directive.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								871617ad6c 
								
							
								 
							
						 
						
							
							
								
								Fix docstrings. Add createParamCentered to rack0.hpp.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								54544bbe93 
								
							
								 
							
						 
						
							
							
								
								Use Module::Expander struct for accessing expander messages.  
							
							
								
							
							
						 
						6 years ago  
				
					
						
							
							
								 
						
							
							
							
								
							
								cdf7a2bbfa 
								
							
								 
							
						 
						
							
							
								
								Fix serialization for unbounded Params.  
							
							
								
							
							
						 
						6 years ago