13
0
Commit Graph

385 Commits

Author SHA1 Message Date
b35518e212 switch from boost::{shared,weak}_ptr to std::{shared,weak}_ptr
This is mostly a simple lexical search+replace but the absence of operator< for
std::weak_ptr<T> leads to some complications, particularly with Evoral::Sequence
and ExportPortChannel.
2023-03-24 14:19:15 -06:00
39ed528e25 std-ize: convert all boost shared/weak ptr includes to <memory>
Also fix stdint.h -> cstdint and alphabetically order std includes
2023-03-24 14:19:15 -06:00
4c4f659c5d libmidi++: allow tracer to print tick message 2023-02-23 15:34:27 -07:00
95ad72bda6 libmidi++: add the hitherto unknown and unsupported MIDI "tick" message
See http://midi.teragonaudio.com/tech/midispec/tick.htm
2023-02-23 15:34:27 -07:00
660d2fc8ab fix strncpy() size argument error (Windows only, needs review) 2022-06-22 13:31:08 -06:00
Mads Kiilerich
49855e52aa wscript: consistently have at most one empty separator line 2022-04-09 12:16:40 +02:00
7bf89ce109 Constification: make Stateful::get_state() const, with all other required const-ness added (libs) 2022-04-06 21:56:59 -06:00
Mads Kiilerich
8bb91099c5 wscript: drop configure statements already present in the top level wscript
Avoid repeated pointless configure messages like:
Checking for 'g++' (C++ compiler!)                   : /usr/lib64/ccache/g++
Checking for 'gcc' (C compiler)                      : /usr/lib64/ccache/gcc
2022-01-22 22:19:03 +01: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
John Emmas
952416c596 Accommodate some changes to 'ssize_t' in VS2019
In more recent versions of MSVC, ssize_t equates to 'long' (for a 32-bit build) or '__int64' (for 64-bit)
2021-05-11 14:06:25 +01:00
5957e14259
Remove unused #include<> (2/2)
PBD::stacktrace() is not used nor needed by default.
It should be used sparingly.
2021-05-05 17:57:16 +02:00
e4e94e77c9
Transmitter::Debug implementation 1/2
This also sorts switch() and listen_to() statements in order
of severity: debug, info, warning, error, fatal, throw.
2020-10-13 21:58:26 +02:00
John Emmas
6144de5bf0 Add/remove source(s) in our MSVC project (midi++2) 2020-04-29 10:20:34 +01:00
7a1447b75e remove pointless libs/midi++2/midi++/event.h file
This was just a proxy for libs/evoral/evoral/Event.h. Note that the #define
that controlled allocation that was at the top of the removed header is
replicated in the Evoral header, so there are no semantic changes
2020-04-28 12:01:55 -06:00
3b77472ac0
Overhaul InstrumentInfo
* Remove unused direct calls into plugin
* Assume empty model to mean plugin-provided MIDNAM (!)

The route owned Instrument-Info is the central access point used
by the GUI for MIDI name lookups.

At this point in time, custom settings are saved/restored by the
GUI (MidiTimeAxisView). InstrumentInfo provides a volatile store
for MIDNAM mode and model.
2020-04-01 16:31:58 +02:00
5c789547cb
Fix building unit-tests 2020-01-27 17:43:37 +01:00
bca825e515
NO-OP: whitespace 2020-01-14 00:52:24 +01:00
4874ff8843 slightly enhanced error handling when loading MIDNAM data 2019-12-19 13:14:45 -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
d4ecfc7d85
Use new boost::optional API
get_value_or() has been deprecated since boost 1.56
2019-11-21 17:48:56 +01:00
a855119bdd rename all Evoral source from .(hpp|cpp)$ to .(h|cc) 2019-11-02 16:32:18 -06:00
e0d5c1426c
NO-OP: fix some Wimplicit-fallthrough
gcc can recognize various regexps in comments. Since C++17 provides
[[fallthrough]], using /* fallthrough */ consistently seems
appropriate until we switch to C++17.

see also https://gcc.gnu.org/onlinedocs/gcc/Warning-Options.html
2019-09-18 17:37:54 +02:00
22e5c1de0d
Ignore <ExtendingDeviceNames> midnam during unit-test
So far Ardour only supports midnam descriptions that specify a
<MasterDeviceNames> directly.
2019-09-05 17:45:58 +02:00
973ff10273
Fix paths to .midnam file 2019-09-05 17:42:19 +02:00
0301c47f6b
Update core library GPL boilerplate and (C) from git log 2019-08-03 15:53:17 +02:00
0f24316c3c
Ignore MIDNAM NRPN Controls for the time being
This fixes an issue with Novation_BassStationII.midnam
duplicate assignments CC + NRPN.
2019-05-04 00:07:26 +02:00
2f727a6a32
Undo yet more frame/sample replacements 2019-04-08 18:32:09 +02:00
46f0b75e12
Undo more incorrect sample/frame replacements 2019-04-08 04:10:04 +02:00
3cc30c73af
Revert some incorrect frames -> samples replacements 2019-04-08 00:18:08 +02:00
c83ba53399
Remove ancient, unmaintained xcode project files 2019-02-28 18:12:44 +01:00
c6e2e0a948
Clean up remnants from a half eaten apple 2019-02-28 18:00:08 +01:00
948c5d0706 Handle some midnam edge-cases
Whitespace between XML nodes can result in "text" children.
Those need to be skipped in the patch-name list.
2018-11-23 22:43:26 +01: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
147d456dbd change type of MIDI::Parser::position signal to include timestamp 2018-09-27 11:31:13 -04:00
e6915e01de new transport slave/master implementation, libs/ edition 2018-09-18 19:06:04 -04: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
938b2422e3 Distinguish unset MIDI Patch and bank 0 2018-07-24 23:22:21 +02:00
6e79f473f4 ignore system reset messages entirely in the MIDI parser 2018-07-04 15:40:47 -04: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
6f019faaa0 Accommodate the change from libtimecode to libtemporal 2018-02-14 10:02:11 +00:00
7db12f6b12 convert codebase to use Temporal for various time types 2017-09-24 12:03:54 -04:00
30b087ab3d globally change all use of "frame" to refer to audio into "sample".
Generated by tools/f2s. Some hand-editing will be required in a few places to fix up comments related to timecode
and video in order to keep the legible
2017-09-18 12:39:17 -04:00
d11d8b8a96 Catch new exception in other places. 2017-08-30 17:53:31 +02:00
dc893a3f21 Use XMLNode::set_property API in Midi::Port class 2017-04-19 09:36:48 +10:00
2d52b425b8 Use XMLNode::set_property API in Midnam related classes 2017-04-19 09:36:48 +10:00
08fffeffec Remove Evoral::MIDIEvent
It is slightly questionable whether type specific methods like
velocity() belong on Event at all, these may be better off as free
functions.  However the code currently uses them as methods in many
places, and it seems like a step in the right direction, since, for
example, we might some day have events that have a velocity but aren't
stored as MIDI messages (e.g. if Ardour uses an internal musical model
that is more expressive).

In any case, the former inheritance and plethora of sloppy casts is
definitely not the right thing.
2016-12-03 15:18:21 -05:00
875b1367b2 Factor out and extend MIDIXML implementation 2016-12-03 15:18:20 -05:00
David Carlier
28435d1a30 Making buildable under OpenBSD. 2016-11-29 13:18:46 +00:00
0332c127cd Allow to dynamically un/load Midnam Patches 2016-10-29 19:57:43 +02:00