Ardour  9.0-pre0-582-g084a23a80d
ARDOUR::SourceFactory Class Reference

#include <source_factory.h>

Static Public Member Functions

static void init ()
 
static void terminate ()
 
static std::shared_ptr< Sourcecreate (Session &, const XMLNode &node, bool async=false)
 
static std::shared_ptr< SourcecreateSilent (Session &, const XMLNode &node, samplecnt_t, float sample_rate)
 
static std::shared_ptr< SourcecreateExternal (DataType, Session &, const std::string &path, int chn, Source::Flag, bool announce=true, bool async=false)
 
static std::shared_ptr< SourcecreateWritable (DataType, Session &, const std::string &path, samplecnt_t rate, bool announce=true, bool async=false)
 
static std::shared_ptr< SourcecreateForRecovery (DataType, Session &, const std::string &path, int chn)
 
static std::shared_ptr< SourcecreateFromPlaylist (DataType, Session &, std::shared_ptr< Playlist > p, const PBD::ID &orig, const std::string &name, uint32_t chn, timepos_t start, timepos_t const &len, bool copy, bool defer_peaks)
 
static int peak_work_queue_length ()
 
static int setup_peakfile (std::shared_ptr< Source >, bool async)
 

Static Public Attributes

static PBD::Signal< void(std::shared_ptr< Source >)> SourceCreated
 
static Glib::Threads::Cond PeaksToBuild
 
static Glib::Threads::Mutex peak_building_lock
 
static bool peak_thread_run
 
static std::vector< PBD::Thread * > peak_thread_pool
 
static std::list< std::weak_ptr< AudioSource > > files_with_peaks
 

Detailed Description

Definition at line 37 of file source_factory.h.

Member Function Documentation

◆ create()

static std::shared_ptr<Source> ARDOUR::SourceFactory::create ( Session ,
const XMLNode node,
bool  async = false 
)
static

◆ createExternal()

static std::shared_ptr<Source> ARDOUR::SourceFactory::createExternal ( DataType  ,
Session ,
const std::string &  path,
int  chn,
Source::Flag  ,
bool  announce = true,
bool  async = false 
)
static

◆ createForRecovery()

static std::shared_ptr<Source> ARDOUR::SourceFactory::createForRecovery ( DataType  ,
Session ,
const std::string &  path,
int  chn 
)
static

◆ createFromPlaylist()

static std::shared_ptr<Source> ARDOUR::SourceFactory::createFromPlaylist ( DataType  ,
Session ,
std::shared_ptr< Playlist p,
const PBD::ID orig,
const std::string &  name,
uint32_t  chn,
timepos_t  start,
timepos_t const &  len,
bool  copy,
bool  defer_peaks 
)
static

◆ createSilent()

static std::shared_ptr<Source> ARDOUR::SourceFactory::createSilent ( Session ,
const XMLNode node,
samplecnt_t  ,
float  sample_rate 
)
static

◆ createWritable()

static std::shared_ptr<Source> ARDOUR::SourceFactory::createWritable ( DataType  ,
Session ,
const std::string &  path,
samplecnt_t  rate,
bool  announce = true,
bool  async = false 
)
static

◆ init()

static void ARDOUR::SourceFactory::init ( )
static

◆ peak_work_queue_length()

static int ARDOUR::SourceFactory::peak_work_queue_length ( )
static

◆ setup_peakfile()

static int ARDOUR::SourceFactory::setup_peakfile ( std::shared_ptr< Source ,
bool  async 
)
static

◆ terminate()

static void ARDOUR::SourceFactory::terminate ( )
static

Member Data Documentation

◆ files_with_peaks

std::list<std::weak_ptr<AudioSource> > ARDOUR::SourceFactory::files_with_peaks
static

Definition at line 58 of file source_factory.h.

◆ peak_building_lock

Glib::Threads::Mutex ARDOUR::SourceFactory::peak_building_lock
static

Definition at line 53 of file source_factory.h.

◆ peak_thread_pool

std::vector<PBD::Thread*> ARDOUR::SourceFactory::peak_thread_pool
static

Definition at line 56 of file source_factory.h.

◆ peak_thread_run

bool ARDOUR::SourceFactory::peak_thread_run
static

Definition at line 55 of file source_factory.h.

◆ PeaksToBuild

Glib::Threads::Cond ARDOUR::SourceFactory::PeaksToBuild
static

Definition at line 52 of file source_factory.h.

◆ SourceCreated

PBD::Signal<void(std::shared_ptr<Source>)> ARDOUR::SourceFactory::SourceCreated
static

Definition at line 43 of file source_factory.h.


The documentation for this class was generated from the following file: