Arxx::ArchiveHeader Class Reference

#include <ArchiveFile.h>

List of all members.


Detailed Description

The representation of an archive's header in a file.

This struct is the internal representation of an archive's header as it occures in a general ARX archive file. Reading the first sizeof(ArchiveHeader) bytes from an ARX archive file give you information about the version of the archive, the number of items contained in the archive and the ID of the root item. Thus, these information are considered absolutely neccessary for any loading process and on the other hand easy to get at the saving process.


Public Attributes

union {
   u4byte   m_u4VersionNumber
 The version number of the archive.
   struct {
      u1byte   m_u1MajorMajorVersion
 The major major version number of the archive.
      u1byte   m_u1MajorMinorVersion
 The major minor version number of the archive.
      u1byte   m_u1MinorMajorVersion
 The minor major version number of the archive.
      u1byte   m_u1MinorMinorVersion
 The minor minor version number of the archive.
   } 
}; 
u4byte m_u4RootItemID
 The unique ID of the root item of the archive.
u4byte m_u4ItemCount
 The number of items stored within the archive.


Member Data Documentation

union { ... }

u1byte Arxx::ArchiveHeader::m_u1MajorMajorVersion

The major major version number of the archive.

Note:
Represents the XX.xx.xx.xx.
This is the leading version number. A one here means it IS of version 1. Changes in this version number should be due to heavy design rewrites, so only if ONE thing changed FUNDAMENTLY. In general a change in this version number should also mean a new Arxx::Library and therefore a new Arxx::Item class since things really changed then.

u1byte Arxx::ArchiveHeader::m_u1MajorMinorVersion

The major minor version number of the archive.

Note:
Represents the xx.XX.xx.xx.
This is the second leading version number. A change in this version occures when improvements change the way a library is stored. In other words whenever a structural change was necessary due to speed optimization procedures or for accesability benefits. A change here also means a new Arxx::Item class which should be backward compatible.

u1byte Arxx::ArchiveHeader::m_u1MinorMajorVersion

The minor major version number of the archive.

Note:
Represents the xx.xx.XX.xx.
This is the first minor version number. Changes here have to be backward compatible in memory structure representatives.

u1byte Arxx::ArchiveHeader::m_u1MinorMinorVersion

The minor minor version number of the archive.

Note:
Represents the xx.xx.xx.XX.
This is the second minor version number. This version number shouldn't be necessary.

u4byte Arxx::ArchiveHeader::m_u4ItemCount

The number of items stored within the archive.

u4byte Arxx::ArchiveHeader::m_u4RootItemID

The unique ID of the root item of the archive.

This member might equal Arxx::g_u4InvalidID when there is no root item specified or this archive.

u4byte Arxx::ArchiveHeader::m_u4VersionNumber

The version number of the archive.

The archive's version number in one data item of 4 byte length. Use the u1bytes the get speciic 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