summaryrefslogtreecommitdiff
path: root/libs/ardour/ardour/bundle.h
AgeCommit message (Collapse)Author
2020-04-09some potentially helpful but trivial commentsPaul Davis
2019-09-30Fix remaining doxygen warnings (!)Robin Gareus
2019-08-03Update libardour GPL boilerplate and (C) from git logRobin Gareus
2017-08-28Make Bundle::connected_to() optionally check for exclusivityJulien "_FrnchFrgg_" RIVAUD
If the new optional argument is true, then the first bundle will also check if it has other connections than to the given bundle.
2017-08-28Make Bundle::connected_to() able to check only a single DataTypeJulien "_FrnchFrgg_" RIVAUD
Also use the same iteration logic than in Bundle::connect to avoid mismatched port types.
2017-08-23Make Bundle::connect able to connect only some DataTypesJulien "_FrnchFrgg_" RIVAUD
When |allow_partial| is true, only when the number of channels of a given DataType is the same for both bundles are the corresponding channels connected together. When |allow_partial| is false (the default), the number of channels must match for each DataType (the ChanCounts must be equal) for the connection to be attempted. This also fixes the logic in case two bundles have the same number of channels, or even the same ChanCounts, but not with the DataTypes in the same order (so connecting the ith channel of the bundle to the ith channel of the other bundle makes no sense).
2017-08-23Improve getting a Bundle total channel countJulien "_FrnchFrgg_" RIVAUD
|Bundle::nchannels()| creates a ChanCount on demand, by iterating over the |_channel| member variable. The sum of all |nchannels().n(t)| over all non-NIL DataTypes |t| is thus equal to |_channel.size()|. Consequently, calling |nchannels().n_total()| is a convoluted (and slow) way of getting |_channel.size()|. Add a method |Bundle::n_total()| that directly returns the latter.
2013-10-17add export visibility macros across libardourPaul Davis
2012-07-25convert from Glib:: to Glib::Threads for all thread-related APIPaul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@13084 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-24Compile cleanly with clang.David Robillard
To compile Ardour with LLVM/clang, do the usual thing but set the CXX and CC environment variables, e.g.: CC=/usr/bin/clang CXX=/usr/bin/clang++ ./waf configure build git-svn-id: svn://localhost/ardour2/branches/3.0@12418 d708f5d6-7413-0410-9779-e7cbd77b26cf
2012-05-21Slightly hacky improvement to embolden the labels ofCarl Hetherington
connection matrix tabs when they have connections. git-svn-id: svn://localhost/ardour2/branches/3.0@12371 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-08Fix a few SNAFUs in the port matrix related to multi-type bundles (#4454).Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@10494 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-08Attempt to fix some confusions caused by bundles containingCarl Hetherington
different types of port; if we loop over N MIDI channels of a mixed bundle, for example, we must convert 0...N to the indices of the channels within the bundle. Also remove the hack of creating new bundles to contain a subset of another bundle's ports; if you do this, any signals emitted by the other bundle are ignored. Should fix #4454. git-svn-id: svn://localhost/ardour2/branches/3.0@10490 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-11-03Don't offer inputs to things as possible output connections, and vice versa ↵Carl Hetherington
(part of #4432). git-svn-id: svn://localhost/ardour2/branches/3.0@10410 d708f5d6-7413-0410-9779-e7cbd77b26cf
2011-01-29Add operator<< for bundles.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@8606 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-30Put Mackie surface ports into the Ardour tab of the port matrix.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7522 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-07-29Don't display empty tabs in the port matrix.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@7521 d708f5d6-7413-0410-9779-e7cbd77b26cf
2010-06-30Basic tweaks to make the bundles and the port matrix accept that MIDI tracks ↵Carl Hetherington
may have audio IO, and vice versa. Allows connection of instrument tracks using the global port matrix. git-svn-id: svn://localhost/ardour2/branches/3.0@7335 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-12-19use new syntax for connecting to backend signals that enforces explicit ↵Paul Davis
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-17switch to using boost::signals2 instead of sigc++, at least for libardour. ↵Paul Davis
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-14Offer all of a bundle's ports for disconnection / removal when opening a ↵Carl Hetherington
menu over a bundle's name in the port matrix. git-svn-id: svn://localhost/ardour2/branches/3.0@6365 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-10Various adjustments to user bundle handling, with the general aim of ↵Carl Hetherington
allowing the user to create meaningful bundles with respect to their sound card an outboard setup, and having those user bundles take priority over ardour-generated ones. git-svn-id: svn://localhost/ardour2/branches/3.0@6050 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-11-07Various tweaks to the bundle manager.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@6030 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-10-14Strip trailing whitespace and fix other whitespace errors (e.g. space/tab ↵David Robillard
mixing). Whitespace changes only. Vimmers, try let c_space_errors = 1 in your .vimrc to highlight this kind of stuff in red. I don't know the emacs equivalent... git-svn-id: svn://localhost/ardour2/branches/3.0@5773 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-11Add connected_to ()Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4527 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-09Fixes to bundle manager to make it vaguely usable.Carl Hetherington
Rework signal handling for bundles so that all changes should now be noticed by port matrices. git-svn-id: svn://localhost/ardour2/branches/3.0@4501 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-02-02Re-enable creation of stereo bundles for system IO, so that the mixer stripCarl Hetherington
connection menus for stereo tracks are populated again. Also enable disconnection via these menus. git-svn-id: svn://localhost/ardour2/branches/3.0@4481 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-30More port matrix re-working. Global matrix now has separate visibility buttonsCarl Hetherington
for ins and outs. The matrix will now be arranged so that more ports are labelled horizontally than vertically, to aid readability. git-svn-id: svn://localhost/ardour2/branches/3.0@4467 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-27Make track sends etc. appear in the same bundle as the track. Tidy up ↵Carl Hetherington
bundle channel naming a bit. git-svn-id: svn://localhost/ardour2/branches/3.0@4448 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-24Gather all ardour: ports so that a few more things are found to put in the ↵Carl Hetherington
port matrix. git-svn-id: svn://localhost/ardour2/branches/3.0@4439 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-20New matrix-based editor for connections and bundles, based on thorwil's design.Carl Hetherington
Add Bundle Manager dialog. git-svn-id: svn://localhost/ardour2/branches/3.0@4415 d708f5d6-7413-0410-9779-e7cbd77b26cf
2009-01-14Make Bundles work a bit better. A few include optimisations.Carl Hetherington
git-svn-id: svn://localhost/ardour2/branches/3.0@4408 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-09-10merge from 2.0-ongoing @ 3581Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3711 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02rollback to 3428, before the mysterious removal of libs/* at 3431/3432Paul Davis
git-svn-id: svn://localhost/ardour2/branches/3.0@3435 d708f5d6-7413-0410-9779-e7cbd77b26cf
2008-06-02remove empty sigc++2 directoryDoug McLain
git-svn-id: svn://localhost/ardour2/branches/3.0@3432 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-19Various work on bundles. We now have a Bundle Manager dialogue, and ↵Carl Hetherington
hopefully things are a bit cleaner internally. This commit changes the session file format with respect to bundles (or Connections as they used to be called). git-svn-id: svn://localhost/ardour2/trunk@2561 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-10-08Various work on Bundles, especially dynamic ones so that you can, for ↵Carl Hetherington
example, pass tracks to busses by selecting the buss name from the track's output menu. git-svn-id: svn://localhost/ardour2/trunk@2530 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-06-17Move Stateful class declared in pbd/stateful.h into the PBD namespaceTim Mayberry
git-svn-id: svn://localhost/ardour2/trunk@2011 d708f5d6-7413-0410-9779-e7cbd77b26cf
2007-05-18Rename ARDOUR::Connection to ARDOUR::Bundle, a few minor cleanups along the way.Carl Hetherington
git-svn-id: svn://localhost/ardour2/trunk@1882 d708f5d6-7413-0410-9779-e7cbd77b26cf