• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
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