5285151d08
Temporal: alter which tests are run by test2
2021-08-13 12:51:28 -06:00
88cf07daa6
Temporal: add standalone compile instruction for test2.cc
2021-08-13 12:51:28 -06:00
3beffbd3ee
Temporal: add test program to evaluate performance of various ways of using int64_t atomically
2021-08-13 12:51:28 -06:00
56795a97a3
changes required to get ardour to start up (missing vars, incorrect values)
2021-08-13 12:51:28 -06:00
f5fad809fb
Temporal: add decl for thread-local tempo map pointer
2021-08-13 12:51:28 -06:00
d47d462182
Temporal: add debug bits declaration
2021-08-13 12:51:28 -06:00
b0a732e636
Temporal: extend timecnt_t API to provide samples() method, using thread-local sample rate
2021-08-13 12:51:28 -06:00
791e76290d
Temporal: extend timepos_t API to provide samples() method, using thread-local sample rate
2021-08-13 12:51:28 -06:00
4c6d6b14e5
Temporal: add new TempoMap implementation source
2021-08-13 12:51:28 -06:00
f42bd3fe47
add per-thread sample rate variable and libardour method to update it
2021-08-13 12:51:28 -06:00
1f0d9159a7
Temporal: use, don't fetch tempo map pointer
2021-08-13 12:51:28 -06:00
8ec81c2308
Temporal: correctly construct return timepos_t for * and /
2021-08-13 12:51:28 -06:00
e89d727939
Temporal: remove the final #warning from timeline.cc
2021-08-13 12:51:28 -06:00
b87c855240
Temporal: add string_to/to_string methods for timecnt_t
2021-08-13 12:51:28 -06:00
974196b7d2
Temporal: add timeline.cc
2021-08-13 12:51:28 -06:00
5a0969a5c2
Temporal: remove last bit of floating point API from timepos_t
2021-08-13 12:51:28 -06:00
9fe9658e8a
Temporal: add clarifying comment
2021-08-13 12:51:28 -06:00
ead17ed35c
Temporal: add ratio_t type (currently boost::rational<int64_T>
2021-08-13 12:51:28 -06:00
b1271a491e
Temporal: add TempoMap::use() which returns the per-thread ptr-to-tempo-map without updating the pointer
2021-08-13 12:51:28 -06:00
7446de72b1
Temporal: improve timepos_t::distance() implementations
2021-08-13 12:51:28 -06:00
2c69a1425f
Temporal: fundamental changes to get timeline.cc to compile
2021-08-13 12:51:28 -06:00
35d0519109
make superclock_t signed, to match signedness of int62_t
2021-08-13 12:51:28 -06:00
f4490f54c5
change Timecode::BBT_Time to use Temporal namespace, plus a couple of other minor changes to enable compilation
...
This still uses the tempo map object in libs/ardour, not the new one in libs/temporal, and isn't likely to be functional
(though it could be)
2021-08-13 12:51:28 -06:00
9abf90c9d5
add the new timepos_t/timecnt_t header
2021-08-13 12:51:28 -06:00
a80960468d
first pass at integrating nutempo v1 with new 64 bit superclock/ticks representation
...
This compiles libtemporal, but nothing more
2021-08-13 12:51:28 -06:00
e0b5b12129
basic work on a Tempo object that avoids (almost) all floating point arithmetic
...
Basic conversions between superclock and Beats are provided
2021-08-13 12:51:28 -06:00
4dc048b28a
update Temporal::Beats to merge master/nutempo versions, notably with private from-double constructor
...
This is the libraries-only edition. It still features liberal use of Beats::from_double() but this is now
explicit and will be easier to locate the calls and remove them. Several classes that were using
Beats::to_double() have been (temporarily) made friends of Beats to allow them to keep using it,
pending the much more widespread redesigns of several structures. Once this is done, the friend
relationships can (mostly) be removed. It is expected the ARDOUR::Variant will need to continue
as a friend because it is used to pass beat counts to LV2 as doubles
2021-08-13 12:51:28 -06:00
617fcd660c
add operator% and operator%= to Temporal::Beats (taken from nutempo)
2021-08-13 12:51:27 -06:00
c41c622b37
another BBT comparator fix
2021-08-13 12:51:26 -06:00
be831c6870
fix logic error in BBT_Time::operator>=
2021-08-13 12:51:26 -06:00
Hector Martin
4b9e46f11d
Fix normalization in Temporal::Beats for times between -1 and 0 beats
...
Also fix normalization of times with negative beats and positive ticks
2020-11-18 13:40:31 -07:00
John Emmas
754f9bba0c
Further change needed for 'libtemporal'
2020-05-29 12:28:13 +01:00
John Emmas
1d23e18efe
Initial vcproj changes for building Ardour6 / Mixbus6 with MSVC
2020-05-29 08:33:33 +01:00
70e27e0bf2
fix Beats::operator-()
2020-04-16 21:38:33 -06:00
bca825e515
NO-OP: whitespace
2020-01-14 00:52:24 +01:00
8b3e7fea37
fix Temporal::Beats::operator*
2019-12-18 18:00:53 -07:00
8ec3e5fb54
Fix deprecated-copy warnings
...
It's long been a guideline (and IIRC a Weff-c++ warning) that either all, or
none, of the copy methods should be defined, but this became a standard warning
in GCC9. Presumably to account for a later language change though I'm not sure
which.
I don't remember why the ChanMapping copy constructor can't just be a simple
copy (it's just a map of POD), but figure it's safer to just copy what that
does.
2019-12-09 23:25:59 +01:00
ecc2597870
Fix remaining doxygen warnings (!)
2019-09-30 21:03:29 +02:00
bfec73b8c3
NO-OP: whitespace, indent
2019-09-30 21:03:20 +02:00
0301c47f6b
Update core library GPL boilerplate and (C) from git log
2019-08-03 15:53:17 +02:00
8ed33f1bc7
remove use of hardcoded -fPIC compiler flag, and use compiler flag dict instead
2018-10-14 22:06:11 -04:00
9506a294c7
Adapt our remaining MSVC projects for 'boost::atomic' (in case it later gets extended to the other libs)
...
Stage 1 of 3 (more to follow)
2018-09-30 08:56:12 +01:00
79f01bc889
Initial changes needed for building Mixbus (with MSVC) as version 5
...
(Mixbus itself will probably need extra changes)
2018-09-10 07:14:59 +01:00
b9c9777b9a
When building with MSVC, allow for the fact that Mixbus and Ardour can be using different versions of the SESSION_FILE format
2018-02-15 09:03:32 +00:00
9a20433d98
fix definition of Temporal::Beats::max()
...
Ticks can exceed PPQN, but if beats are already INT32_MAX, ::normalize() will not work correctly
2018-02-12 11:44:37 -06:00
b2032938b1
Accommodate newly added/removed source(s) in our MSVC project (libtemporal)
2017-09-28 12:27:54 +01:00
657ba64ad2
Rename 'libs/temporal/MSVCtemporal/timecode.vcproj' to 'libs/temporal/MSVCtemporal/temporal.vcproj'
2017-09-28 12:27:54 +01:00
2750f7f485
Rename 'libs/temporal/MSVCtimecode' to 'libs/temporal/MSVCtemporal'
2017-09-28 12:27:53 +01:00
61be0990fa
change libtemporal to be versioned like all others
2017-09-25 12:13:54 -04:00
dcb55c508e
additional changes to follow library name change from timecode -> temporal
2017-09-25 12:13:54 -04:00