Table of Contents

Class QueryArgsEventCodec

Namespace
Typhon.Profiler
Assembly
Typhon.Profiler.dll

Wire codec for QueryArgs (kind 248) — per-execution threshold arguments emitted once per QueryPlan when the plan carries at least one evaluator.

public static class QueryArgsEventCodec
Inheritance
QueryArgsEventCodec
Inherited Members

Remarks

Layout after the 12-byte common header:

offset 12..13   u16  EvaluatorCount
offset 14+      repeated i64 threshold × EvaluatorCount

Skipped entirely when EvaluatorCount == 0 (pure index scan with no filter chain).

Fields

FixedPrefixSize

Fixed-prefix size: 12 B common header + 2 B EvaluatorCount = 14 B.

public const int FixedPrefixSize = 14

Field Value

int

ThresholdSize

Bytes per threshold entry (i64).

public const int ThresholdSize = 8

Field Value

int

Methods

ComputeSize(int)

Compute the exact on-wire size for the given number of threshold entries.

public static int ComputeSize(int evaluatorCount)

Parameters

evaluatorCount int

Returns

int

Read(ReadOnlyMemory<byte>)

Decode a QueryArgs record.

public static QueryArgsData Read(ReadOnlyMemory<byte> source)

Parameters

source ReadOnlyMemory<byte>

Returns

QueryArgsData

Write(Span<byte>, byte, long, ReadOnlySpan<byte>, out int)

Encode a QueryArgs record. thresholds is a packed blob of i64 values — caller has already widened/reinterpreted from any source type (float, double, etc.).

public static void Write(Span<byte> destination, byte threadSlot, long timestamp, ReadOnlySpan<byte> thresholds, out int bytesWritten)

Parameters

destination Span<byte>
threadSlot byte
timestamp long
thresholds ReadOnlySpan<byte>
bytesWritten int