mirror of
https://github.com/aria2/aria2.git
synced 2026-04-02 10:55:00 +00:00
To add the ability to download multi torrent into respective files directly: * src/DiskWriter.h (openFile): New function. (seek): Removed. * src/MultiDiskWriter.h: New class. * src/MultiDiskWriter.cc: New class. * src/AbstractDiskWriter.h (seek): Changed its scope from public to protected. (openFile): New function. * src/AbstractDiskWriter.cc (openFile): New function. * src/prefs.h (V_FALSE): New definition. (PREF_DIRECT_FILE_MAPPING): New definition. * src/TorrentMan.h (setupDiskWriter): New function. (setAllMultiFileRequestedState): New function. (onDownloadComplete): New function. * src/TorrentMan.cc : Included MultiDiskWriter.h (setupDiskWriter): New function. (getFilePath): Updated. (getTempFilePath): Updated. (getSegmentFilePath): Updated. (fixFilename): Updated. (deleteTempFile): Updated. (setAllMultiFileRequestedState): New function. (setFileEntriesToDownload): Use setAllMultiFileRequestedState(). (finishPartialDownloadingMode): Reset requested flags. (onDownloadComplete): New function. * src/main.cc: Added --direct-file-mapping option. Use TorretMan::setupDiskWriter(). * src/TorrentDownloadEngine.cc (afterEachIteration): Use TorrentMan:: onDownloadComplete(). To fix ETA bug: * src/Util.h (difftvsec): New function. * src/Util.cc (difftvsec): New function. * src/TorrentConsoleDownloadEngine.cc (calculateSpeed): Use int for the type of "elapsed" instead of long long int. (calculateStatistics): Use Util::difftvsec instead of Util::difftv. The updates of statistics takes place every 1 seconds. * src/TorrentConsoleDownloadEngine.h (lastElapsed): Changed its type. (calculateSpeed): Changed its argument signature. * src/PeerMessage.cc (toString): Fixed message.
33 lines
834 B
Makefile
33 lines
834 B
Makefile
TESTS = aria2c
|
|
check_PROGRAMS = $(TESTS)
|
|
aria2c_SOURCES = AllTest.cc\
|
|
RequestTest.cc\
|
|
ChunkedEncodingTest.cc\
|
|
FileTest.cc\
|
|
OptionTest.cc\
|
|
Base64Test.cc\
|
|
UtilTest.cc\
|
|
CookieBoxTest.cc\
|
|
DataTest.cc\
|
|
DictionaryTest.cc\
|
|
ListTest.cc\
|
|
MetaFileUtilTest.cc\
|
|
ShaVisitorTest.cc\
|
|
TorrentManTest.cc\
|
|
PeerMessageUtilTest.cc\
|
|
BitfieldManTest.cc\
|
|
DefaultDiskWriterTest.cc\
|
|
MultiDiskWriterTest.cc
|
|
#aria2c_CXXFLAGS = ${CPPUNIT_CFLAGS} -I../src -I../lib -Wall -D_FILE_OFFSET_BITS=64
|
|
#aria2c_LDFLAGS = ${CPPUNIT_LIBS}
|
|
|
|
aria2c_LDADD = ../src/libaria2c.a\
|
|
${CPPUNIT_LIBS} @LIBGNUTLS_LIBS@\
|
|
@LIBGCRYPT_LIBS@ @OPENSSL_LIBS@
|
|
AM_CPPFLAGS = -Wall\
|
|
${CPPUNIT_CFLAGS}\
|
|
-I ../src\
|
|
-I../lib -I../intl -I$(top_srcdir)/intl\
|
|
@LIBGNUTLS_CFLAGS@ @LIBGCRYPT_CFLAGS@ @OPENSSL_CFLAGS@\
|
|
-D_FILE_OFFSET_BITS=64 -DLOCALEDIR=\"$(localedir)\" @DEFS@
|