1/* eslint-disable */ 2import type {ChipKind} from './common'; 3 4export const protobufPackage = 'netsim.model'; 5 6export enum PhyKind { 7 NONE = 'NONE', 8 BLUETOOTH_CLASSIC = 'BLUETOOTH_CLASSIC', 9 BLUETOOTH_LOW_ENERGY = 'BLUETOOTH_LOW_ENERGY', 10 WIFI = 'WIFI', 11 UWB = 'UWB', 12 WIFI_RTT = 'WIFI_RTT', 13 UNRECOGNIZED = 'UNRECOGNIZED', 14} 15 16/** An explicit valued boolean. */ 17export enum State { 18 UNKNOWN = 'UNKNOWN', 19 ON = 'ON', 20 OFF = 'OFF', 21 UNRECOGNIZED = 'UNRECOGNIZED', 22} 23 24/** 25 * A 3D position. A valid Position must have both x and y coordinates. 26 * The position coordinates are in meters. 27 */ 28export interface Position { 29 x: number; 30 y: number; 31 z: number; 32} 33 34export interface Orientation { 35 yaw: number; 36 pitch: number; 37 roll: number; 38} 39 40export interface Chip { 41 kind: ChipKind; 42 id: number; 43 /** optional like "rear-right" */ 44 name: string; 45 /** optional like Quorvo */ 46 manufacturer: string; 47 /** optional like DW300 */ 48 productName: string; 49 /** packet capture */ 50 capture: State; 51 bt?: Chip_Bluetooth|undefined; 52 uwb?: Chip_Radio|undefined; 53 wifi?: Chip_Radio|undefined; 54} 55 56/** Radio state associated with the Chip */ 57export interface Chip_Radio { 58 state: State; 59 range: number; 60 txCount: number; 61 rxCount: number; 62} 63 64/** Bluetooth has 2 radios */ 65export interface Chip_Bluetooth { 66 lowEnergy: Chip_Radio|undefined; 67 classic: Chip_Radio|undefined; 68} 69 70export interface Device { 71 id: number; 72 /** settable at creation */ 73 name: string; 74 visible: boolean; 75 position: Position|undefined; 76 orientation:|Orientation|undefined; 77 /** Device can have multiple chips of the same kind. */ 78 chips: Chip[]; 79} 80 81export interface Scene { 82 devices: Device[]; 83} 84 85export interface Capture { 86 /** same as chip_id */ 87 id: number; 88 chipKind: ChipKind; 89 /** device AVD name */ 90 deviceName: string; 91 /** capture state */ 92 state: State; 93 /** size of current capture */ 94 size: number; 95 /** number of records in current capture */ 96 records: number; 97 timestamp: Date|undefined; 98 valid: boolean; 99} 100