Exact beat - provide audio->music mapping for region split.
[ardour.git] / libs / ardour / ardour / sndfileimportable.h
index aab8b6ac5999a3ad74005254a787e0cef9f6383b..10c429c5459cdb25e8f2e3b8247813c04b65cf4c 100644 (file)
 
 #include <boost/shared_ptr.hpp>
 #include <sndfile.h>
-#include "pbd/failed_constructor.h"
+#include "ardour/libardour_visibility.h"
 #include "ardour/types.h"
 #include "ardour/importable_source.h"
 
 namespace ARDOUR {
 
-class SndFileImportableSource : public ImportableSource {
+class LIBARDOUR_API SndFileImportableSource : public ImportableSource {
     public:
        SndFileImportableSource (const std::string& path);
        virtual ~SndFileImportableSource();
 
-       nframes_t  read (Sample* buffer, nframes_t nframes);
+       framecnt_t read (Sample* buffer, framecnt_t nframes);
        uint32_t   channels() const;
        framecnt_t length() const;
-       nframes_t  samplerate() const;
-       void       seek (nframes_t pos);
+       framecnt_t samplerate() const;
+       void       seek (framepos_t pos);
        framepos_t natural_position() const;
        bool       clamped_at_unity () const;
 
    protected:
        SF_INFO sf_info;
        boost::shared_ptr<SNDFILE> in;
-        
-        /* these are int64_t so as to be independent of whatever
-           types Ardour may use for framepos_t, framecnt_t etc.
-        */
+
+       /* these are int64_t so as to be independent of whatever
+          types Ardour may use for framepos_t, framecnt_t etc.
+       */
 
        int64_t timecode;
        int64_t get_timecode_info (SNDFILE*, SF_BROADCAST_INFO*, bool&);