summaryrefslogtreecommitdiffstats
path: root/src/server/events/Delta.cpp
AgeCommit message (Collapse)AuthorFilesLines
2023-02-03Suppress/fix new warnings in clang-tidy 15David Robillard1-3/+3
2022-12-14Concatenate nested namespacesDavid Robillard1-4/+2
2022-12-14Use std::filesystem and std::make_uniqueDavid Robillard1-0/+1
2022-08-18Use consistent spacing for line commentsDavid Robillard1-4/+4
2022-08-18Fix overly long line commentsDavid Robillard1-1/+1
2022-08-18Avoid "else" after "return", "break", and "continue"David Robillard1-3/+6
2022-08-18Use default member initializationDavid Robillard1-16/+0
2022-08-18Use auto when declaring iteratorsDavid Robillard1-1/+1
2022-08-18Clean up includesDavid Robillard1-1/+0
2021-06-04Switch to C++14 and fix build with GCC 10David Robillard1-6/+5
GCC was having problems with this make_unique overload, but I don't care about C++11 compatibility at this point anyway, so it's easiest to just remove it.
2021-01-02Update for latest raulDavid Robillard1-1/+1
2020-12-15Clean up includes in core and serverDavid Robillard1-0/+4
2020-11-11Fix potential state memory leaksDavid Robillard1-5/+7
2020-08-03Clean up includesDavid Robillard1-0/+11
As directed by include-what-you-use. Unfortunately, it is still confused by quite a few things, but this gets a lot closer to a clean report, and at least makes the output more tolerable to manually check.
2020-08-02Remove std::shared_ptr aliasDavid Robillard1-12/+14
2020-08-02Fix implicit-fallthrough warningsDavid Robillard1-0/+1
2020-08-02Fix shadow warningsDavid Robillard1-5/+4
2020-08-02Use consistent naming for context parametersDavid Robillard1-10/+10
2020-08-01Use modern castsDavid Robillard1-1/+1
2019-12-08Cleanup: Fix potential null dereferencesDavid Robillard1-7/+12
2019-12-08Cleanup: Remove multiple variable declarations on a single lineDavid Robillard1-1/+5
2019-12-08Cleanup: Merge branches with identical bodiesDavid Robillard1-3/+2
2019-12-08Cleanup: Use "default" for default constructors and destructorsDavid Robillard1-4/+0
2019-12-08Cleanup: Use "auto" to avoid repeating type namesDavid Robillard1-12/+12
2019-12-08Cleanup: Avoid parameter copying overheadDavid Robillard1-9/+9
2019-03-09Clean up includes and forward declarationsDavid Robillard1-9/+17
2019-03-09Localise dependency on boost::format and improve logging APIDavid Robillard1-2/+2
2019-03-09Use smart pointers over manual memory managementDavid Robillard1-22/+14
2019-03-08Pass World everywhere by referenceDavid Robillard1-7/+7
2018-09-23Use lowercase namespace namesDavid Robillard1-15/+15
2018-01-21Add FilePath class and remove use of glib path utilitiesDavid Robillard1-7/+7
2018-01-21Add URI class and remove use of Raul::URIDavid Robillard1-12/+12
2018-01-17Clean up Engine component memory management and trim include treeDavid Robillard1-2/+2
2017-12-25Always use bracesDavid Robillard1-1/+2
2017-12-25Use nullptrDavid Robillard1-18/+18
2017-12-16Make events take the corresponding message directlyDavid Robillard1-23/+62
2017-12-16Adjust indices when ports are deletedDavid Robillard1-0/+8
2017-12-16Clean up delta key comparisonDavid Robillard1-2/+2
2017-12-16Make CompiledGraph::compile a free functionDavid Robillard1-2/+1
2017-03-20Fix round-trip preservation of property contextsDavid Robillard1-7/+9
2017-02-15Move Properties out of ResourceDavid Robillard1-5/+3
2017-02-15Move static path stuff to its own headerDavid Robillard1-5/+5
2017-02-12Use smart pointers to handle real-time memory disposalDavid Robillard1-7/+5
2017-02-12Fix atomic event executionDavid Robillard1-2/+7
2017-01-18Fix invalid cross-thread use of mutexDavid Robillard1-17/+12
Instead of abusing store mutex for this purpose, extend blocking mechanism of the PreProcessor (designed for atomic bundle execution) to support execution of individual atomic events which must be executed before the next event can be pre-processed.
2016-12-14Fix real-time safety of control bindingsDavid Robillard1-23/+31
2016-10-14Fix potential store deadlockDavid Robillard1-1/+1
2016-10-14Fix sequence ports with valuesDavid Robillard1-2/+3
2016-10-13Clean up protocol documentationDavid Robillard1-28/+0
2016-10-02Defer graph compilation in atomic bundlesDavid Robillard1-5/+8
This avoids situations like compiling a graph hundreds of times when it is loaded because it has hundreds of nodes and each event triggers a re-compile. This speeds things up dramatically, but exacerbates the theoretical problem of there not being enough time in a cycle to execute a bundle. As far as I can tell, the execute phase of events is very fast, so hundreds or thousands can easily run in a tiny fraction of the process cycle, but this still needs resolution to be truly hard real-time. What probably needs to happen is that all context and state used to process is moved to CompiledGraph and nodes do not access their own fields at all, but have some references into the CompiledGraph. This way, a compiled graph is separate from its "source code", and an old one could continue to be run while a new one is beng applied across several cycles.