Заголовок файла. Подробнее...
#include <system/tar_abstraction.h>
Открытые статические члены | |
| static std::size_t | GetCheckSum (const TARFileHeader &Header) |
| static void | SetCheckSum (TARFileHeader &Header) |
Открытые атрибуты | |
| char | FileName [100] |
| char | FileMode [8] |
| char | OwnerId [8] |
| char | GroupId [8] |
| char | FileSize [12] |
| char | LastModificationTime [12] |
| char | CheckSum [8] |
| char | LinkType |
| char | LinkedFileName [100] |
| char | Format [6] |
| char | Version [2] |
| char | OwnerUserName [32] |
| char | OwnerGroupName [32] |
| char | DevMajor [8] |
| char | DevMinor [8] |
| char | Appendix [167] |
Заголовок файла.
См. определение в файле tar_abstraction.h строка 46
| std::size_t nitro::TARFileHeader::GetCheckSum | ( | const TARFileHeader & | Header | ) | [static] |
Вычисление контрольной суммы.
| Header | - Заголовок, для которого вычисляется контрольная суммы. |
| nitro::exception | - Кидается исключение этого типа с описанием ошибки. |
См. определение в файле tar_abstraction.cpp строка 8
Перекрестные ссылки CheckSum, nitro::exception::code() и nitro::exception::what().
Используется в SetCheckSum().
{
try
{
TARFileHeader LocalHeader;
memcpy( ( void * ) & LocalHeader , ( void * ) & Header , sizeof( TARFileHeader ) );
memset( LocalHeader.CheckSum , ' ' , 8 );
std::size_t CheckSum( 0 );
for( std::size_t i( 0 ) ; i < sizeof( TARFileHeader ) ; i++ )
{
CheckSum += ( ( unsigned char * ) & LocalHeader )[ i ];
}
return( CheckSum );
}
catch( nitro::exception e )
{
throw( nitro::exception( std::string( "TARFileHeader::GetCheckSum( const TARFileHeader & Header )::" ) + e.what() , e.code() ) );
}
catch( ... )
{
throw( nitro::exception( std::string( "TARFileHeader::GetCheckSum( const TARFileHeader & Header )::An error occured while opening file" ) , 1 ) );
}
}

| void nitro::TARFileHeader::SetCheckSum | ( | TARFileHeader & | Header | ) | [static] |
Вычисление контрольной суммы.
| Header | - Заголовок, для которого устанавливается контрольная суммы. |
| nitro::exception | - Кидается исключение этого типа с описанием ошибки. |
См. определение в файле tar_abstraction.cpp строка 34
Перекрестные ссылки CheckSum, nitro::exception::code(), GetCheckSum() и nitro::exception::what().
{
try
{
std::size_t CheckSum( GetCheckSum( Header ) );
memset( Header.CheckSum , 0 , 8 );
sprintf( Header.CheckSum , "%08o" , CheckSum );
}
catch( nitro::exception e )
{
throw( nitro::exception( std::string( "TARFileHeader::SetCheckSum( TARFileHeader & Header )::" ) + e.what() , e.code() ) );
}
catch( ... )
{
throw( nitro::exception( std::string( "TARFileHeader::SetCheckSum( TARFileHeader & Header )::An error occured while opening file" ) , 1 ) );
}
}

| char nitro::TARFileHeader::Appendix[167] |
См. определение в файле tar_abstraction.h строка 63
| char nitro::TARFileHeader::CheckSum[8] |
См. определение в файле tar_abstraction.h строка 54
Используется в GetCheckSum() и SetCheckSum().
| char nitro::TARFileHeader::DevMajor[8] |
См. определение в файле tar_abstraction.h строка 61
| char nitro::TARFileHeader::DevMinor[8] |
См. определение в файле tar_abstraction.h строка 62
| char nitro::TARFileHeader::FileMode[8] |
См. определение в файле tar_abstraction.h строка 49
| char nitro::TARFileHeader::FileName[100] |
См. определение в файле tar_abstraction.h строка 48
Используется в nitro::UnTARAbstraction::ExtractFile() и nitro::UnTARAbstraction::GetCountOfFiles().
| char nitro::TARFileHeader::FileSize[12] |
См. определение в файле tar_abstraction.h строка 52
Используется в nitro::UnTARAbstraction::ExtractFile(), nitro::UnTARAbstraction::GetCountOfFiles() и nitro::UnTARAbstraction::SetReadCursor().
| char nitro::TARFileHeader::Format[6] |
См. определение в файле tar_abstraction.h строка 57
| char nitro::TARFileHeader::GroupId[8] |
См. определение в файле tar_abstraction.h строка 51
См. определение в файле tar_abstraction.h строка 53
| char nitro::TARFileHeader::LinkedFileName[100] |
См. определение в файле tar_abstraction.h строка 56
См. определение в файле tar_abstraction.h строка 55
Используется в nitro::UnTARAbstraction::ExtractFile().
| char nitro::TARFileHeader::OwnerGroupName[32] |
См. определение в файле tar_abstraction.h строка 60
| char nitro::TARFileHeader::OwnerId[8] |
См. определение в файле tar_abstraction.h строка 50
| char nitro::TARFileHeader::OwnerUserName[32] |
См. определение в файле tar_abstraction.h строка 59
| char nitro::TARFileHeader::Version[2] |
См. определение в файле tar_abstraction.h строка 58
1.6.1