annotate src/win32/7zip/7z/CPP/7zip/Archive/Rar/RarItem.cpp @ 1:f9f4f1b99eed

importing src directory
author Robert McIntyre <rlm@mit.edu>
date Sat, 03 Mar 2012 10:31:27 -0600
parents
children
rev   line source
rlm@1 1 // RarItem.cpp
rlm@1 2
rlm@1 3 #include "StdAfx.h"
rlm@1 4
rlm@1 5 #include "RarItem.h"
rlm@1 6
rlm@1 7 namespace NArchive{
rlm@1 8 namespace NRar{
rlm@1 9
rlm@1 10 bool CItem::IgnoreItem() const
rlm@1 11 {
rlm@1 12 switch(HostOS)
rlm@1 13 {
rlm@1 14 case NHeader::NFile::kHostMSDOS:
rlm@1 15 case NHeader::NFile::kHostOS2:
rlm@1 16 case NHeader::NFile::kHostWin32:
rlm@1 17 return ((Attrib & NHeader::NFile::kLabelFileAttribute) != 0);
rlm@1 18 }
rlm@1 19 return false;
rlm@1 20 }
rlm@1 21
rlm@1 22 bool CItem::IsDir() const
rlm@1 23 {
rlm@1 24 if (GetDictSize() == NHeader::NFile::kDictDirectoryValue)
rlm@1 25 return true;
rlm@1 26 switch(HostOS)
rlm@1 27 {
rlm@1 28 case NHeader::NFile::kHostMSDOS:
rlm@1 29 case NHeader::NFile::kHostOS2:
rlm@1 30 case NHeader::NFile::kHostWin32:
rlm@1 31 if ((Attrib & FILE_ATTRIBUTE_DIRECTORY) != 0)
rlm@1 32 return true;
rlm@1 33 }
rlm@1 34 return false;
rlm@1 35 }
rlm@1 36
rlm@1 37 UInt32 CItem::GetWinAttributes() const
rlm@1 38 {
rlm@1 39 UInt32 winAttributes;
rlm@1 40 switch(HostOS)
rlm@1 41 {
rlm@1 42 case NHeader::NFile::kHostMSDOS:
rlm@1 43 case NHeader::NFile::kHostOS2:
rlm@1 44 case NHeader::NFile::kHostWin32:
rlm@1 45 winAttributes = Attrib;
rlm@1 46 break;
rlm@1 47 default:
rlm@1 48 winAttributes = 0; // must be converted from unix value;
rlm@1 49 }
rlm@1 50 if (IsDir())
rlm@1 51 winAttributes |= NHeader::NFile::kWinFileDirectoryAttributeMask;
rlm@1 52 return winAttributes;
rlm@1 53 }
rlm@1 54
rlm@1 55 }}