weopqrst/moonroll/examples/bandwidth does not have a README file

    PackStats

    pub(all) struct PackStats {
    bytes : Int64
    packets : Int64
    frames_carried : Int64
    confirmed : Array[Int]
    rollbacks : Int64
    replayed : Int64
    mismatches : Int
    first_divergence : Int
    }

    一局跑完的统计。字节数按「所有单向链路累加」计,与人数无关地可比。

    PackStats::avg_bytes_per_packet

    fn PackStats::avg_bytes_per_packet(self : PackStats) -> Int

    PackStats::avg_frames_per_packet

    fn PackStats::avg_frames_per_packet(self : PackStats) -> Int

    Packing

    pub(all) enum Packing {
    Legacy
    Span
    Masked
    Adaptive
    Lean
    } derive(Eq)

    发包策略。

    Packing::equal

    fn Packing::equal(Packing, Packing) -> Bool

    Packing::label

    fn Packing::label(self : Packing) -> String

    Packing::not_equal

    fn Packing::not_equal(x : Packing, y : Packing) -> Bool

    run

    fn run(packing : Packing, spec :
    LinkSpec
    , total : Int) -> PackStats

    跑一局 4 人对局,packing 决定发包策略。

    Source Files