forked from premiere/premiere-libtorrent
added torrent_info::remap_files()
This commit is contained in:
parent
bf107858b8
commit
5d1bfc497a
|
@ -80,6 +80,7 @@
|
||||||
* automatically caps files and connections by default to rlimit
|
* automatically caps files and connections by default to rlimit
|
||||||
* added session::is_dht_running() function
|
* added session::is_dht_running() function
|
||||||
* added torrent_handle::force_dht_announce()
|
* added torrent_handle::force_dht_announce()
|
||||||
|
* added torrent_info::remap_files()
|
||||||
|
|
||||||
release 0.14.8
|
release 0.14.8
|
||||||
|
|
||||||
|
|
|
@ -1408,6 +1408,8 @@ The ``torrent_info`` has the following synopsis::
|
||||||
file_storage const& files() const;
|
file_storage const& files() const;
|
||||||
file_storage const& orig_files() const;
|
file_storage const& orig_files() const;
|
||||||
|
|
||||||
|
void remap_files(file_storage const& f);
|
||||||
|
|
||||||
void rename_file(int index, std::string const& new_filename);
|
void rename_file(int index, std::string const& new_filename);
|
||||||
void rename_file(int index, std::wstring const& new_filename);
|
void rename_file(int index, std::wstring const& new_filename);
|
||||||
|
|
||||||
|
@ -1528,6 +1530,19 @@ names. Filename may be chaged using ``torrent_info::rename_file()``.
|
||||||
For more information on the ``file_storage`` object, see the separate document on how
|
For more information on the ``file_storage`` object, see the separate document on how
|
||||||
to create torrents.
|
to create torrents.
|
||||||
|
|
||||||
|
remap_files()
|
||||||
|
-------------
|
||||||
|
|
||||||
|
::
|
||||||
|
|
||||||
|
void remap_files(file_storage const& f);
|
||||||
|
|
||||||
|
Remaps the file storage to a new file layout. This can be used to, for instance,
|
||||||
|
download all data in a torrent to a single file, or to a number of fixed size
|
||||||
|
sector aligned files, regardless of the number and sizes of the files in the torrent.
|
||||||
|
|
||||||
|
The new specified ``file_storage`` must have the exact same size as the current one.
|
||||||
|
|
||||||
rename_file()
|
rename_file()
|
||||||
-------------
|
-------------
|
||||||
|
|
||||||
|
|
|
@ -195,6 +195,8 @@ namespace libtorrent
|
||||||
}
|
}
|
||||||
#endif // TORRENT_USE_WSTRING
|
#endif // TORRENT_USE_WSTRING
|
||||||
|
|
||||||
|
void remap_files(file_storage const& f);
|
||||||
|
|
||||||
void add_tracker(std::string const& url, int tier = 0);
|
void add_tracker(std::string const& url, int tier = 0);
|
||||||
std::vector<announce_entry> const& trackers() const { return m_urls; }
|
std::vector<announce_entry> const& trackers() const { return m_urls; }
|
||||||
|
|
||||||
|
|
|
@ -451,6 +451,17 @@ namespace libtorrent
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
void torrent_info::remap_files(file_storage const& f)
|
||||||
|
{
|
||||||
|
// the new specified file storage must have the exact
|
||||||
|
// same size as the current file storage
|
||||||
|
TORRENT_ASSERT(m_files.total_size() == f.total_size());
|
||||||
|
|
||||||
|
if (m_files.total_size() != f.total_size()) return;
|
||||||
|
copy_on_write();
|
||||||
|
m_files = f;
|
||||||
|
}
|
||||||
|
|
||||||
#ifndef TORRENT_NO_DEPRECATE
|
#ifndef TORRENT_NO_DEPRECATE
|
||||||
// standard constructor that parses a torrent file
|
// standard constructor that parses a torrent file
|
||||||
torrent_info::torrent_info(entry const& torrent_file)
|
torrent_info::torrent_info(entry const& torrent_file)
|
||||||
|
|
Loading…
Reference in New Issue