Skip to content
Start free evaluation

PDComm.GemSpoolInfo

Struct

Represents the spooling details of a GemResult.

public readonly record struct GemSpoolInfo

The processing fields describe the last operation on this result. A later GemEquipment.RetrySpoolDequeue changes the endpoint, not this result; use GemEquipment.GetSpoolState for the current spool state. Success acknowledgements are local evidence: a host cannot infer that the equipment persisted a change.

Parameters

NameDescription
RequestKindGemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl or GemRequestKind.SpoolDelivery.
CommandThe RSDC of the S6F23 request for GemRequestKind.SpoolControl; GemSpoolCommand.Transmit (0) for other kinds.
DurabilityHow durably the change applied through this result was stored.
DeliveryProofThe delivery evidence of a delivery result.
PersistenceStatusThe PdcommStatus value of the last persistence failure on this result, which stays visible after GemEquipment.ConfirmSpoolReply; otherwise 0.
EntryIdThe ID of the delivered entry for a delivery result; otherwise 0.
DeliveryAttemptThe attempt number of the delivery for a delivery result; otherwise 0.
SelectionCountThe number of stream selections in an S2F43 received by the equipment or in an S2F60 received by the host.
ErrorCountThe number of stream errors in an S2F44 received by the host.
IsRequesttrue for an S2F43, S2F59 or S6F23 request received by the equipment.
Respondedtrue when the reply to the request has been sent.
AcknowledgementThe acknowledgement code: RSPACK of a received S2F44, RSDA of a received S6F24, ACKC5 or ACKC6 of the reply to a delivered S5F1 or S6F11, or the code of the reply that the equipment prepared; null when there is none.
Appliedtrue when the last operation on this result installed a spool change.
ReplyReadytrue when a prepared reply is retained and GemEquipment.RespondSpool sends it without applying the request again.
ConfirmationRequiredtrue when the request was applied with unconfirmed persistence and its reply is held until GemEquipment.ConfirmSpoolReply.
DeliveryCompletedtrue when GemEquipment.CompleteSpoolDelivery accepted this delivery result.
DequeuePendingtrue when success was accepted but removing the entry failed; call GemEquipment.RetrySpoolDequeue.
SuccessAcceptedtrue when success was accepted for this delivery result.

Members

GemSpoolInfo

Constructor

Represents the spooling details of a GemResult.

public GemSpoolInfo(GemRequestKind RequestKind, GemSpoolCommand Command, GemSpoolDurability Durability, GemSpoolDeliveryProof DeliveryProof, int PersistenceStatus, ulong EntryId, ulong DeliveryAttempt, nuint SelectionCount, nuint ErrorCount, bool IsRequest, bool Responded, byte? Acknowledgement, bool Applied, bool ReplyReady, bool ConfirmationRequired, bool DeliveryCompleted, bool DequeuePending, bool SuccessAccepted)

The processing fields describe the last operation on this result. A later GemEquipment.RetrySpoolDequeue changes the endpoint, not this result; use GemEquipment.GetSpoolState for the current spool state. Success acknowledgements are local evidence: a host cannot infer that the equipment persisted a change.

Parameters

NameDescription
RequestKindGemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl or GemRequestKind.SpoolDelivery.
CommandThe RSDC of the S6F23 request for GemRequestKind.SpoolControl; GemSpoolCommand.Transmit (0) for other kinds.
DurabilityHow durably the change applied through this result was stored.
DeliveryProofThe delivery evidence of a delivery result.
PersistenceStatusThe PdcommStatus value of the last persistence failure on this result, which stays visible after GemEquipment.ConfirmSpoolReply; otherwise 0.
EntryIdThe ID of the delivered entry for a delivery result; otherwise 0.
DeliveryAttemptThe attempt number of the delivery for a delivery result; otherwise 0.
SelectionCountThe number of stream selections in an S2F43 received by the equipment or in an S2F60 received by the host.
ErrorCountThe number of stream errors in an S2F44 received by the host.
IsRequesttrue for an S2F43, S2F59 or S6F23 request received by the equipment.
Respondedtrue when the reply to the request has been sent.
AcknowledgementThe acknowledgement code: RSPACK of a received S2F44, RSDA of a received S6F24, ACKC5 or ACKC6 of the reply to a delivered S5F1 or S6F11, or the code of the reply that the equipment prepared; null when there is none.
Appliedtrue when the last operation on this result installed a spool change.
ReplyReadytrue when a prepared reply is retained and GemEquipment.RespondSpool sends it without applying the request again.
ConfirmationRequiredtrue when the request was applied with unconfirmed persistence and its reply is held until GemEquipment.ConfirmSpoolReply.
DeliveryCompletedtrue when GemEquipment.CompleteSpoolDelivery accepted this delivery result.
DequeuePendingtrue when success was accepted but removing the entry failed; call GemEquipment.RetrySpoolDequeue.
SuccessAcceptedtrue when success was accepted for this delivery result.

Acknowledgement

Property

The acknowledgement code: RSPACK of a received S2F44, RSDA of a received S6F24, ACKC5 or ACKC6 of the reply to a delivered S5F1 or S6F11, or the code of the reply that the equipment prepared; null when there is none.

public byte? Acknowledgement { get; init; }

Applied

Property

true when the last operation on this result installed a spool change.

public bool Applied { get; init; }

Command

Property

The RSDC of the S6F23 request for GemRequestKind.SpoolControl; GemSpoolCommand.Transmit (0) for other kinds.

public GemSpoolCommand Command { get; init; }

ConfirmationRequired

Property

true when the request was applied with unconfirmed persistence and its reply is held until GemEquipment.ConfirmSpoolReply.

public bool ConfirmationRequired { get; init; }

DeliveryAttempt

Property

The attempt number of the delivery for a delivery result; otherwise 0.

public ulong DeliveryAttempt { get; init; }

DeliveryCompleted

Property

true when GemEquipment.CompleteSpoolDelivery accepted this delivery result.

public bool DeliveryCompleted { get; init; }

DeliveryProof

Property

The delivery evidence of a delivery result.

public GemSpoolDeliveryProof DeliveryProof { get; init; }

DequeuePending

Property

true when success was accepted but removing the entry failed; call GemEquipment.RetrySpoolDequeue.

public bool DequeuePending { get; init; }

Durability

Property

How durably the change applied through this result was stored.

public GemSpoolDurability Durability { get; init; }

EntryId

Property

The ID of the delivered entry for a delivery result; otherwise 0.

public ulong EntryId { get; init; }

ErrorCount

Property

The number of stream errors in an S2F44 received by the host.

public nuint ErrorCount { get; init; }

IsRequest

Property

true for an S2F43, S2F59 or S6F23 request received by the equipment.

public bool IsRequest { get; init; }

PersistenceStatus

Property

The PdcommStatus value of the last persistence failure on this result, which stays visible after GemEquipment.ConfirmSpoolReply; otherwise 0.

public int PersistenceStatus { get; init; }

ReplyReady

Property

true when a prepared reply is retained and GemEquipment.RespondSpool sends it without applying the request again.

public bool ReplyReady { get; init; }

RequestKind

Property

GemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl or GemRequestKind.SpoolDelivery.

public GemRequestKind RequestKind { get; init; }

Responded

Property

true when the reply to the request has been sent.

public bool Responded { get; init; }

SelectionCount

Property

The number of stream selections in an S2F43 received by the equipment or in an S2F60 received by the host.

public nuint SelectionCount { get; init; }

SuccessAccepted

Property

true when success was accepted for this delivery result.

public bool SuccessAccepted { get; init; }