X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fardour%2Fardour%2Ffile_source.h;h=ac073d934ccc4dd38b0652bae43fb793bb55613a;hb=0582221;hp=f1b42aa2ae213656497b6ada956bea84b7b767b2;hpb=384c0a9facf1bfecc783ac048dbb0bae4ad901fd;p=ardour.git diff --git a/libs/ardour/ardour/file_source.h b/libs/ardour/ardour/file_source.h index f1b42aa2ae..ac073d934c 100644 --- a/libs/ardour/ardour/file_source.h +++ b/libs/ardour/ardour/file_source.h @@ -28,7 +28,7 @@ namespace ARDOUR { -class MissingSource : public std::exception +class LIBARDOUR_API MissingSource : public std::exception { public: MissingSource (const std::string& p, DataType t) throw () @@ -42,7 +42,7 @@ class MissingSource : public std::exception }; /** A source associated with a file on disk somewhere */ -class FileSource : virtual public Source { +class LIBARDOUR_API FileSource : virtual public Source { public: virtual ~FileSource (); @@ -80,11 +80,16 @@ public: virtual void set_path (const std::string&); - static PBD::Signal3 > AmbiguousFileName; + static PBD::Signal2 > AmbiguousFileName; + void existence_check (); virtual void prevent_deletion (); - virtual void prevent_deletion (); + /** Rename the file on disk referenced by this source to \param newname + */ + int rename (const std::string& name); + + virtual void release_descriptor () {} protected: FileSource (Session& session, DataType type, @@ -105,8 +110,6 @@ protected: uint16_t _channel; bool _within_session; std::string _origin; - bool _open; - }; } // namespace ARDOUR