26 lines
673 B
Swift
26 lines
673 B
Swift
|
|
import NetworkCityCore
|
||
|
|
|
||
|
|
/// One endpoint's live detail for the inspector panel.
|
||
|
|
struct EndpointInfo: Identifiable {
|
||
|
|
var id: String { host }
|
||
|
|
let host: String
|
||
|
|
let rdns: String?
|
||
|
|
let downKBs: Double
|
||
|
|
let upKBs: Double
|
||
|
|
let topClass: TrafficClass
|
||
|
|
let rttMs: Double?
|
||
|
|
}
|
||
|
|
|
||
|
|
/// A live snapshot of one district, shown when its hub is clicked. Rebuilt each
|
||
|
|
/// tick while selected so the panel updates in real time.
|
||
|
|
struct OrgInspection: Identifiable {
|
||
|
|
var id: String { key }
|
||
|
|
let key: String
|
||
|
|
let title: String
|
||
|
|
let downKBs: Double
|
||
|
|
let upKBs: Double
|
||
|
|
let endpointCount: Int
|
||
|
|
let endpoints: [EndpointInfo]
|
||
|
|
let processes: [String]
|
||
|
|
}
|