Table of Contents

Struct ChunkManifestEntry

Namespace
Typhon.Profiler
Assembly
Typhon.Profiler.dll

One entry in the chunk manifest. Addresses a chunk's folded byte range inside the cache file's FoldedChunkData section. A chunk covers a half-open tick range [FromTick, ToTick). Both endpoints are stored explicitly so the manifest can be consumed in any order.

public struct ChunkManifestEntry
Inherited Members

Fields

CacheByteLength

Length of the compressed payload (input to LZ4 decompress).

public uint CacheByteLength

Field Value

uint

CacheByteOffset

Byte offset of the compressed chunk payload within the cache file's FoldedChunkData section (absolute cache-file offset).

public long CacheByteOffset

Field Value

long

EventCount

Total number of records in this chunk (after fold).

public uint EventCount

Field Value

uint

Flags

Per-chunk flag bits. Also serves as the 4-byte tail padding keeping the struct 8-byte-aligned (sizeof = 32); the wire size and field offset match the former Padding field exactly, so v7 caches built with Flags=0 are upward-compatible as "normal, non-continuation" chunks — the reader just sees zero bits, which is the no-flags-set state.

Bit 0: FlagIsContinuation — set when this chunk starts mid-tick (continuation of the tick whose first events lived in the PREVIOUS chunk). Continuation chunks have NO TickStart record at their head; the decoder must seed its tick counter to FromTick directly rather than FromTick - 1. See the chunker-version-8 changelog entry for the reason mid-tick splitting exists.

Bits 1-31: reserved for future per-chunk flags. Builders MUST write zero for reserved bits; readers MUST ignore unknown bits so that a future v8+ feature that sets a new bit doesn't break older readers on the same version.

public uint Flags

Field Value

uint

FromTick

First tick included in this chunk (inclusive).

public uint FromTick

Field Value

uint

ToTick

First tick NOT included (exclusive). ToTick - FromTick is the chunk's tick count.

public uint ToTick

Field Value

uint

UncompressedBytes

Uncompressed payload size (output size of LZ4 decompress; needed to pre-size the client's decode buffer).

public uint UncompressedBytes

Field Value

uint