Robin Gareus
74c4ca3e52
Reduce reliance on boost - the hard part
...
the rest from `tools/convert_boost.sh`.
* replace boost::function, boost::bind with std::function and std::bind.
This required some manual fixes, notably std::placeholders,
some static_casts<>, and boost::function::clear -> = {}.
2024-10-19 03:47:21 +02:00
Robin Gareus
ff95d81612
Reduce reliance on boost - the easy part
...
* boost::unordered_map -> std::unordered_map
* BOOST_STATIC_ASSERT/static_assert
* BOOST_FOREACH -> for
* boost::tuple -> std::tuple/g
* boost::math::isnormal -> std::isnormal
* boost::container::set -> std::set
* boost::none -> std::nullopt
* boost::optional -> std::optional
2024-10-19 03:41:16 +02:00
Alejandro Domínguez
2436b4df06
Replace boost::noncopyable with C++11 deleted copy constructors
2024-10-19 01:04:15 +02:00
Alejandro Domínguez
1ffb70f670
Replace boost::scoped_ptr with std::unique_ptr (1/2)
2024-10-19 01:04:14 +02:00
Robin Gareus
bd8525e5f1
Remove deprecated PBD::SignalN
2024-10-18 20:46:31 +02:00
Robin Gareus
2d7cce44f1
Replace PBD::Signals (1/2)
2024-10-18 20:41:08 +02:00
Alejandro Domínguez
0ade0b2212
Deduplicate SignalWithCombiner<Combiner, void, A...> specialization
2024-10-18 20:41:08 +02:00
Alejandro Domínguez
16dd8528c8
Make SignalN template variadic
2024-10-18 20:41:05 +02:00
Paul Davis
75f56cd3e1
the great onceification (libs)
...
Replace use of #ifndef header guards with #pragma once
Modern C++, baby!
2024-10-17 07:44:31 -06:00
Paul Davis
7901b4119f
we're gonna need a bigger debug set
2024-10-17 07:44:31 -06:00
Paul Davis
911ad78c06
add API to access PBD::UndoHistory member of HistoryOwner
2024-10-17 07:44:31 -06:00
Paul Davis
8c086693af
show HistoryOwner::_name in DEBUG_TRACE messages
2024-10-17 07:44:31 -06:00
Paul Davis
d30c8a1286
abstract concept of a history owner from ARDOUR::Session into libpbd
2024-10-17 07:44:31 -06:00
Paul Davis
7799adc8db
make Stateful a virtual base class of StatefulDestructible
...
This permits dual inheritance from Stateful.
2024-10-17 07:44:29 -06:00
Robin Gareus
8115578d4e
Add RT thread priority debugging
2024-10-14 21:49:56 +02:00
John Emmas
fd8808d7b8
Minor declaration issue that upsets MSVC/c++17
2024-10-13 11:39:48 +01:00
Robin Gareus
0aff098541
Fix IO Thread priority
...
This adds `pbd_pthread_priority` indirection to correctly get
the absolute thread priority.
and for consistency a 4 letter enum is used.
2024-10-11 10:06:49 +02:00
John Emmas
07c79ce92c
Small changes to make pthread_utils.cc buildable again with MSVC
2024-10-01 20:28:16 +01:00
Robin Gareus
dab22a7c70
Explicitly set Windows Process Scheduling Class
2024-09-30 19:57:53 +02:00
Robin Gareus
ed437afda7
Fix thread priorities for Windows builds
2024-09-30 19:07:53 +02:00
Robin Gareus
1d921dec0b
Debug thread sched_priority
2024-09-28 14:47:52 +02:00
Robin Gareus
dd4a1a6d73
Set thread priority relative to backend
...
This also removed direct calls to backend real_time_priority
for good measure.
2024-09-28 04:15:39 +02:00
Robin Gareus
395833e4f8
Always use PBD API for thread priorities
2024-09-28 03:58:48 +02:00
Robin Gareus
dcd79f3135
Debug Backend thread creation
2024-09-28 03:16:50 +02:00
Robin Gareus
aeb4f925c6
PBD pthreads: allow unlimited stacksize
2024-09-28 03:16:45 +02:00
Robin Gareus
e8445d13ec
Require thread name to be passed to PBD::Thread and store thread
2024-09-28 03:16:30 +02:00
Robin Gareus
88a24ae8e5
Let PBD::Thread set thread-name
2024-09-28 03:16:07 +02:00
Robin Gareus
538a8cbccc
Consolidate calls to `pthread_create' (2/2)
2024-09-28 03:16:02 +02:00
Robin Gareus
8d3ebde60e
Distinguish Threads and ThreadName debugging
...
This also allows for -DThread to enable both.
We celebrate the 128th debug bit and look forward to
the next 64!
2024-09-28 03:15:36 +02:00
Robin Gareus
c4fdd5356c
Enable debugging for stored threads
2024-09-28 03:14:16 +02:00
Robin Gareus
d257c8c0ce
Prevent endless recursive directory scans
...
This can happen when a folder symlinks to itself or subfolders
in some similar recursive pattern.
2024-09-08 01:33:57 +02:00
Alejandro Domínguez
867eaa0b13
Remove unused libs/pbd/pbd/stl_functors.h
2024-09-01 19:17:10 +02:00
Alejandro Domínguez
17275239db
Remove boost-debug
2024-08-29 23:08:42 +02:00
Alejandro Domínguez
c0062fff86
Remove #include <boost/shared_ptr.hpp>
2024-08-29 23:08:42 +02:00
Mads Kiilerich
8633e82891
commandline: Allow -D to be specified multiple times
...
Yes, -D takes a comma separated list, but it is still confusing and
unnecessary that the first -D options were silently ignored.
2024-07-25 13:48:38 +02:00
Robin Gareus
b50477e608
Exclude monitor gain from mixer scenes
2024-07-15 00:43:51 +02:00
Paul Davis
ac004eee70
avoid all potential charset conversion when displaying an error relating to filename errors
2024-05-22 15:59:49 -06:00
Robin Gareus
63b5c9ea2b
Trying to track down mysterious cxxabiv1::failed_throw
...
It seems that a `Glib::ConvertError` is thrown, and then the
function that catches the error causes another ConvertError in
`err.what()` (which presumably include the filename that
causes the error).
relevant part of the backtrace (macOS Crashdump):
```
Glib::ConvertError::throw_func(_GError*) + 56
Glib::Error::throw_exception(_GError*) + 292
Glib::operator<<(std::__1::basic_ostream<char, std::__1::char_traits<char> >&, Glib::ustring const&) + 131
StringPrivate::Composition& StringPrivate::Composition::arg<Glib::ustring>(Glib::ustring const&) + 25
std::__1::basic_string<char, std::__1::char_traits<char>, std::__1::allocator<char> > string_compose<Glib::ustring> (...) + 81
PBD::run_functor_for_paths(...) + 1313
```
2024-05-22 18:36:15 +02:00
Robin Gareus
5b9e4fff63
Parallelize Disk I/O and RegionFx processing
2024-04-30 03:46:39 +02:00
Robin Gareus
44610c7877
Fix RCU race condition (see source for details)
2024-04-12 00:26:51 +02:00
Robin Gareus
2fe22eeab5
Fix header include, potential fix for #9649
2024-02-29 03:09:00 +01:00
Robin Gareus
a8c26dbfa4
Fix localtime_r check ( #9554 )
2023-11-28 17:05:03 +01:00
Nils Philippsen
e995daa375
Fix failure to build with libxml2 version 2.12
...
This declared some xmlError pointers const, which probably was always
assumed, but not made explicit.
Signed-off-by: Nils Philippsen <nils@tiptoe.de>
2023-11-25 00:30:04 +01:00
Mads Kiilerich
88cecdfaef
wscript: drop repeated autowaf.set_options - it is enough to set at top level
2023-10-15 10:47:16 -06:00
Mads Kiilerich
1c686f4d63
wscript: drop additional configure statements already present in the top level wscript
...
Missed in 8bb91099c5 .
2023-10-15 10:47:16 -06:00
John Emmas
ea8742b030
#include <sys/utime.h> when building with MSVC
2023-09-27 09:36:26 +01:00
Robin Gareus
6494214622
Add option to prefer file timestamps with recursive copy
2023-09-27 02:22:22 +02:00
Mads Kiilerich
c5e7e5c4df
pbd: clarify int62_t comments
2023-09-20 12:51:52 -06:00
Mads Kiilerich
f1bb18ae53
wscript: drop unused path_prefix
...
It is not referenced anywhere, and also not set consistently.
2023-09-17 07:34:55 -06:00
Mads Kiilerich
d220f477ed
wscript: drop unused "mandatory variables" 'top' and 'out' in libs
...
Variables by these names are only used from the local wscript and when
running "waf configure", which already for other reasons only can run at
the top-level.
These variables are thus not mandatory and not used.
2023-09-17 07:34:55 -06:00