deq-runtime 0.4.1

deq: Real-time Quantum Error Correction Decoding System
// This file is @generated by prost-build.
/// One sampled shot from a simulator.
///
///
/// Carries only the flat physical-measurement record. Callers that want
/// per-gadget chunks can slice `outcomes` themselves using the
/// per-gadget measurement counts from the JIT library — the
/// : class:`deq.runtime.Sampler` wrapper exposes a `split_outcomes`
///   helper and a `partition` property for that.
#[derive(Clone, PartialEq, Eq, Hash, ::prost::Message)]
pub struct ShotSample {
    #[prost(message, optional, tag = "1")]
    pub outcomes: ::core::option::Option<super::util::BitVector>,
    /// Optional per-measurement loss flags, one bit per measurement in
    /// `outcomes`.  A set bit means the corresponding qubit was lost
    /// during that measurement, so the bit in `outcomes` is a randomized
    /// substitute filled in by the simulator and should be treated as
    /// unreliable.  Absent (or zero-length) when the sampler cannot
    /// distinguish loss from a regular outcome — which is the case for
    /// every Stim-native sampler today; only loss-aware samplers such as
    /// `--simulator python` driving `qdk.stim` populate this field.
    /// Mirrors the `loss_mask` field on :message:`deq.coordinator.Outcomes`.
    #[prost(message, optional, tag = "2")]
    pub loss_mask: ::core::option::Option<super::util::BitVector>,
}