- Added a parent page widget (class RsAutoUpdatePage) to handle auto-update. The page updates using a timer, only wh

en visible, and each time it gets showed. I already made some RS pages derive from this page.
- Modified and renamed the taskGraphPainterWidget to display info about currently selected file transfers. For know, it only shows file chunks info, but we should use it to display additional info about the transfer. Warning: in its
 current state, only fake chunk info is displayed.
 - Suppressed p3files.h, because it is not used.

 Remains to do (in order):
 - Implement a chunk map class in ft/ to properly manage which chunks should be downloaded 
 - Display correct chunk info by requesting the transfer's chunk map
 - Add check-sum verification of chunks
 - allow RS to import a partially downloaded file by force re-checking chunks
 - Add chunk map exchange from file source peer id to file destination peer id.
 - Manage chunks from different peers.
 - Allow search (turtle search) for partially downloaded files 



git-svn-id: http://svn.code.sf.net/p/retroshare/code/trunk@1832 b45a01b8-16f6-495d-af2f-9b41ad6348cc
This commit is contained in:
csoler 2009-11-17 12:45:06 +00:00
parent 36c2a726fa
commit 506f14eb2f
28 changed files with 368 additions and 1215 deletions

View file

@ -305,6 +305,21 @@ void ftServer::getDwlDetails(std::list<DwlDetails> & details)
mFtDwlQueue->getDwlDetails(details);
}
bool ftServer::FileChunksDetails(const std::string& hash,FileChunksInfo& info)
{
// for know put some dummy info. It's for display sake only.
info.chunk_size = 1024*1024 ;
info.file_size = 250*info.chunk_size - 123 ; // last chunk is not complete.
info.chunks.resize(250,FileChunksInfo::CHUNK_DONE) ;
int n = rand()%150 + 50 ;
for(int i=0;i<10;++i)
info.chunks[n+i] = FileChunksInfo::CHUNK_ACTIVE ;
for(int i=n+10;i<250;++i)
info.chunks[i] = FileChunksInfo::CHUNK_OUTSTANDING ;
return true ;
}
/* Directory Handling */
void ftServer::setDownloadDirectory(std::string path)
{

View file

@ -137,6 +137,7 @@ virtual void getDwlDetails(std::list<DwlDetails> & details);
virtual bool FileDownloads(std::list<std::string> &hashs);
virtual bool FileUploads(std::list<std::string> &hashs);
virtual bool FileDetails(std::string hash, uint32_t hintflags, FileInfo &info);
virtual bool FileChunksDetails(const std::string& hash,FileChunksInfo& info) ;
/***
* Extra List Access