Sub GenerateDownloadTable(pipename As String, new_map As Map, ct As CurrentTaskType) As Map
Dim p As PipeType
p = GetPipe(pipename)
Dim writemap As Map
writemap.Initialize
For i = 0 To new_map.Size -1
'Update LocalMod time
Dim DTEntry As DownloadTableType
DTEntry = new_map.GetValueAt(i)
DTEntry.local_lm = GetLocalFileDate(DTEntry.iFile ,p)
'Remove failed downloads
If GetCTResult(DTEntry.iFile, ct) = 0 Then
writemap.Put(DTEntry.iFile,DTEntry)
End If
Next
Log("Download Sync Table")
LogSyncMap(writemap)
Dim RAF As RandomAccessFile
RAF.Initialize(File.DirInternal,p.Name & "_sync.txt",False)
For i = 0 To writemap.Size-1
Dim DTEntry As DownloadTableType
DTEntry = writemap.Get(i)
RAF.WriteObject(DTEntry.iFile ,False,RAF.CurrentPosition)
RAF.WriteObject(DTEntry.local_lm ,False,RAF.CurrentPosition)
RAF.WriteObject(DTEntry.remote_lm ,False,RAF.CurrentPosition)
Next
RAF.Close
End Sub