summaryrefslogtreecommitdiffhomepage
path: root/logic/pipeline.hpp
AgeCommit message (Collapse)Author
2018-02-16logic/pipeline: simplifyStanislaw Halik
The pipeline code is hard to understand for programmers due to the practice of putting all logic into a single function. Split it up into logical components. This needs more testing and bug reports. It's a big change with possibly many regressions all over the place. Issue: #688
2018-02-15clean up "static" and "constexpr" typesStanislaw Halik
- use `static constexpr inline' to avoid requiring explicit declarations in object code - use `const Foo* const' to maybe put into readonly binary segment (at least for ELF DSOs) - `constexpr' in function scope has storage, avoid `static' - don't use `constexpr' where there's no advantage, like arrays We'd like to avoid overhead of atomic initialization for each function call. No idea how `static constexpr' requiring storage in the standard plays with atomic initialization requirement. Hearsay points that `constexpr' without `static' in block scope behaves more to our liking. It's all hazy though. I'm not 100% sure if `static inline constexpr' has any storage. Hopefully none, like a #define, and stuff bigger than registers gets coalesced within the same module, with small stuff being immediates.
2018-01-18logic: change relative translation triggeringStanislaw Halik
Relative translation mode now has three states: - disabled - always enabled - enabled when not aiming In the third mode, looking very close to center disables reltrans. The exact values aren't final.
2018-01-10logic/pipeline: conditionalizeStanislaw Halik
Will activate only when looking down or backward. When activating or deactivating, will slowly slide into the new position, no instant movement involved. Issue: #712
2017-10-27logic: use c++14-style in-line initializersStanislaw Halik
2017-10-21logic/tracker: rename to pipelineStanislaw Halik
Could use a better name.