/* */ #ifndef _D_DEFAULT_BT_PROGRESS_INFO_FILE_H_ #define _D_DEFAULT_BT_PROGRESS_INFO_FILE_H_ #include "BtProgressInfoFile.h" namespace aria2 { class DownloadContext; class PieceStorage; class Logger; class Option; class DefaultBtProgressInfoFile : public BtProgressInfoFile { private: SharedHandle _dctx; SharedHandle _pieceStorage; const Option* _option; Logger* _logger; std::string _filename; bool isTorrentDownload(); static const std::string V0000; static const std::string V0001; public: DefaultBtProgressInfoFile(const SharedHandle& btContext, const SharedHandle& pieceStorage, const Option* option); virtual ~DefaultBtProgressInfoFile(); virtual std::string getFilename() { return _filename; } virtual bool exists(); virtual void save(); virtual void load(); virtual void removeFile(); // re-set filename using current _dctx. virtual void updateFilename(); }; } // namespace aria2 #endif // _D_DEFAULT_BT_PROGRESS_INFO_FILE_H_