mirror of
https://github.com/Xevion/easy7zip.git
synced 2025-12-07 01:15:00 -06:00
35 lines
888 B
C++
Executable File
35 lines
888 B
C++
Executable File
// Archive/ZipItemEx.h
|
|
|
|
#ifndef __ARCHIVE_ZIP_ITEMEX_H
|
|
#define __ARCHIVE_ZIP_ITEMEX_H
|
|
|
|
#include "ZipHeader.h"
|
|
#include "ZipItem.h"
|
|
|
|
namespace NArchive {
|
|
namespace NZip {
|
|
|
|
class CItemEx: public CItem
|
|
{
|
|
public:
|
|
UInt32 FileHeaderWithNameSize;
|
|
UInt16 LocalExtraSize;
|
|
|
|
UInt64 GetLocalFullSize() const
|
|
{ return FileHeaderWithNameSize + LocalExtraSize + PackSize +
|
|
(HasDescriptor() ? NFileHeader::kDataDescriptorSize : 0); };
|
|
/*
|
|
UInt64 GetLocalFullSize(bool isZip64) const
|
|
{ return FileHeaderWithNameSize + LocalExtraSize + PackSize +
|
|
(HasDescriptor() ? (isZip64 ? NFileHeader::kDataDescriptor64Size : NFileHeader::kDataDescriptorSize) : 0); };
|
|
*/
|
|
UInt64 GetLocalExtraPosition() const
|
|
{ return LocalHeaderPosition + FileHeaderWithNameSize; };
|
|
UInt64 GetDataPosition() const
|
|
{ return GetLocalExtraPosition() + LocalExtraSize; };
|
|
};
|
|
|
|
}}
|
|
|
|
#endif
|