#include <fsZipArchiveRebuilder.h>

Public Member Functions | |
| const fsArchiveFilePosition * | GetFilePosition (int iFile) |
| virtual fsString | GetFileName (int iFile) |
| virtual int | GetFileCount () |
| virtual BOOL | RebuildArchive (fs::list< fsString > vFileNames) |
| fsZipArchiveRebuilder () | |
| virtual | ~fsZipArchiveRebuilder () |
Protected Member Functions | |
| DWORD | SaveEndOfCDirRecord () |
| DWORD | SaveFilesHeaders () |
| DWORD | SaveLocalFilesHeaders () |
| virtual DWORD | SaveArchiveHeaders_imp () |
| int | FindFile (LPCSTR pszFile, int iProbIndex=-1) |
| void | Free () |
| void | CorrectCDir () |
| void | RemoveFile (int iIndex) |
| virtual DWORD | RetreiveArchiveContent () |
Protected Attributes | |
| fs::list< fsZipLocalFile > | m_vLocalFiles |
| fs::list< fsZipFile > | m_vFiles |
| fsZipEndOfCentralDirHdr | m_hdrEndOfCDir |
| fsString | m_strZipComment |
Definition at line 491 of file fsZipArchiveRebuilder.h.
| fsZipArchiveRebuilder::fsZipArchiveRebuilder | ( | ) |
Definition at line 18 of file fsZipArchiveRebuilder.cpp.
| fsZipArchiveRebuilder::~fsZipArchiveRebuilder | ( | ) | [virtual] |
| const fsArchiveFilePosition * fsZipArchiveRebuilder::GetFilePosition | ( | int | iFile | ) | [virtual] |
Reimplemented from fsArchive::fsArchiveRebuilder.
Definition at line 327 of file fsZipArchiveRebuilder.cpp.
References m_vLocalFiles.
| fsString fsZipArchiveRebuilder::GetFileName | ( | int | iFile | ) | [virtual] |
Reimplemented from fsArchive::fsArchiveRebuilder.
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 242 of file fsZipArchiveRebuilder.cpp.
References m_vLocalFiles.
| int fsZipArchiveRebuilder::GetFileCount | ( | ) | [virtual] |
Reimplemented from fsArchive::fsArchiveRebuilder.
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 237 of file fsZipArchiveRebuilder.cpp.
References m_vLocalFiles.
Referenced by CorrectCDir().
| BOOL fsZipArchiveRebuilder::RebuildArchive | ( | fs::list< fsString > | vFileNames | ) | [virtual] |
Reimplemented from fsArchive::fsArchiveRebuilder.
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 220 of file fsZipArchiveRebuilder.cpp.
References CorrectCDir(), m_vLocalFiles, RemoveFile(), fsArchive::fsZipLocalFile::strFileName, and TRUE.
| DWORD fsZipArchiveRebuilder::SaveEndOfCDirRecord | ( | ) | [protected] |
Definition at line 444 of file fsZipArchiveRebuilder.cpp.
References fsArchive::ARR_STREAMERROR, m_hdrEndOfCDir, fsArchive::fsArchiveRebuilder::m_out, m_strZipComment, fsArchive::fsArchiveStream::Write(), fsArchive::fsZipEndOfCentralDirHdr::wZipCommentLen, and fsArchive::ZIP_ENDOFCENTRALDIR_SIG.
Referenced by SaveArchiveHeaders_imp(), and fsArchive::fsZipArchiveFastRebuilder::SaveArchiveHeaders_imp().
| DWORD fsZipArchiveRebuilder::SaveFilesHeaders | ( | ) | [protected] |
Definition at line 415 of file fsZipArchiveRebuilder.cpp.
References fsArchive::ARR_STREAMERROR, fsArchive::fsZipFile::hdr, fsArchive::fsArchiveRebuilder::m_out, m_vFiles, fsArchive::fsZipFile::pbExtraInfo, fsArchive::fsZipFile::strComment, fsArchive::fsZipFile::strFileName, fsArchive::fsZipFileHeader::wExtraLen, fsArchive::fsZipFileHeader::wFileCommentLen, fsArchive::fsZipFileHeader::wFileNameLen, fsArchive::fsArchiveStream::Write(), and fsArchive::ZIP_FILEHEADER_SIG.
Referenced by SaveArchiveHeaders_imp(), and fsArchive::fsZipArchiveFastRebuilder::SaveArchiveHeaders_imp().
| DWORD fsZipArchiveRebuilder::SaveLocalFilesHeaders | ( | ) | [protected] |
Definition at line 373 of file fsZipArchiveRebuilder.cpp.
References fsArchive::ARR_STREAMERROR, fsArchive::fsZipLocalFile::descriptor, fsArchive::fsZipLocalFile::hdr, fsArchive::fsArchiveRebuilder::m_out, m_vLocalFiles, fsArchive::fsZipLocalFile::pbExtraInfo, fsArchive::fsArchiveStream::Seek(), fsArchive::fsZipLocalFile::sigAfter, fsArchive::ST_CURRENT, fsArchive::fsZipLocalFile::strFileName, fsArchive::fsZipLocalFileHeader::uSizeComp, fsArchive::fsZipLocalFileHeader::wExtraLen, fsArchive::fsZipLocalFileHeader::wFileNameLen, fsArchive::fsZipLocalFileHeader::wGenFlags, fsArchive::fsArchiveStream::Write(), and fsArchive::ZIP_LOCALFILEHEADER_SIG.
Referenced by SaveArchiveHeaders_imp().
| DWORD fsZipArchiveRebuilder::SaveArchiveHeaders_imp | ( | ) | [protected, virtual] |
Reimplemented from fsArchive::fsArchiveRebuilder.
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 354 of file fsZipArchiveRebuilder.cpp.
References SaveEndOfCDirRecord(), SaveFilesHeaders(), and SaveLocalFilesHeaders().
| int fsZipArchiveRebuilder::FindFile | ( | LPCSTR | pszFile, | |
| int | iProbIndex = -1 | |||
| ) | [protected] |
Definition at line 332 of file fsZipArchiveRebuilder.cpp.
References m_vFiles.
Referenced by CorrectCDir(), and RemoveFile().
| void fsZipArchiveRebuilder::Free | ( | ) | [protected] |
Definition at line 308 of file fsZipArchiveRebuilder.cpp.
References m_vFiles, and m_vLocalFiles.
Referenced by ~fsZipArchiveRebuilder().
| void fsZipArchiveRebuilder::CorrectCDir | ( | ) | [protected] |
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 258 of file fsZipArchiveRebuilder.cpp.
References fsArchive::fsArchiveFilePosition::dwDstBegin, fsArchive::fsArchiveFilePosition::dwDstEnd, FindFile(), GetFileCount(), fsArchive::fsZipFile::hdr, fsArchive::fsZipLocalFile::hdr, fsArchive::fsArchiveRebuilder::m_dwSFXSize, m_hdrEndOfCDir, fsArchive::fsArchiveRebuilder::m_uResArchiveSize, m_vFiles, m_vLocalFiles, fsArchive::fsZipLocalFile::position, fsArchive::fsZipLocalFile::sigAfter, fsArchive::fsZipLocalFile::strFileName, fsArchive::fsZipEndOfCentralDirHdr::uCDirSize, fsArchive::fsZipLocalFileHeader::uSizeComp, fsArchive::fsZipEndOfCentralDirHdr::uStartCDirOffsetWithRespectToStartingDiskNumber, fsArchive::fsZipEndOfCentralDirHdr::wcCDirEntries, fsArchive::fsZipEndOfCentralDirHdr::wcFilesTotal, fsArchive::fsZipFileHeader::wExtraLen, fsArchive::fsZipLocalFileHeader::wExtraLen, fsArchive::fsZipFileHeader::wFileCommentLen, fsArchive::fsZipFileHeader::wFileNameLen, fsArchive::fsZipLocalFileHeader::wFileNameLen, and fsArchive::fsZipLocalFileHeader::wGenFlags.
Referenced by RebuildArchive().
| void fsZipArchiveRebuilder::RemoveFile | ( | int | iIndex | ) | [protected] |
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 247 of file fsZipArchiveRebuilder.cpp.
References FindFile(), m_vFiles, and m_vLocalFiles.
Referenced by RebuildArchive().
| DWORD fsZipArchiveRebuilder::RetreiveArchiveContent | ( | ) | [protected, virtual] |
Reimplemented from fsArchive::fsArchiveRebuilder.
Reimplemented in fsArchive::fsZipArchiveFastRebuilder.
Definition at line 28 of file fsZipArchiveRebuilder.cpp.
References fsString::alloc(), fsArchive::ARR_BADARCHIVE, fsArchive::ARR_STREAMERROR, ASE_NOMOREDATA, BOOL, fsArchive::fsZipLocalFile::descriptor, fsArchive::fsArchiveFilePosition::dwDstBegin, fsArchive::fsArchiveFilePosition::dwDstEnd, fsArchive::fsArchiveFilePosition::dwSrcBegin, fsArchive::fsArchiveFilePosition::dwSrcEnd, FALSE, fsArchive::fsArchiveStream::GetLastError(), fsArchive::fsZipFile::hdr, fsArchive::fsZipLocalFile::hdr, m_hdrEndOfCDir, fsArchive::fsArchiveRebuilder::m_in, m_strZipComment, m_vFiles, m_vLocalFiles, NULL, fsArchive::fsZipFile::pbExtraInfo, fsArchive::fsZipLocalFile::pbExtraInfo, fsArchive::fsZipLocalFile::position, fsArchive::fsArchiveStream::Read(), fsArchive::fsArchiveStream::Seek(), fsArchive::fsZipLocalFile::sigAfter, fsArchive::ST_CURRENT, fsArchive::fsZipFile::strComment, fsArchive::fsZipFile::strFileName, fsArchive::fsZipLocalFile::strFileName, TRUE, fsArchive::fsZipDataDescriptor::uCRC, fsArchive::fsZipLocalFileHeader::uSizeComp, fsArchive::fsZipFileHeader::wExtraLen, fsArchive::fsZipLocalFileHeader::wExtraLen, fsArchive::fsZipFileHeader::wFileCommentLen, fsArchive::fsZipFileHeader::wFileNameLen, fsArchive::fsZipLocalFileHeader::wFileNameLen, fsArchive::fsZipLocalFileHeader::wGenFlags, fsArchive::fsZipEndOfCentralDirHdr::wZipCommentLen, fsArchive::ZIP_ENDOFCENTRALDIR_SIG, fsArchive::ZIP_FILEHEADER_SIG, fsArchive::ZIP_LOCALFILEHEADER_SIG, fsArchive::ZIP_SPLIT_SIG, and fsArchive::ZIP_TEMPSPANNINGMARKER_SIG.
Referenced by fsArchive::fsZipArchiveFastRebuilder::RetreiveArchiveContent().
fs::list<fsZipLocalFile> fsArchive::fsZipArchiveRebuilder::m_vLocalFiles [protected] |
Definition at line 519 of file fsZipArchiveRebuilder.h.
Referenced by CorrectCDir(), fsArchive::fsZipArchiveFastRebuilder::CorrectCDir(), Free(), GetFileCount(), GetFileName(), GetFilePosition(), RebuildArchive(), RemoveFile(), fsArchive::fsZipArchiveFastRebuilder::RemoveFile(), RetreiveArchiveContent(), fsArchive::fsZipArchiveFastRebuilder::RetreiveArchiveContent(), SaveLocalFilesHeaders(), and fsArchive::fsZipArchiveFastRebuilder::~fsZipArchiveFastRebuilder().
fs::list<fsZipFile> fsArchive::fsZipArchiveRebuilder::m_vFiles [protected] |
Definition at line 520 of file fsZipArchiveRebuilder.h.
Referenced by CorrectCDir(), fsArchive::fsZipArchiveFastRebuilder::CorrectCDir(), FindFile(), Free(), fsArchive::fsZipArchiveFastRebuilder::GetFileCount(), fsArchive::fsZipArchiveFastRebuilder::GetFileName(), fsArchive::fsZipArchiveFastRebuilder::RebuildArchive(), RemoveFile(), fsArchive::fsZipArchiveFastRebuilder::RemoveFile(), RetreiveArchiveContent(), fsArchive::fsZipArchiveFastRebuilder::RetreiveArchiveContent(), and SaveFilesHeaders().
Definition at line 521 of file fsZipArchiveRebuilder.h.
Referenced by CorrectCDir(), fsArchive::fsZipArchiveFastRebuilder::CorrectCDir(), RetreiveArchiveContent(), fsArchive::fsZipArchiveFastRebuilder::RetreiveArchiveContent(), fsArchive::fsZipArchiveFastRebuilder::SaveArchiveHeaders_imp(), and SaveEndOfCDirRecord().
Definition at line 522 of file fsZipArchiveRebuilder.h.
Referenced by RetreiveArchiveContent(), fsArchive::fsZipArchiveFastRebuilder::RetreiveArchiveContent(), and SaveEndOfCDirRecord().
1.5.6