13
0
Commit Graph

24602 Commits

Author SHA1 Message Date
d1382a20ac Use XMLNode::get/set_property API in ARDOUR::Speakers class
This will improve the precision of the float conversions and negate the need
for a LocaleGuard
2017-04-19 09:36:49 +10:00
cd58473003 Use XMLNode::get/set_property API in Tempo/Time related classes 2017-04-19 09:36:49 +10:00
41b997a904 Use XMLNode::get/set_property API in ARDOUR::MonitorProcessor 2017-04-19 09:36:49 +10:00
b1cccf0d7d Use XMLNode::get/set_property API in ARDOUR::Processor where possible 2017-04-19 09:36:49 +10:00
2b5495b920 Use XMLNode::get/set_property API in ARDOUR::VSTPlugin 2017-04-19 09:36:49 +10:00
74301a5063 Use XMLNode::get/set_property in ARDOUR::LV2Plugin 2017-04-19 09:36:49 +10:00
070a73c975 Use XMLNode::get/set_property API in ARDOUR::LadpsaPlugin 2017-04-19 09:36:49 +10:00
64e1bf5ab7 Use XMLNode::get/set_property API in ARDOUR::Plugin class 2017-04-19 09:36:49 +10:00
530c6c3b38 Use XMLNode::get/set_property API in ARDOUR::Region 2017-04-19 09:36:49 +10:00
325d2c09c9 Use XMLNode::get/set_property in ARDOUR::IO class 2017-04-19 09:36:49 +10:00
c02729de52 Use XMLNode::get/set_property API in ARDOUR::AutomationList 2017-04-19 09:36:48 +10:00
02c384d11e Use XMLNode::set_property in ARDOUR::MidiDiskstream 2017-04-19 09:36:48 +10:00
66add36402 Use XMLNode::get/set_property API in ARDOUR::AudioDiskstream 2017-04-19 09:36:48 +10:00
96d1836258 Use XMLNode::get/set_property API in ARDOUR::Diskstream 2017-04-19 09:36:48 +10: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
e01d074ad1 Use XMLNode::set_property in PBD::PropertyTemplate<T> class 2017-04-19 09:36:48 +10:00
32f5464490 Use XMLNode::get/set_property API in PBD::ConfigurationVariable class 2017-04-19 09:36:48 +10:00
b320ba1aa5 Use XMLNode::set_property API in PBD::MementoCommand class 2017-04-19 09:36:48 +10:00
fe577dcbd5 Use XMLNode::set_property API in PBD::StatefulDiffCommand class 2017-04-19 09:36:48 +10:00
9587e11f97 Use XMLNode::set_property API in PBD::Undo class 2017-04-19 09:36:48 +10:00
799077025e Use XMLNode::get/set_property API in PBD::Stateful 2017-04-19 09:36:48 +10:00
0aea5288cd Use XMLNode::get/set_property API in PBD::Controllable 2017-04-19 09:36:48 +10:00
800fdd0f0f Add pbd/types_convert.h header for PBD::to_string/string_to specialisations 2017-04-19 09:36:48 +10:00
ae27e33f29 Add a template based get/set_property API to PBD::XMLNode 2017-04-19 09:36:48 +10:00
8f516a2c4f Remove now unused stream operator functions in ardour/types.h 2017-04-19 09:36:47 +10:00
2b58bbd50a Use PBD string conversion functions in PBD::ConfigurationVariable
No longer need a specialization for bool as PBD::to_string/string_to already
has specializations for bool

Remove template specialization for float as string_to/to_string handles string
representations of infinity
2017-04-19 09:36:47 +10:00
cb3c564822 Use int32_t type instead of long for font-scale UI configuration variable
long type can not be used with PBD::to_string/string_to
2017-04-19 09:36:47 +10:00
63296285be Add missing header include to ControlProtocol class source file 2017-04-19 09:36:47 +10:00
3edb6b2e1f Use PBD string conversion functions in PBD::Property class 2017-04-19 09:36:47 +10:00
7c4c58ba34 Add header for PBD::to_string/_to template specializations for Evoral types 2017-04-19 09:36:47 +10:00
911e2af018 Add header for PBD::to_string/string_to() specialisations for libardour types
Add PBD::to_/string_to specializations for ARDOUR::DataType

These could go into the data_type.h header but they don't really need to and it
means that ardour/types_convert.h can just be included by source files that
need to do type<=>string conversion. A potential problem with this is that if
all the specializations are contained in a single header then any class that
requires inclusion of that header to do serialization will be recompiled each
time types_convert.h is changed. I'm not going to worry about it at this stage,
it can always be broken up or improved upon later.
2017-04-19 09:36:42 +10:00
95b4fd64dd Add DEFINE_ENUM_CONVERT macro for defining PBD::string_to/to_string for enums
A simple macro for defining the four template specializations required to
convert an enum to a string and back using the existing string_2_enum and
enum_2_string functions. Generally these will only be instantiated in one
source file, I don't think it is necessary to explicitly instantiate any at
this stage.
2017-04-19 07:49:58 +10:00
f4f4c01f4c Remove now unused ID::print method 2017-04-19 07:49:58 +10:00
fda05ac64b Use ID::to_s() in gtk2_ardour instead of ID::print() 2017-04-19 07:49:58 +10:00
334ec95e43 Use ID::to_s() in libardour instead of ID::print() 2017-04-19 07:49:58 +10:00
4dd0203f01 Use ID::to_s() in libpbd instead of ID::print() 2017-04-19 07:49:58 +10:00
454b2d4e69 Use PBD string conversion functions in PBD::ID instead of snprintf
Keep ID::print in place for now and replace usage in subsequent commit to
minimize changes
2017-04-19 07:49:58 +10:00
e31f242836 Add missing <iostream> header include
This will be required for subsequent commits that remove inclusion of
<iostream> from some shared headers.
2017-04-19 07:49:58 +10:00
13bfd1527a Make boolean string values 0 and 1 to maintain backwards compatibility
I would prefer "yes" and "no" as it distinguishes boolean values from numeric
but using "yes and "no" results in PBD::Property<T>::from_string failing to
parse the correct values when opening in an older Ardour version as there is no
specialization for bool.

Using 0 and 1 also results in less change to the Session file.
2017-04-19 07:49:57 +10:00
362303f793 FP8: Fix sort-order 2017-04-18 16:09:44 +02:00
a372fcbe51 prevent crash when loading midi port info about ports that no longer exist 2017-04-18 14:22:51 +01:00
5dce10500c FP8: handle backend changes + reconnect
When the backend is dropped or changed, on engine-restart
the connection_handler() re-establishes already connected ports.
There's no disconnect when the backend dies or is hard-stopped.
2017-04-18 15:14:00 +02:00
3243e17c71 FP8: allow to re-initialize the Strips w/o restart 2017-04-18 15:01:54 +02:00
bce08cf4f3 FP8: experiment with selection-mode 2017-04-18 13:39:42 +02:00
629b5e0446 clear + re-init faderport at disconnect 2017-04-18 03:20:33 +02:00
dbb3c47eee Only check active_state when potentially skipping the route processing.
In the past, we skipped processing if the routes had no inputs or outputs.
But:
  A route with a generator plugin should work even if it has no inputs.
  A route with "sends" should work even if it has no outputs.
2017-04-17 19:36:31 -05:00
8e5a972a24 Managed to trigger an assert()
Create new Mixbus session, initially incrementally adding Busses to
the session triggers a series of "assign_stripables()"
2017-04-17 23:50:11 +02:00
d6b36a13a1 Flush processor (re-activate) on route active change
(flush reverb tails etc)

PS. That comment "from RT audio thread" was wrong.
Route::flush_processors () is called from flush_all_inserts()
from Session::non_realtime_stop() which is not in rt-context.
Besides, the processor-lock regardless of the process_lock.
2017-04-17 21:15:27 +02:00
515c0687b4 amend 649b9e92f, backport MB code 2017-04-17 20:34:18 +02:00