Class QueryArgsEventCodec
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
ThresholdSize
Bytes per threshold entry (i64).
public const int ThresholdSize = 8
Field Value
Methods
ComputeSize(int)
Compute the exact on-wire size for the given number of threshold entries.
public static int ComputeSize(int evaluatorCount)
Parameters
evaluatorCountint
Returns
Read(ReadOnlyMemory<byte>)
Decode a QueryArgs record.
public static QueryArgsData Read(ReadOnlyMemory<byte> source)
Parameters
sourceReadOnlyMemory<byte>
Returns
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)