- Main Page
- Data Structures
- Files

- Data Structures
- Class Hierarchy
- Data Fields

# mschmd_header Struct Reference

A structure which represents a CHM helpfile. More...

`#include <mspack.h>`

## Data Fields
unsigned int | version
| The version of the CHM file format used in this file.
unsigned int | timestamp
| The "timestamp" of the CHM helpfile.
unsigned int | language
| The default Language and Country ID (LCID) of the user who ran the HTMLHelp Compiler.
char * | filename
| The filename of the CHM helpfile.
off_t | length
| The length of the CHM helpfile, in bytes.
mschmd_file * | files
| A list of all non-system files in the CHM helpfile.
mschmd_file * | sysfiles
| A list of all system files in the CHM helpfile.
mschmd_sec_uncompressed | sec0
| The section 0 (uncompressed) data in this CHM helpfile.
mschmd_sec_mscompressed | sec1
| The section 1 (MSCompressed) data in this CHM helpfile.
off_t | dir_offset
| The file offset of the first PMGL/PMGI directory chunk.
unsigned int | num_chunks
| The number of PMGL/PMGI directory chunks in this CHM helpfile.
unsigned int | chunk_size
| The size of each PMGL/PMGI chunk, in bytes.
unsigned int | density
| The "density" of the quick-reference section in PMGL/PMGI chunks.
unsigned int | depth
| The depth of the index tree.
unsigned int | index_root
| The number of the root PGMI chunk.

## Detailed Description

A structure which represents a CHM helpfile.

All fields are READ ONLY.

## Field Documentation

unsigned int mschmd_header::chunk_size

| The size of each PMGL/PMGI chunk, in bytes.

unsigned int mschmd_header::density

| The "density" of the quick-reference section in PMGL/PMGI chunks.

unsigned int mschmd_header::depth

| The depth of the index tree. if 1, there are no PMGI chunks, only PMGL chunks. if 2, there is 1 PMGI chunk. All chunk indices point to PMGL chunks. if 3, the root PMGI chunk points to secondary PMGI chunks, which in turn point to PMGL chunks. and so on...

off_t mschmd_header::dir_offset

| The file offset of the first PMGL/PMGI directory chunk.

char* mschmd_header::filename

| The filename of the CHM helpfile. This is given by the library user and may be in any format.

struct mschmd_file* mschmd_header::files

| A list of all non-system files in the CHM helpfile.

unsigned int mschmd_header::index_root

| The number of the root PGMI chunk. If there is no index in the CHM helpfile, this will be 0xFFFFFFFF.

unsigned int mschmd_header::language

| The default Language and Country ID (LCID) of the user who ran the HTMLHelp Compiler. This is not the language of the CHM file itself.

off_t mschmd_header::length

| The length of the CHM helpfile, in bytes.

unsigned int mschmd_header::num_chunks

| The number of PMGL/PMGI directory chunks in this CHM helpfile.

struct mschmd_sec_uncompressed mschmd_header::sec0

| The section 0 (uncompressed) data in this CHM helpfile.

struct mschmd_sec_mscompressed mschmd_header::sec1

| The section 1 (MSCompressed) data in this CHM helpfile.

struct mschmd_file* mschmd_header::sysfiles

| A list of all system files in the CHM helpfile. System files are files which begin with "::". They are meta-files generated by the CHM creation process.

unsigned int mschmd_header::timestamp

| The "timestamp" of the CHM helpfile. It is the lower 32 bits of a 64-bit value representing the number of centiseconds since 1601-01-01 00:00:00 UTC, plus 42. It is not useful as a timestamp, but it is useful as a semi-unique ID.

unsigned int mschmd_header::version

| The version of the CHM file format used in this file.

The documentation for this struct was generated from the following file:

- /home/kyz/devel/libmspack/libmspack/mspack/mspack.h