KCMS CMM Developer's Guide

KcsChunkSet Class

The KcsChunkSet class provides an interface to access chunks (or blocks) of data in a static store (such as a file on disk).

Chunks are separated blocks of data that contain any type of data. The KcsChunkSet class does not know what the data is in the blocks. It provides functions to manipulate the blocks, such as arranging and resizing them.

A chunk set has two components: a chunk map and the chunks. As shown in Figure 1-3 , the chunk map is a table containing an array of descriptions of each chunk. Each chunk map entry contains the chunk Id (a unique identifier for that block), the offset, and the chunk size.

Figure 1-3 Chunk Set Layout

Graphic

The ICC profile format is directly analogous to the KcsChunkSet.

Some KcsChunkSet class features are:

The KcsChunkSet method can be used for various reasons. For example, you need the chunk Id(s) to access data directly. Use KcsChunkSet to read or write a particular chunk Id. You do not need the specific offsets within the static store, but you do need to know the chunk Id(s). You can also specify to write a chunk at a specific static store location. You may want to do this for format conventions that require specific data be stored at a specific location within the static store. In this case, KcsChunkSet moves other chunks to accommodate this request.