summaryrefslogtreecommitdiffhomepage
path: root/pose-widget
AgeCommit message (Collapse)Author
2018-03-10sprinkle some `static constexpr inline'Stanislaw Halik
2018-02-16compat/macros: cleanupStanislaw Halik
Remove cruft, adjust usages.
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-02-12cmake: add zh_CNStanislaw Halik
cf. #746
2018-01-18compat/util: retireStanislaw Halik
Adjust usages.
2018-01-10pose-widget: drop alpha calculationStanislaw Halik
We don't have 8-bit alpha in Qt anyway.
2018-01-10many: spring cleanupStanislaw Halik
2018-01-03pose-widget: sprinkle some constStanislaw Halik
2017-12-29pose-widget: fix off-by-oneStanislaw Halik
2017-12-02pose-widget: disable bilinear filteringStanislaw Halik
2017-11-14pose-widget: cleanup nonsenseStanislaw Halik
2017-10-29static constexpr -> constexprStanislaw Halik
2017-10-13compat/macros: fix "restrict" name clashStanislaw Halik
2017-10-02pose-widget: only draw needed octopus sizeStanislaw Halik
2017-09-23play with thread prioritiesStanislaw Halik
2017-09-08pose-widget: fix race on startupStanislaw Halik
2017-08-19pose-widget: clamp floatsStanislaw Halik
We can't expect bounds check to work, if depending on floating-point dot product.
2017-08-19Revert "pose-widget: remove badly-looking shadow"Stanislaw Halik
The shadow's not at fault. cf. https://github.com/opentrack/opentrack/issues/664#issuecomment-322397835
2017-08-03pose-widget: remove badly-looking shadowStanislaw Halik
2017-07-28gui: don't update the main window if it's hiddenStanislaw Halik
2017-07-20pose-widget: fix Qt use-after-freeStanislaw Halik
Due to Qt's implicit sharing, something goes wrong when calling QImage::constBits(). It's likely related to to multithreading. Strangely enough, `constBits()' shouldn't perform a copy of the image according to Qt docs. While here, remove the "offset" defensive coding. Also, use a constant depth as to reduce confusion.
2017-07-18pose-widget: fix buildStanislaw Halik
2017-06-30pose-widget: optimize CPU usage slightlyStanislaw Halik
CPU usage of an empty tracker loop fell reliably from 1% to .9%.
2017-06-18minor tweaks onlyStanislaw Halik
2017-05-12minor fixes onlyStanislaw Halik
2017-05-10pose-widget: add empty space to prevent out-out-bounds writesStanislaw Halik
2017-05-10pose-widget: projected pixel overflow isn'n an issueStanislaw Halik
2017-05-01pose-widget: catch 90 deg oblique rotation soonerStanislaw Halik
2017-04-29cv, pose-widget: don't premultiply alphaStanislaw Halik
It doesn't improve perf.
2017-04-20pose-widget: fix buildStanislaw Halik
2017-04-18many: use std::f{max,min} for floating-point valuesStanislaw Halik
2017-04-18pose-widget: also compute alpha in the loopStanislaw Halik
2017-04-18pose-widget: check area for invalid denomStanislaw Halik
The denom check is a magic number otherwise.
2017-04-17pose-widget: iterate over BGRStanislaw Halik
2017-04-17pose-widget: interpolate next in world coordinate spaceStanislaw Halik
The next value was chosen in view space.
2017-04-17few widgets: use repaint() for no event loop overheadStanislaw Halik
The Qt event loop overhead formed a decent amount of total CPU usage. `repaint()' is a direct call.
2017-04-17cv/video-widget, pose-widget: use premultiplied argb32 surfaceStanislaw Halik
2017-04-12pose-widget: fix some breakage, forgot what it wasStanislaw Halik
2017-04-06pose-widget: avoid condition variable overheadStanislaw Halik
It's busy-looping on Windows.
2017-04-06pose-widget: prevent races and serial executionStanislaw Halik
We actually need to use "mtx" with the condition variable and copy the data to the worker thread's stack. Also allow for synchronous pose update, for tracking stoppage.
2017-04-06pose-widget: rename unit and headerStanislaw Halik
2017-03-29pose-widget: reduce latencyStanislaw Halik
- project on a separate thread - use Qt's native ARGB32 - use double buffering - more fine-grained locks
2017-03-28start renaming internal macros as OPENTRACK_* to OTR_*Stanislaw Halik
2017-03-27cmake: rename project's function prefixStanislaw Halik
It's not annoying having to type it anymore. Also "otr_boilerplate" -> "otr_module".
2017-03-22[COVERITY] pose-widget: fix integer math where fpu was meantStanislaw Halik
2017-02-27remove unfinished polish translation filesStanislaw Halik
Polish speakers typically know English well enough and translations are awkward.
2017-02-21modules: add .ts filesStanislaw Halik
2016-12-28pose-widget: qrc init needed only for static librariesStanislaw Halik
cf. http://doc.qt.io/qt-5/resources.html#using-resources-in-a-library
2016-12-28pose-widget: qrc initializer needn't be exportedStanislaw Halik
It's only used in _init inside that library.
2016-12-28pose-widget: fix resources in libraryStanislaw Halik
They must be initialized at top namespace