13
0

PT import: Minor changes to session

This commit is contained in:
Damien Zammit 2018-10-10 20:17:57 +11:00
parent 244098cb40
commit 3fd7f9478f
3 changed files with 27 additions and 0 deletions

View File

@ -41,6 +41,7 @@
#include <glibmm/threads.h>
#include <ltc.h>
#include <ptfformat.h>
#include "pbd/error.h"
#include "pbd/event_loop.h"
@ -302,6 +303,8 @@ public:
boost::shared_ptr<RouteList> get_routes_with_internal_returns() const;
boost::shared_ptr<RouteList> get_routes_with_regions_at (samplepos_t const) const;
boost::shared_ptr<AudioTrack> get_nth_audio_track (int nth) const;
uint32_t nstripables (bool with_monitor = false) const;
uint32_t nroutes() const { return routes.reader()->size(); }
uint32_t ntracks () const;
@ -1198,6 +1201,9 @@ public:
bool transport_master_is_external() const;
boost::shared_ptr<TransportMaster> transport_master() const;
void import_pt (PTFFormat& ptf, ImportStatus& status);
bool import_sndfile_as_region (std::string path, SrcQuality quality, samplepos_t& pos, SourceList& sources, ImportStatus& status);
protected:
friend class AudioEngine;
void set_block_size (pframes_t nframes);

View File

@ -6460,6 +6460,25 @@ Session::route_removed_from_route_group (RouteGroup* rg, boost::weak_ptr<Route>
}
}
boost::shared_ptr<AudioTrack>
Session::get_nth_audio_track (int nth) const
{
boost::shared_ptr<RouteList> rl = routes.reader ();
rl->sort (Stripable::Sorter ());
for (RouteList::const_iterator r = rl->begin(); r != rl->end(); ++r) {
if (!boost::dynamic_pointer_cast<AudioTrack> (*r)) {
continue;
}
if (--nth > 0) {
continue;
}
return boost::dynamic_pointer_cast<AudioTrack> (*r);
}
return boost::shared_ptr<AudioTrack> ();
}
boost::shared_ptr<RouteList>
Session::get_tracks () const
{

View File

@ -103,6 +103,7 @@ libardour_sources = [
'iec1ppmdsp.cc',
'iec2ppmdsp.cc',
'import.cc',
'import_pt.cc',
'instrument_info.cc',
'internal_return.cc',
'internal_send.cc',
@ -399,6 +400,7 @@ def build(bld):
'libaudiographer',
'libtemporal',
'liblua',
'libptformat',
'zita-resampler',
]
if bld.env['build_target'] != 'mingw':