Arxx::ItemHeader Class Reference

#include <ArchiveFile.h>

List of all members.


Detailed Description

The memory representation of a single item.

Note:
This class is located within a "pragma pack(1)" block.
This class contains all the meta information associated with a specific item in an ARX archive.


Public Member Functions

 ItemHeader (void)
 Default constructor creating an empty ItemHeader.

Public Attributes

u4byte m_u4UniqueID
 The unique ID of the item.
u4byte m_u4Type
 The type of the item.
u4byte m_u4SubType
 The subtype of the item.
union {
   u4byte   m_u4VersionNumber
 The version number of the item.
   struct {
      u1byte   m_u1MajorMajorVersion
 The major major version number of the item.
      u1byte   m_u1MajorMinorVersion
 The major minor version number of the item.
      u1byte   m_u1MinorMajorVersion
 The minor major version number of the item.
      u1byte   m_u1MinorMinorVersion
 The minor minor version number of the item.
   } 
}; 
u4byte m_u4DataCompression
 Information about the compression of the item.
u1byte m_u1IsDataExternal
 Defines whether the data is internal or external.
u4byte m_u4NameLength
 The length of the item's name.
u4byte m_u4DataOffset
 The offset/position of the item's data.
u4byte m_u4DataDecompressedLength
 The length of the item's data when decompressed.
u4byte m_u4DataCompressedLength
 The length of the item's data when compressed.
u4byte m_u4StructureDataLength
 This component describes the length of the structure description for the item.


Constructor & Destructor Documentation

Arxx::ItemHeader::ItemHeader ( void   )  [inline]

Default constructor creating an empty ItemHeader.


Member Data Documentation

union { ... }

u1byte Arxx::ItemHeader::m_u1IsDataExternal

Defines whether the data is internal or external.

u1byte Arxx::ItemHeader::m_u1MajorMajorVersion

The major major version number of the item.

Note:
Represents the XX.xx.xx.xx.
This is the leading version number.

u1byte Arxx::ItemHeader::m_u1MajorMinorVersion

The major minor version number of the item.

Note:
Represents the xx.XX.xx.xx.
This is the second leading version number.

u1byte Arxx::ItemHeader::m_u1MinorMajorVersion

The minor major version number of the item.

Note:
Represents the xx.xx.XX.xx.
This is the first minor version number.

u1byte Arxx::ItemHeader::m_u1MinorMinorVersion

The minor minor version number of the item.

Note:
Represents the xx.xx.xx.XX.
This is the second minor version number.

u4byte Arxx::ItemHeader::m_u4DataCompressedLength

The length of the item's data when compressed.

The length of the data when it is compressed. This member does not imply that the data actually IS compressed. It merely gives you a 'would-be' information. If the item's data IS compressed, this member states the length of the compressed data block. On the other hand, when the item's data is decompressed, this member is invalid. (In the current implementation this member actually states the length of the last compression, but it CAN only give you a hint about the size of the data, in case you decompressed it externaly.

u4byte Arxx::ItemHeader::m_u4DataCompression

Information about the compression of the item.

The state of compression for the item. Defines the level of compression that was used with the zlib functions or 0 to indicate no compression.

u4byte Arxx::ItemHeader::m_u4DataDecompressedLength

The length of the item's data when decompressed.

The length of the data when it is decompressed. This member does not imply that the data actually IS decompressed. It merely gives you a 'would-be' information.

u4byte Arxx::ItemHeader::m_u4DataOffset

The offset/position of the item's data.

The offset specifies the number of bytes to be added to the begin/offset of the data part of the archive.

u4byte Arxx::ItemHeader::m_u4NameLength

The length of the item's name.

The length of the item's name without the trailing zero character.

u4byte Arxx::ItemHeader::m_u4StructureDataLength

This component describes the length of the structure description for the item.

The length of the structure buffer is needed when it will be read on loading a library. The structure of the library is part of its header information and therefore placed in the ItemHeader. The structure data follows immediately after the closing 0 of the item's name.

u4byte Arxx::ItemHeader::m_u4SubType

The subtype of the item.

The subtype of the item.

u4byte Arxx::ItemHeader::m_u4Type

The type of the item.

The type of the item.

u4byte Arxx::ItemHeader::m_u4UniqueID

The unique ID of the item.

The unique ID of an item is unique in respect to the parenting archive.

u4byte Arxx::ItemHeader::m_u4VersionNumber

The version number of the item.

The item's version number in one data item of 4 byte length. Use the u1bytes the get specific version information easy.


The documentation for this class was generated from the following file:
Generated on Tue Oct 10 11:34:36 2006 for libarxx by  doxygen 1.4.7