X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Fimportable_source.h;h=9463f0b28b772b009d6ecc7b0c5ae9318dcfee11;hb=065d7c852a1586a3020affd6905f108abf252119;hp=801e7888a96f98103df58db40c95144ba95a6517;hpb=bb9cc45cd22af67ac275a5e73accbe14fee664d8;p=ardour.git diff --git a/libs/ardour/ardour/importable_source.h b/libs/ardour/ardour/importable_source.h index 801e7888a9..9463f0b28b 100644 --- a/libs/ardour/ardour/importable_source.h +++ b/libs/ardour/ardour/importable_source.h @@ -21,22 +21,25 @@ #define __ardour_importable_source_h__ #include "pbd/failed_constructor.h" +#include "ardour/libardour_visibility.h" #include "ardour/types.h" namespace ARDOUR { -class ImportableSource { +class LIBARDOUR_API ImportableSource { public: ImportableSource () {} virtual ~ImportableSource() {} - virtual nframes_t read (Sample* buffer, nframes_t nframes) = 0; - virtual float ratio() const { return 1.0f; } - virtual uint32_t channels() const = 0; - virtual nframes_t length() const = 0; - virtual nframes_t samplerate() const = 0; - virtual void seek (nframes_t pos) = 0; - virtual nframes64_t natural_position() const = 0; + virtual framecnt_t read (Sample* buffer, framecnt_t nframes) = 0; + virtual float ratio() const { return 1.0f; } + virtual uint32_t channels() const = 0; + virtual framecnt_t length() const = 0; + virtual framecnt_t samplerate() const = 0; + virtual void seek (framepos_t pos) = 0; + virtual framepos_t natural_position() const = 0; + + virtual bool clamped_at_unity () const = 0; }; }