first part of MIDI cut/copy/paste ; fix for input/output_streams of an IOProcessor being reported in a misleading way; in/out translation fix from 2.X, sort of

git-svn-id: svn://localhost/ardour2/branches/3.0@5510 d708f5d6-7413-0410-9779-e7cbd77b26cf
This commit is contained in:
Paul Davis
2009-08-10 19:29:29 +00:00
parent 7f9aea14e9
commit 0bf3eb7759
13 changed files with 286 additions and 144 deletions

View File

@@ -53,8 +53,6 @@ class IOProcessor : public Processor
bool set_name (const std::string& str);
virtual ChanCount output_streams() const;
virtual ChanCount input_streams () const;
virtual ChanCount natural_output_streams() const;
virtual ChanCount natural_input_streams () const;

View File

@@ -1061,10 +1061,16 @@ IO::build_legal_port_name (DataType type)
throw unknown_type();
}
/* note that if "in" or "out" are translated it will break a session
across locale switches because a port's connection list will
show (old) translated names, but the current port name will
use the (new) translated name.
*/
if (_direction == Input) {
suffix += _("_in");
suffix += X_("_in");
} else {
suffix += _("_out");
suffix += X_("_out");
}
// allow up to 4 digits for the output port number, plus the slash, suffix and extra space

View File

@@ -220,18 +220,6 @@ IOProcessor::silence (nframes_t nframes)
}
}
ChanCount
IOProcessor::output_streams() const
{
return _output ? _output->n_ports() : ChanCount::ZERO;
}
ChanCount
IOProcessor::input_streams () const
{
return _input ? _input->n_ports() : ChanCount::ZERO;
}
ChanCount
IOProcessor::natural_output_streams() const
{

View File

@@ -232,6 +232,8 @@ Processor::configure_io (ChanCount in, ChanCount out)
_configured_output = out;
_configured = true;
std::cerr << "******* CONF IN for " << _name << " set to " << in << std::endl;
ConfigurationChanged.emit (in, out);
return true;

View File

@@ -422,7 +422,7 @@ Route::process_output_buffers (BufferSet& bufs,
for (ProcessorList::iterator i = _processors.begin(); i != _processors.end(); ++i) {
if (bufs.count() != (*i)->input_streams()) {
cerr << _name << " bufs = " << bufs.count()
<< " input = " << (*i)->input_streams()
<< " input for " << (*i)->name() << " = " << (*i)->input_streams()
<< endl;
}
assert (bufs.count() == (*i)->input_streams());