13
0
Commit Graph

331 Commits

Author SHA1 Message Date
2fdd30ce0a remove unncessary assert
git-svn-id: svn://localhost/ardour2/branches/3.0@7434 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-16 21:40:09 +00:00
c9b121803c add new files
git-svn-id: svn://localhost/ardour2/branches/3.0@7427 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-16 15:45:24 +00:00
c8e3f32533 newly created files for use in recording appear in a .stubs folder, and are moved out of it when recording stops
git-svn-id: svn://localhost/ardour2/branches/3.0@7426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-16 14:55:11 +00:00
Carl Hetherington
75c9d87051 Fix thinko in my previous commit. Should fix #3315.
git-svn-id: svn://localhost/ardour2/branches/3.0@7421 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-15 00:25:58 +00:00
Carl Hetherington
66062a85b6 Fix binding of automation list undo records to MIDI sources. Should fix the remainder of #3203.
git-svn-id: svn://localhost/ardour2/branches/3.0@7411 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-14 12:27:37 +00:00
Taybin Rutkin
2f11b367ca fix compiling file_manager.cc on osx
clock_gettime() and CLOCK_MONOTONIC aren't implemented on osx.
Replaced with get_absolute_time() as suggested here:
http://www.wand.net.nz/~smr26/wordpress/2009/01/19/monotonic-time-in-mac-os-x/



git-svn-id: svn://localhost/ardour2/branches/3.0@7380 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-06 01:25:06 +00:00
69b7b53aec fix gcc4.4 compile warning
git-svn-id: svn://localhost/ardour2/branches/3.0@7346 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-01 15:01:25 +00:00
Carl Hetherington
b47524ded2 const correctness.
git-svn-id: svn://localhost/ardour2/branches/3.0@7323 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-29 13:47:11 +00:00
74745856d6 fix basic logic problem in PropertyTemplate<T>::set so that current/old values are properly managed
git-svn-id: svn://localhost/ardour2/branches/3.0@7310 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-28 14:56:40 +00:00
Carl Hetherington
c5bbca0cf5 Add an EnumProperty for enumerated properties and hence make Region::position_lock_style a stateful property.
git-svn-id: svn://localhost/ardour2/branches/3.0@7306 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-28 00:34:09 +00:00
806a22fefe change note colors on the fly, to permit user-definition of colors more easily; remove some debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@7301 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-24 19:46:28 +00:00
0f5bdd666f use JACK thread creation functions to create process-graph threads; provide GUI control over number of threads-relative-to-number-of-CPUS
git-svn-id: svn://localhost/ardour2/branches/3.0@7296 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-24 14:13:45 +00:00
fe229a830e GUI-created MIDI regions now steal the pending MIDISource from the track's diskstream, to keep numbering sane; don't create any new MIDI regions if capture collected no data (fixes a crash in my previous commit, and is just logically much more sensible
git-svn-id: svn://localhost/ardour2/branches/3.0@7295 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-24 01:37:24 +00:00
f4401c5928 midway snapshot of work done on managing Region & Source lifetimes correctly. may fix missing MIDI file bug ; save empty playlists because they may be referred to by the history file ; undo commands auto-delete when objects they refer to die (currently not commands built from XML deserialization); Sources now know how many regions are using them for something, meaning that we know if we can delete the files holding any data for the source
git-svn-id: svn://localhost/ardour2/branches/3.0@7291 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-23 20:14:07 +00:00
6b19aee3b5 split out sndfile manager code into its own file; move a couple of utility functions into gtkmm2ext ; add knob PNG generating tool ; break appearance of monitor section for now
git-svn-id: svn://localhost/ardour2/branches/3.0@7160 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-25 16:45:21 +00:00
Carl Hetherington
f1114dedee Move FileManager code into libpbd. Use it for SMF read/write.
git-svn-id: svn://localhost/ardour2/branches/3.0@7108 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-16 20:54:50 +00:00
Carl Hetherington
542372cd18 Add debug() method to dump XML nodes.
git-svn-id: svn://localhost/ardour2/branches/3.0@7083 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-09 00:46:33 +00:00
Carl Hetherington
8d0581a720 Remove use of i18n macros in headers. Prevents our gettext.h being included before libintl.h, which causes failures when ENABLE_NLS is not defined (bug #3111)
git-svn-id: svn://localhost/ardour2/branches/3.0@7081 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-05-08 01:20:33 +00:00
Carl Hetherington
d57a472c16 Delete cross-thread pools when the thread terminates if they are empty. Hopefully fixes #3094.
git-svn-id: svn://localhost/ardour2/branches/3.0@7022 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-29 22:55:27 +00:00
Carl Hetherington
84e92060fd Prevent crash in pool destruction during session teardown.
git-svn-id: svn://localhost/ardour2/branches/3.0@6905 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-14 23:58:20 +00:00
Carl Hetherington
8783fc35f2 Suspend deletion of cross-thread pools until they are empty. Prevents crashes when the freeze thread completes.
git-svn-id: svn://localhost/ardour2/branches/3.0@6893 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-14 22:06:12 +00:00
3ea10b38bb substantive change: use the JACK wait API and provide "thread buffers" separately from session in preparation for parallelization. lots of debug output at present. If using JACK1, requires a very current version of JACK1 SVN (0.119.0)
git-svn-id: svn://localhost/ardour2/branches/3.0@6888 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-13 20:48:33 +00:00
Carl Hetherington
298db6ef35 Add virtual destructor.
git-svn-id: svn://localhost/ardour2/branches/3.0@6871 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-07 12:49:31 +00:00
e69aca2842 MIDI/Controllables for monitor section, and related fixes
git-svn-id: svn://localhost/ardour2/branches/3.0@6863 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-06 16:57:35 +00:00
Carl Hetherington
8a8552c4cb Allow cross-thread request invalidators to cope with multiple requests
being logged before they are handled, and to invalidate them all rather
than just the last one.  Fixes shutdown problems when the PortMatrix has
been opened during the session, during which PortRegisteredOrUnregistered
is emitted quite heavily.


git-svn-id: svn://localhost/ardour2/branches/3.0@6852 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-03 00:42:39 +00:00
Carl Hetherington
f14a33e492 Couple of comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@6851 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 23:11:15 +00:00
Carl Hetherington
4dfa48ad1d Add missing test file.
git-svn-id: svn://localhost/ardour2/branches/3.0@6846 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 21:11:45 +00:00
Carl Hetherington
97e11c790f A few more libpbd test tweaks.
git-svn-id: svn://localhost/ardour2/branches/3.0@6839 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 16:38:23 +00:00
Carl Hetherington
69f135517a Unbreak build. Sorry.
git-svn-id: svn://localhost/ardour2/branches/3.0@6837 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 15:45:01 +00:00
Carl Hetherington
9c5f36c328 Missing file.
git-svn-id: svn://localhost/ardour2/branches/3.0@6836 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 15:37:11 +00:00
Carl Hetherington
eecb8c496a Some stub tests for scalar properties.
git-svn-id: svn://localhost/ardour2/branches/3.0@6835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 15:35:36 +00:00
a48742043b remove PBD::Connection (replace use with PBD::ScopedConnection); remove limitation on transport roll after session end
git-svn-id: svn://localhost/ardour2/branches/3.0@6834 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 15:24:53 +00:00
Carl Hetherington
3dd7f05fb1 Remove empty file.
git-svn-id: svn://localhost/ardour2/branches/3.0@6833 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 14:58:39 +00:00
Carl Hetherington
2fa02997dd Add script to run libpbd tests.
git-svn-id: svn://localhost/ardour2/branches/3.0@6832 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 14:55:34 +00:00
Carl Hetherington
9e3280ae67 Build libpbd tests using waf.
git-svn-id: svn://localhost/ardour2/branches/3.0@6831 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 14:52:55 +00:00
Carl Hetherington
24fee4b8ef Rename tests to test to match up with other libraries.
git-svn-id: svn://localhost/ardour2/branches/3.0@6830 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 14:42:38 +00:00
Carl Hetherington
b68256a8ff Fix up route group state signal handling. Make the PropertyList version
of Stateful::set_properties emit a changed signal after it has done its work.


git-svn-id: svn://localhost/ardour2/branches/3.0@6826 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-02 00:21:08 +00:00
Carl Hetherington
50dd880d7e No-op: rename a few variables and add/fix some comments.
git-svn-id: svn://localhost/ardour2/branches/3.0@6818 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-04-01 01:07:24 +00:00
Carl Hetherington
afc5e3bd02 Rework to set Stateful properties automagically in the Stateful class rather than delegating to subclasses.
git-svn-id: svn://localhost/ardour2/branches/3.0@6817 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-31 22:45:27 +00:00
Carl Hetherington
7f8b337d30 A few small cleanups to the property code.
git-svn-id: svn://localhost/ardour2/branches/3.0@6816 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-31 22:17:01 +00:00
14b0ca31bc handle deletion of UI objects between the time that a callback is queued with the UI event loop and the execution of the callback (intrusive, big)
git-svn-id: svn://localhost/ardour2/branches/3.0@6807 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-30 15:18:43 +00:00
Carl Hetherington
896aa29dcf Remove use of xmlCleanupParser as suggested in the libxml2 docs. Fixes #3047.
git-svn-id: svn://localhost/ardour2/branches/3.0@6793 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-25 01:24:59 +00:00
587021ac0b make another note about win32 C++ sym name demangling
git-svn-id: svn://localhost/ardour2/branches/3.0@6776 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-19 13:34:25 +00:00
f36bd6993f make a note about win32 C++ sym name demangling
git-svn-id: svn://localhost/ardour2/branches/3.0@6775 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-19 02:56:58 +00:00
f0748535a5 save tearoff state; restore monitor section state reasonably well; fixup access control to parts of editor.h (needs more work); extend CrossThread just a little
git-svn-id: svn://localhost/ardour2/branches/3.0@6774 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-19 02:49:01 +00:00
6ef5d85ae1 changes from 2.X starting in march 2009 through oct 20 2009 (5826 inclusive)
git-svn-id: svn://localhost/ardour2/branches/3.0@6761 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-16 15:33:04 +00:00
93dac756a2 prevent relaying during an undo/redo operation; remove some debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@6728 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-04 15:55:08 +00:00
0e10f8a290 add new file
git-svn-id: svn://localhost/ardour2/branches/3.0@6727 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-04 15:01:27 +00:00
6dde6c5a8f goodbye to MementoCommand for playlists
git-svn-id: svn://localhost/ardour2/branches/3.0@6726 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-04 13:15:04 +00:00
3a85e71031 (1) stop using mangled names in history state, use demangled ones instead (2) fix region split so that the generated regions have the right start points in the source(s)
git-svn-id: svn://localhost/ardour2/branches/3.0@6721 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 19:12:01 +00:00
17088ee3ea (1) remove most uses of MementoCommand for Playlist and Region (2) move frozen state from Region into Stateful, renamed "suspend property changes" (3) successive changes to a Property (scalar) after clear_history() do not keep resetting the old value (fixes region trim)
git-svn-id: svn://localhost/ardour2/branches/3.0@6720 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 18:05:26 +00:00
a5ab2e99e1 PBD::capitalize() and use it to for the XML node name of a SequenceProperty's history node
git-svn-id: svn://localhost/ardour2/branches/3.0@6719 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 01:05:14 +00:00
db8b575c30 the mega-properties/SequenceProperty patch. split is broken at present (right hand starts has start-in-source of zero)
git-svn-id: svn://localhost/ardour2/branches/3.0@6718 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-03-02 00:00:00 +00:00
5fe37dbc53 Uncrustify. Sorry. :)
git-svn-id: svn://localhost/ardour2/branches/3.0@6704 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19 23:46:00 +00:00
d9d1a4a5cf add begin/end undo/redo signals so that playlist can freeze/thaw itself around potentially NxM region property changes; clean up debug output; don't connect streamview to Playlist::ContentsChanged because there appears to be no need for it - we catch add/remove region, and region property changes are handled by RegionView
git-svn-id: svn://localhost/ardour2/branches/3.0@6702 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19 21:49:56 +00:00
fa701b8c06 change PropertyChange from a bitfield into a real object, with all the many widespread changes that causes
git-svn-id: svn://localhost/ardour2/branches/3.0@6701 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-19 18:09:08 +00:00
95b8a69a58 overall timing for undo/redo ops
git-svn-id: svn://localhost/ardour2/branches/3.0@6699 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-18 16:34:09 +00:00
ce7a5e1c9f the Properties & 64bit region commit
git-svn-id: svn://localhost/ardour2/branches/3.0@6695 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-18 13:59:49 +00:00
cdcc4d3720 new file
git-svn-id: svn://localhost/ardour2/branches/3.0@6686 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-15 16:25:46 +00:00
ab7f800fb4 split out State... objects and rename as Property...
git-svn-id: svn://localhost/ardour2/branches/3.0@6682 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-13 17:51:40 +00:00
a1e0dc13df tweak Stateful/StatefulDiffCommand changes so that SessionObject's actually get a name; make StatefulDiffCommand use a weak_ptr, not a raw ptr; use .val() rather than .get() to avoid confusion with boost:: smart ptr method of the same name
git-svn-id: svn://localhost/ardour2/branches/3.0@6678 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-11 23:10:29 +00:00
Carl Hetherington
3a27410dcb More tinkering with State<>. Use some StateDiffCommands instead of
MementoCommand<Region>.  More use of State<> for Region members.


git-svn-id: svn://localhost/ardour2/branches/3.0@6675 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-11 17:08:34 +00:00
Carl Hetherington
3c00a7ca2a Move ARDOUR::Change into PBD so that Stateful can be aware of
what Change a State reflects.  Hence allow Stateful to do some
of the work of set/get_state in Region.


git-svn-id: svn://localhost/ardour2/branches/3.0@6671 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-10 01:38:20 +00:00
Carl Hetherington
12b9571b80 Save and not-yet-working restore of StatefulDiffCommands.
git-svn-id: svn://localhost/ardour2/branches/3.0@6669 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-09 22:28:46 +00:00
Carl Hetherington
dbc3faa913 Remove erroneous delete of States; they are owned by the subclass that adds them.
git-svn-id: svn://localhost/ardour2/branches/3.0@6666 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-09 22:26:14 +00:00
Carl Hetherington
5526aa2935 Add missing files from previous commit.
git-svn-id: svn://localhost/ardour2/branches/3.0@6665 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-09 14:44:24 +00:00
Carl Hetherington
a5c59175eb Modify Stateful to allow undo to be done using differences in state.
git-svn-id: svn://localhost/ardour2/branches/3.0@6664 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-09 14:44:01 +00:00
1afb1cfea4 add variants of atoi etc. for std::string
git-svn-id: svn://localhost/ardour2/branches/3.0@6651 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-08 19:37:51 +00:00
222c18d18a add copy constructor for PBD::ID
git-svn-id: svn://localhost/ardour2/branches/3.0@6650 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-02-08 19:37:30 +00:00
832aa18a81 a boatload of minor and middle-sized changes to try to speed up undo. imperfect, unfinished, but probably right to commit now
git-svn-id: svn://localhost/ardour2/branches/3.0@6561 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-25 20:34:09 +00:00
6572f421a4 provide limited momentary note on/off MIDI binding option; remove some debugging output; add bank selector to generic MIDI UI
git-svn-id: svn://localhost/ardour2/branches/3.0@6430 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-01-01 18:14:32 +00:00
6c717a56e2 new PBD::ControllableDescriptor class to encapsulate parsing of binding URIs and speed up lookup at runtime
git-svn-id: svn://localhost/ardour2/branches/3.0@6427 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 23:43:47 +00:00
e00506b0ad strsplit(): if first char of a string is the separator, don't push an empty string into the return vector
git-svn-id: svn://localhost/ardour2/branches/3.0@6426 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 23:43:09 +00:00
8ae20c0c4d stop metering thread as we disconnect a session from audioengine; explicitly drop connections early in ~Route so that we don't still have signals being handled while we destruct; fix up some valgrind warnings
git-svn-id: svn://localhost/ardour2/branches/3.0@6425 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 19:49:22 +00:00
c6d5124269 update comments on register clobbering
git-svn-id: svn://localhost/ardour2/branches/3.0@6423 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 18:19:46 +00:00
569226e64e un-fix register clobber list for gcc on x86
git-svn-id: svn://localhost/ardour2/branches/3.0@6422 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 18:16:03 +00:00
53b0b4d114 add some asm notes, some more registers back to the clobber list, and memset the fxsave area in FPU::FPU()
git-svn-id: svn://localhost/ardour2/branches/3.0@6420 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 17:51:27 +00:00
Sakari Bergen
019100470a Fix assembler clobber lists in BPD::FPU
git-svn-id: svn://localhost/ardour2/branches/3.0@6419 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-31 17:41:13 +00:00
74933f5865 restore excess calls to sync-order stuff (for now); allow MIDI controllers to use the same non-linear fader response as the gui; add various flags to PBD::Controllable and remove URI from that class
git-svn-id: svn://localhost/ardour2/branches/3.0@6414 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-30 16:48:58 +00:00
109acd1568 MIDI binding maps make their debut
git-svn-id: svn://localhost/ardour2/branches/3.0@6408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-28 16:49:44 +00:00
35c72a53b4 change the way thread name is managed and accessed; store thread name for JACK thread(s); remove bits of debugging output
git-svn-id: svn://localhost/ardour2/branches/3.0@6399 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-26 16:15:11 +00:00
b6f4cdaea2 rationalize destruction pathway (some more); tidy-ify some ImageFrame code
git-svn-id: svn://localhost/ardour2/branches/3.0@6398 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-25 21:06:52 +00:00
f53cbaede8 clean up editor mixer strip when session is going away; slightly improved boost debugging
git-svn-id: svn://localhost/ardour2/branches/3.0@6397 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-24 04:04:01 +00:00
c83389b8ec cleanup up cleanup at session destruction; clarify the meaning of 3 signals (DropReferences & Destroyed in libardour ; CatchDeletion in the GTK UI); clarify ownership of objects (session no longer pays attention to DropReferences for objects that it is considered to own, such as routes, sources, etc); fix up MIDI parsing and a couple of other places by correcting syntax for return of values from a boost::signals2::signal (possible danger elsewhere to be checked)
git-svn-id: svn://localhost/ardour2/branches/3.0@6389 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-22 20:21:43 +00:00
f450df300c fully implement and deploy explicit x-thread signal connection syntax (testing comes next)
git-svn-id: svn://localhost/ardour2/branches/3.0@6379 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-21 18:23:07 +00:00
738387f9a4 remove a couple of boost::signals2 trouble spots; fix some --strict compile time warnings
git-svn-id: svn://localhost/ardour2/branches/3.0@6378 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-20 16:50:41 +00:00
aae367b63c use new syntax for connecting to backend signals that enforces explicit connection scope, plus a few other related matters
git-svn-id: svn://localhost/ardour2/branches/3.0@6376 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19 20:26:31 +00:00
cbb272af44 added files
git-svn-id: svn://localhost/ardour2/branches/3.0@6374 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 19:04:07 +00:00
f6fdd8dcbf switch to using boost::signals2 instead of sigc++, at least for libardour. not finished yet, but compiles, loads sessions, records and can close a session without a crash
git-svn-id: svn://localhost/ardour2/branches/3.0@6372 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-17 18:24:23 +00:00
8687895abb remove using namespace sigc everywhere to ensure clarity over which bind/mem_fun is being used; make Config::map_parameters take a boost::function rather than a sigc::slot ; continue debugging crash caused by regionviews not tracking their Region's lifetime
git-svn-id: svn://localhost/ardour2/branches/3.0@6357 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-12 15:02:15 +00:00
401c7091c8 switch to use boost::function for UI::call_slot operations, to avoid a serious thread safety issue with libsigc++
git-svn-id: svn://localhost/ardour2/branches/3.0@6355 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 23:30:48 +00:00
d7de23db0f added comment
git-svn-id: svn://localhost/ardour2/branches/3.0@6352 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 19:23:45 +00:00
70b75d656e add CTClosure for a closure that takes one argument at call time
git-svn-id: svn://localhost/ardour2/branches/3.0@6351 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 19:22:59 +00:00
9fa8a7e9c2 add comments and remove debug output
git-svn-id: svn://localhost/ardour2/branches/3.0@6350 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 18:21:08 +00:00
12172ff178 thread-safe but lifetime-unsafe closures for passing closures around instead of sigc::slot, which is thread-unsafe but lifetime-safe (lifetime safe means that the slot is guaranteed to be safe to use no matter what the lifetime of the object to which it refers is)
git-svn-id: svn://localhost/ardour2/branches/3.0@6349 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 18:08:30 +00:00
53bbac4eb6 fix compilation breakages from the last commit
git-svn-id: svn://localhost/ardour2/branches/3.0@6347 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 03:18:17 +00:00
2983f8de97 (MAY BREAK COMPILATION - unfinished work, being transferred between machines via svn) ... start to make MidiControllable bind to a URI, not an object
git-svn-id: svn://localhost/ardour2/branches/3.0@6346 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-11 02:00:22 +00:00
b1a7fd9366 avoid double delete of UI objects caused by default behaviour of Glib::Private
git-svn-id: svn://localhost/ardour2/branches/3.0@6341 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 20:50:12 +00:00
90d6916ca3 restore rec-enable, solo & mute functionality; remove all Global*Command cruft; reimplement momentary solo&mute; refactor session RT event stuff to be even cleaner and finally compatible with everything-is-a-UI idea ; make all UIs derive from a primitive type that pprovides only void call_slot (sigc::slot<void>) as a way to execute arbitrary code in the UI thread
git-svn-id: svn://localhost/ardour2/branches/3.0@6338 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-10 17:45:18 +00:00
b8b55ef003 OSC is now driven by an event loop; fix up lifetime mgmt of Glib::Source to workaround bug in Glib
git-svn-id: svn://localhost/ardour2/branches/3.0@6329 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-09 18:37:06 +00:00
c38e02285f major design changes: use glib event loop for MIDI thread/UI; rework design of BaseUI and AbstractUI; solo & mute are both temporarily broken; OSC control up next; may segfault during exit
git-svn-id: svn://localhost/ardour2/branches/3.0@6328 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-09 03:05:14 +00:00
Taybin Rutkin
52b4b464f9 Merged revisions 6292,6294-6295,6311,6314 via svnmerge from
svn+ssh://ardoursvn@subversion.ardour.org/ardour2/branches/build_fixes

........
  r6292 | trutkin | 2009-12-05 08:31:25 -0500 (Sat, 05 Dec 2009) | 1 line
  
  remove scons build files
........
  r6294 | trutkin | 2009-12-05 09:11:17 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  cairomm
  remove unnecessary vendor libraries as we now rely on the developer to install them
........
  r6295 | trutkin | 2009-12-05 09:12:54 -0500 (Sat, 05 Dec 2009) | 2 lines
  
  soundtouch
  remove unnecessary vendor libraries as we now rely on the developer to install them
........
  r6311 | trutkin | 2009-12-05 23:38:49 -0500 (Sat, 05 Dec 2009) | 2 lines

  glibmm2, gtkmm2, libgnomecanvasmm, sigc++2  
  remove unnecessary vendor libraries as we now rely on the developer to install them
........
  r6314 | trutkin | 2009-12-06 09:15:49 -0500 (Sun, 06 Dec 2009) | 4 lines
  
  remove scons referencing from Makefile
  
  - TODO: should move cscope stuff to waf and get rid of the Makefile
........


git-svn-id: svn://localhost/ardour2/branches/3.0@6315 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-06 14:21:46 +00:00
0fe48475db switch ActionManager to a namespace; move generic part into libgtkmm2ext
git-svn-id: svn://localhost/ardour2/branches/3.0@6285 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 20:52:04 +00:00
4a3d7877f6 cross-thread handling of SessionEvent allocation/deallocation, with widespread consequences
git-svn-id: svn://localhost/ardour2/branches/3.0@6283 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-04 19:24:09 +00:00
51693a3a58 tracing and small fixes to improve object destruction pathways
git-svn-id: svn://localhost/ardour2/branches/3.0@6195 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-28 00:49:04 +00:00
e5b6e06f83 get closer to carl's original boost shared_ptr debug idea by just tracking actual shared_ptr constructors+destructors
git-svn-id: svn://localhost/ardour2/branches/3.0@6190 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-27 17:30:39 +00:00
2b42f32531 tweaks and tuneups of the boost debug stuff - still not done, need to track "scope" for grouping output properly
git-svn-id: svn://localhost/ardour2/branches/3.0@6163 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-24 00:09:15 +00:00
5cfeaf4102 boost shared pointer debugging, from an idea by carl hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@6155 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-23 17:33:39 +00:00
8f50846090 make PBD::stacktrace() actually work
git-svn-id: svn://localhost/ardour2/branches/3.0@6047 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-09 16:28:39 +00:00
640a358fdc Fix wacky tabs. Apologies to anybody actually compiling right now. :)
git-svn-id: svn://localhost/ardour2/branches/3.0@5997 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-01 17:57:57 +00:00
b63a9fd4ca Use shared_ptr::unique() instead of shared_ptr::use_count() == 1.
use_count() can be slow (not constant time) depending on underlying implementation.
Similar situation to std::list::size() == 0 an std::list::empty(), the former
does a big traversal/computation only to check if the very first step went.
I think the current boost implementation is just a reference count anyway, but
hey.  In theory.


git-svn-id: svn://localhost/ardour2/branches/3.0@5996 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-01 17:25:38 +00:00
6bb5487852 Doxygen readable comments, tidy, fix whitespace.
git-svn-id: svn://localhost/ardour2/branches/3.0@5995 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-01 17:12:41 +00:00
c3f6ab344c add lots of comments to rcu.h (with concomittant full recompile)
git-svn-id: svn://localhost/ardour2/branches/3.0@5994 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-01 16:25:52 +00:00
c4ac437490 * libardour uses ARDOUR::nframes_t and ARDOUR::nframes64_t explicitly in headers
* use explicit operator<< and operator>> that in turn use PBD::EnumWriter when serializing and deserializing to/from rc files
* adds scrolling in mixer window (from 2.X)
* BBT math stuff - untested, but basically operational
* move LocaleGuard into its own file(s) in libs/pbd
* Tempo now uses nframes64_t everywhere (except for sample rate values)
* as in 2.X, use mkstemp and hack to avoid temp file nonsense, and remove erroneous free() from disk stats output


git-svn-id: svn://localhost/ardour2/branches/3.0@5961 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-28 21:36:40 +00:00
c71f419920 Make ARDOUR::init safer.
git-svn-id: svn://localhost/ardour2/branches/3.0@5950 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-27 18:00:45 +00:00
bc56eb8bd7 Fix unused parameter warnings since GCC apparently doesn't feel like listening to -Wno-unused-parameter
git-svn-id: svn://localhost/ardour2/branches/3.0@5835 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-21 00:15:42 +00:00
Carl Hetherington
271f298635 Since add_property creates new XMLProperty objects, remove_property should probably delete them. Although remove_property is only used in one place in Ardour that I can see.
git-svn-id: svn://localhost/ardour2/branches/3.0@5824 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-20 18:44:44 +00:00
52607dd6ef Fix warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@5794 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-19 14:06:54 +00:00
8713667ec1 rework Stateful::set_state() patch to avoid default version argument
git-svn-id: svn://localhost/ardour2/branches/3.0@5787 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 18:56:11 +00:00
Carl Hetherington
79f91c7a20 Part 1 of loading 2.X sessions; some things work, some things don't, hacks a-plenty.
LOADING 2.X SESSIONS WITH THIS COMMIT IN PLACE WILL (PROBABLY) CORRUPT THE .ardour FILE,
MAKING THE SESSION UNLOADABLE ON 2.X AND LOSING INFORMATION.

So don't do that unless you make a backup of the session file first.



git-svn-id: svn://localhost/ardour2/branches/3.0@5786 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-15 00:57:55 +00:00
Carl Hetherington
c5e3ff16cb Fix some compiler warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@5746 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-06 23:58:29 +00:00
Sakari Bergen
1928f286e9 Fix some trivial compiler warnings and add editor_imageframe.cc to gtk2_ardour/wscript
git-svn-id: svn://localhost/ardour2/branches/3.0@5716 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-02 11:16:15 +00:00
bcc929a5b6 waf build works on OS X ; new bindings file and processing system in place for mnemonic-us
git-svn-id: svn://localhost/ardour2/branches/3.0@5498 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-08-08 22:36:32 +00:00
3804e3bc49 Update autowaf.
git-svn-id: svn://localhost/ardour2/branches/3.0@5414 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-22 20:51:13 +00:00
Carl Hetherington
b65f8073ba Fix some unused parameter warnings.
git-svn-id: svn://localhost/ardour2/branches/3.0@5403 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-21 15:55:17 +00:00
7884727e78 massive changes to waf build scripts so that nearly everything "should" be working now except for i18n (OSC is not quite right) ; some preliminary work on post-main-out handling, incomplete; a couple of fixes from -Wall and valgrind
git-svn-id: svn://localhost/ardour2/branches/3.0@5371 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-17 22:12:21 +00:00
88beef2e93 merge pre- and post-fader processor boxes; start removing Placement (not finished) ; add -DWAF_BUILD and use per-directory foobar-config.h to correctly pick up configure-time settings like HAVE_OGG ; check for libgiomm (part of upgrade to newer gtk stack); 32 bit marker reload fix from 2.X; audiounit IO config cache fix from 2.X; multi-add route template fix from 2.X; plugin GUI delete fix from 2.X; solo button labels are A or P for listen mode
git-svn-id: svn://localhost/ardour2/branches/3.0@5344 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-07-13 00:26:28 +00:00
472fa271fd Fix end-marker-is-free option in templates.
git-svn-id: svn://localhost/ardour2/branches/3.0@5122 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-06-03 16:50:46 +00:00
Carl Hetherington
01217e64f8 Patch from agorka to add some includes required for building with the GCC shipped with Ubuntu Karmic.
git-svn-id: svn://localhost/ardour2/branches/3.0@5098 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-18 00:21:17 +00:00
0569107ddc more work on the new all-Processor-all-The-Time redesign of Route - LOTS OF BREAKAGE STILL EXPECTED ; change all(?) methods that pass a start/end frame in to use sframes_t not nframes_t
git-svn-id: svn://localhost/ardour2/branches/3.0@5074 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-13 21:34:09 +00:00
Carl Hetherington
3b89d9eaa0 Remove most using declarations from header files.
git-svn-id: svn://localhost/ardour2/branches/3.0@5069 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-12 17:03:42 +00:00
d3d1e2c286 Strip trailing whitespace from waf scripts.
git-svn-id: svn://localhost/ardour2/branches/3.0@5045 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-05-04 22:10:15 +00:00
9ec3728796 Fix local include.
git-svn-id: svn://localhost/ardour2/branches/3.0@5016 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-30 16:47:51 +00:00
2836879341 remove offset from process callback tree. some breakage may have occured. yes, really.
git-svn-id: svn://localhost/ardour2/branches/3.0@4999 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-23 17:48:37 +00:00
0a22716b74 new file to encapsulate posix_memalign() hackery
git-svn-id: svn://localhost/ardour2/branches/3.0@4998 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-23 17:43:39 +00:00
3ae378a17c Upgrade to waf 1.5.4.
git-svn-id: svn://localhost/ardour2/branches/3.0@4991 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-18 16:15:12 +00:00
a4b8955f3e part 2 of 3 of the 2.8 -> 3.0 merge
git-svn-id: svn://localhost/ardour2/branches/3.0@4987 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-04-16 16:02:25 +00:00
f613d3fe14 recursive operation for PBD::PathScanner, backported from 2.X
git-svn-id: svn://localhost/ardour2/branches/3.0@4712 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-03-02 16:52:10 +00:00
903c0863d9 Waf: install stuff
git-svn-id: svn://localhost/ardour2/branches/3.0@4702 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-27 04:40:44 +00:00
76f242cb80 Version file building stuff.
Ardour should now compile from a fresh svn checkout using only waf.


git-svn-id: svn://localhost/ardour2/branches/3.0@4671 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-26 02:24:16 +00:00
1d516ac95a Waf building of rubberband.
Use rubberband over soundtouch with waf for the time being.


git-svn-id: svn://localhost/ardour2/branches/3.0@4669 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-26 01:22:20 +00:00
3bc71af0ca Clean up checks.
git-svn-id: svn://localhost/ardour2/branches/3.0@4667 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-26 00:05:51 +00:00
0c0e689d3c Waf building of gtk2_ardour.
git-svn-id: svn://localhost/ardour2/branches/3.0@4662 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 23:21:49 +00:00
310d68b953 Waf building of libardour (yay!).
git-svn-id: svn://localhost/ardour2/branches/3.0@4661 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 21:48:32 +00:00
e0aaed6d65 *** NEW CODING POLICY ***
All #include statements that include a header that is a part of a library
bundled with ardour MUST use quotes, not angle brackets.

Do this:

#include "ardour/types.h"

NOT this:

#include <ardour/types.h>

Rationale:

This is best practice in general, to ensure we include the local version
and not the system version.  That quotes mean "local" (in some sense)
and angle brackets mean "system" (in some sense) is a ubiquitous
convention and IIRC right in the C spec somewhere.

More pragmatically, this is required by (my) waf (stuff) for dependencies
to work correctly.  That is:

!!! FAILURE TO DO THIS CAN RESULT IN BROKEN BUILDS !!!

Failure to comply is punishable by death by torture. :)

P.S. It's not that dramatic in all cases, but this (in combination with some
GCC flags specific to the include type) is the best way I have found to be
absolutely 100% positive the local ones are being used (and we definitely
want to be absolutely 100% positive on that one).


git-svn-id: svn://localhost/ardour2/branches/3.0@4655 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 18:26:51 +00:00
16d9776646 Move waf up to top level, waf building of pbd, evoral, midi++
git-svn-id: svn://localhost/ardour2/branches/3.0@4654 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 17:51:42 +00:00
77a71ac3e0 Fix empty for loop warning in RingBuffer constructor... and scary indentation... this is what was intended here, yes?
git-svn-id: svn://localhost/ardour2/branches/3.0@4652 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-25 17:23:15 +00:00
c9e5903e73 Clean up xml++.h and xml++.cc in Ardour style.
No functional changes.
(We've diverged far enough for it to not matter, and are about to diverge even more, so might as well).


git-svn-id: svn://localhost/ardour2/branches/3.0@4649 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-22 20:52:34 +00:00
5b04ddf424 Make commands noncopyable (they are definitely not copy safe).
memento_command.h style.


git-svn-id: svn://localhost/ardour2/branches/3.0@4648 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-22 17:37:33 +00:00
e209e0d471 Remove empty files.
git-svn-id: svn://localhost/ardour2/branches/3.0@4629 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-18 23:58:21 +00:00