PDComm.GemSpoolInfo
Struct
Represents the spooling details of a GemResult.
public readonly record struct GemSpoolInfoThe 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
| Name | Description |
|---|---|
RequestKind | GemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl or GemRequestKind.SpoolDelivery. |
Command | The RSDC of the S6F23 request for GemRequestKind.SpoolControl; GemSpoolCommand.Transmit (0) for other kinds. |
Durability | How durably the change applied through this result was stored. |
DeliveryProof | The delivery evidence of a delivery result. |
PersistenceStatus | The PdcommStatus value of the last persistence failure on this result, which stays visible after GemEquipment.ConfirmSpoolReply; otherwise 0. |
EntryId | The ID of the delivered entry for a delivery result; otherwise 0. |
DeliveryAttempt | The attempt number of the delivery for a delivery result; otherwise 0. |
SelectionCount | The number of stream selections in an S2F43 received by the equipment or in an S2F60 received by the host. |
ErrorCount | The number of stream errors in an S2F44 received by the host. |
IsRequest | true for an S2F43, S2F59 or S6F23 request received by the equipment. |
Responded | true when the reply to the request has been sent. |
Acknowledgement | 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. |
Applied | true when the last operation on this result installed a spool change. |
ReplyReady | true when a prepared reply is retained and GemEquipment.RespondSpool sends it without applying the request again. |
ConfirmationRequired | true when the request was applied with unconfirmed persistence and its reply is held until GemEquipment.ConfirmSpoolReply. |
DeliveryCompleted | true when GemEquipment.CompleteSpoolDelivery accepted this delivery result. |
DequeuePending | true when success was accepted but removing the entry failed; call GemEquipment.RetrySpoolDequeue. |
SuccessAccepted | true 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
| Name | Description |
|---|---|
RequestKind | GemRequestKind.SpoolConfigure, GemRequestKind.SpoolQuery, GemRequestKind.SpoolControl or GemRequestKind.SpoolDelivery. |
Command | The RSDC of the S6F23 request for GemRequestKind.SpoolControl; GemSpoolCommand.Transmit (0) for other kinds. |
Durability | How durably the change applied through this result was stored. |
DeliveryProof | The delivery evidence of a delivery result. |
PersistenceStatus | The PdcommStatus value of the last persistence failure on this result, which stays visible after GemEquipment.ConfirmSpoolReply; otherwise 0. |
EntryId | The ID of the delivered entry for a delivery result; otherwise 0. |
DeliveryAttempt | The attempt number of the delivery for a delivery result; otherwise 0. |
SelectionCount | The number of stream selections in an S2F43 received by the equipment or in an S2F60 received by the host. |
ErrorCount | The number of stream errors in an S2F44 received by the host. |
IsRequest | true for an S2F43, S2F59 or S6F23 request received by the equipment. |
Responded | true when the reply to the request has been sent. |
Acknowledgement | 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. |
Applied | true when the last operation on this result installed a spool change. |
ReplyReady | true when a prepared reply is retained and GemEquipment.RespondSpool sends it without applying the request again. |
ConfirmationRequired | true when the request was applied with unconfirmed persistence and its reply is held until GemEquipment.ConfirmSpoolReply. |
DeliveryCompleted | true when GemEquipment.CompleteSpoolDelivery accepted this delivery result. |
DequeuePending | true when success was accepted but removing the entry failed; call GemEquipment.RetrySpoolDequeue. |
SuccessAccepted | true 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; }