<feed xmlns='http://www.w3.org/2005/Atom'>
<title>opentrack.git/api, branch stable/2.3</title>
<subtitle>head tracking software for Windows and Linux</subtitle>
<id>http://ananke.misaki.pl/cgit/opentrack.git/atom?h=stable%2F2.3</id>
<link rel='self' href='http://ananke.misaki.pl/cgit/opentrack.git/atom?h=stable%2F2.3'/>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/'/>
<updated>2018-04-05T01:23:13Z</updated>
<entry>
<title>i18n: provide for non-QObject classes</title>
<updated>2018-04-05T01:23:13Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-04-03T10:26:38Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=eb32a2ac02c6d1adcfeb0a1a5522f8aaea442489'/>
<id>urn:sha1:eb32a2ac02c6d1adcfeb0a1a5522f8aaea442489</id>
<content type='text'>
See compat/tr.hpp for comment.
</content>
</entry>
<entry>
<title>api: fix potential logic errors with module init</title>
<updated>2018-02-16T10:05:12Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-02-16T10:03:20Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=ef210198aa71e012b885f81e6913ab7521faeb16'/>
<id>urn:sha1:ef210198aa71e012b885f81e6913ab7521faeb16</id>
<content type='text'>
</content>
</entry>
<entry>
<title>clean up "static" and "constexpr" types</title>
<updated>2018-02-15T09:23:11Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-02-15T08:06:13Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=0a92bc147f91f3ecacdf66d995f01f9577107a86'/>
<id>urn:sha1:0a92bc147f91f3ecacdf66d995f01f9577107a86</id>
<content type='text'>
- 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.
</content>
</entry>
<entry>
<title>cmake: add zh_CN</title>
<updated>2018-02-12T09:05:00Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-02-11T20:40:53Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=31d9768413199f388c216d92d9db5158ce8785cf'/>
<id>urn:sha1:31d9768413199f388c216d92d9db5158ce8785cf</id>
<content type='text'>
cf. #746
</content>
</entry>
<entry>
<title>meh</title>
<updated>2018-01-14T00:46:27Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-01-14T00:46:27Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=720b8d57847324a164e6f408d430bdc568b1b76c'/>
<id>urn:sha1:720b8d57847324a164e6f408d430bdc568b1b76c</id>
<content type='text'>
</content>
</entry>
<entry>
<title>minor cleanup</title>
<updated>2018-01-11T17:55:20Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-01-11T17:55:20Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=71374d0b5cd456e25252775fdec89fe3cf2aa5e6'/>
<id>urn:sha1:71374d0b5cd456e25252775fdec89fe3cf2aa5e6</id>
<content type='text'>
</content>
</entry>
<entry>
<title>api, cmake: use the same dynamic library prefix</title>
<updated>2018-01-10T02:18:57Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-01-09T14:06:04Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=bd3370d4ef79ed5e0713a6446889cca6f5a4d5e2'/>
<id>urn:sha1:bd3370d4ef79ed5e0713a6446889cca6f5a4d5e2</id>
<content type='text'>
</content>
</entry>
<entry>
<title>main: workaround crash on exit without terminating process</title>
<updated>2018-01-04T08:23:06Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2018-01-04T08:23:06Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=4a2d23c14089cb98901e3df535037f7d8095e9a7'/>
<id>urn:sha1:4a2d23c14089cb98901e3df535037f7d8095e9a7</id>
<content type='text'>
</content>
</entry>
<entry>
<title>compat: use gettext convention for tr()</title>
<updated>2017-12-26T21:15:20Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2017-12-26T21:13:52Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=0b56957297167538addd330e699e2e3cd2731d68'/>
<id>urn:sha1:0b56957297167538addd330e699e2e3cd2731d68</id>
<content type='text'>
</content>
</entry>
<entry>
<title>plugins: rename check_status -&gt; initialize</title>
<updated>2017-12-18T08:12:55Z</updated>
<author>
<name>Stanislaw Halik</name>
<email>sthalik@misaki.pl</email>
</author>
<published>2017-12-18T08:05:25Z</published>
<link rel='alternate' type='text/html' href='http://ananke.misaki.pl/cgit/opentrack.git/commit/?id=c2f88ee8bec8cdd0ea573b54aee89a241c7d4deb'/>
<id>urn:sha1:c2f88ee8bec8cdd0ea573b54aee89a241c7d4deb</id>
<content type='text'>
It's a contract for plugin invocation that the particular function fills
the role of initialization. Rename accordingly.
</content>
</entry>
</feed>
