public void LoadAssetToFileSystem(string outputPath, List <string> targetFiles, IPackageResourceCompressor decompressor) { if (string.IsNullOrEmpty(outputPath) || null == targetFiles || targetFiles.Count == 0) { return; } if (m_bIsRunning) { return; } m_bIsRunning = true; m_Decompressor = decompressor; m_strRootPathPerfix = GetStreamingAssetPath(); m_TaskQueue = new Queue <PackageResourceLoaderElement>(targetFiles.Count); for (int i = 0; i < targetFiles.Count; ++i) { string url = m_strRootPathPerfix + targetFiles[i]; string elemOutputPath = outputPath + targetFiles[i]; m_TaskQueue.Enqueue(new PackageResourceLoaderElement(targetFiles[i], url, elemOutputPath)); } m_iTotalLoadCount = m_TaskQueue.Count; m_TaskErrorQueue = new Queue <PackageResourceLoaderElement>(); m_TaskSucceedQueue = new Queue <PackageResourceLoaderElement>(); m_iCurrentLoaderCount = 0; m_iCurrentRetryCount = 0; // start task StartTask(); }
private byte[] CompressFile(byte[] source, IPackageResourceCompressor compressType) { return(compressType.Compress(source)); }