@rise-maritime/keelson-js 0.6.0-alpha.232.dev.1 → 0.6.0-alpha.255.dev.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (37) hide show
  1. package/dist/index.d.ts +8 -8
  2. package/dist/interfaces/Route.d.ts +24 -0
  3. package/dist/interfaces/Route.js +57 -2
  4. package/dist/interfaces/ScenarioControl.d.ts +3 -96
  5. package/dist/interfaces/ScenarioControl.js +37 -394
  6. package/dist/interfaces/VehicleSimulatorControl.d.ts +83 -0
  7. package/dist/interfaces/VehicleSimulatorControl.js +293 -1
  8. package/dist/interfaces/serviceRegistry.d.ts +8 -8
  9. package/dist/payloads/ChecklistEvent.d.ts +178 -0
  10. package/dist/payloads/ChecklistEvent.js +539 -0
  11. package/dist/payloads/ChecklistEvidence.d.ts +79 -0
  12. package/dist/payloads/ChecklistEvidence.js +287 -0
  13. package/dist/payloads/ChecklistPresence.d.ts +68 -0
  14. package/dist/payloads/ChecklistPresence.js +286 -0
  15. package/dist/payloads/ChecklistProcedure.d.ts +81 -0
  16. package/dist/payloads/ChecklistProcedure.js +364 -0
  17. package/dist/payloads/ChecklistState.d.ts +283 -0
  18. package/dist/payloads/ChecklistState.js +1100 -0
  19. package/dist/payloads/EnvelopeExceedance.d.ts +216 -0
  20. package/dist/payloads/EnvelopeExceedance.js +461 -0
  21. package/dist/payloads/Route.d.ts +24 -0
  22. package/dist/payloads/Route.js +57 -2
  23. package/dist/payloads/RouteExecution.d.ts +81 -1
  24. package/dist/payloads/RouteExecution.js +215 -1
  25. package/dist/payloads/ScenarioEvent.d.ts +90 -0
  26. package/dist/payloads/ScenarioEvent.js +294 -0
  27. package/dist/payloads/ScenarioTickAck.d.ts +95 -0
  28. package/dist/payloads/ScenarioTickAck.js +239 -0
  29. package/dist/payloads/index.foxglove.d.ts +1 -1
  30. package/dist/payloads/index.foxglove.js +1 -1
  31. package/dist/payloads/index.google.protobuf.d.ts +1 -1
  32. package/dist/payloads/index.google.protobuf.js +1 -1
  33. package/dist/payloads/index.keelson.d.ts +9 -1
  34. package/dist/payloads/index.keelson.js +9 -1
  35. package/dist/qos.json +13 -1
  36. package/dist/subjects.json +9 -1
  37. package/package.json +1 -1
@@ -5,315 +5,12 @@
5
5
  // protoc v6.30.2
6
6
  // source: ScenarioControl.proto
7
7
  Object.defineProperty(exports, "__esModule", { value: true });
8
- exports.ScenarioControlDefinition = exports.StepResponse = exports.LoadResponse = exports.SetRateResponse = exports.ResetResponse = exports.StopResponse = exports.PauseResponse = exports.StartResponse = exports.SetRateRequest = exports.StepRequest = exports.LoadRequest = exports.ListResponse = exports.ListRequest = exports.ScenarioInfo = exports.protobufPackage = void 0;
8
+ exports.ScenarioControlDefinition = exports.StepResponse = exports.SetRateResponse = exports.ResetResponse = exports.StopResponse = exports.PauseResponse = exports.StartResponse = exports.LoadResponse = exports.SetRateRequest = exports.StepRequest = exports.LoadRequest = exports.protobufPackage = void 0;
9
9
  /* eslint-disable */
10
10
  const wire_1 = require("@bufbuild/protobuf/wire");
11
11
  const empty_1 = require("./google/protobuf/empty");
12
12
  const timestamp_1 = require("./google/protobuf/timestamp");
13
13
  exports.protobufPackage = "keelson.interfaces.scenario_control";
14
- function createBaseScenarioInfo() {
15
- return {
16
- scenarioId: "",
17
- description: "",
18
- scenarioHash: "",
19
- vesselCount: 0,
20
- durationTicks: 0,
21
- stepSizeMs: 0,
22
- loadable: false,
23
- reason: "",
24
- };
25
- }
26
- exports.ScenarioInfo = {
27
- encode(message, writer = new wire_1.BinaryWriter()) {
28
- if (message.scenarioId !== "") {
29
- writer.uint32(10).string(message.scenarioId);
30
- }
31
- if (message.description !== "") {
32
- writer.uint32(18).string(message.description);
33
- }
34
- if (message.scenarioHash !== "") {
35
- writer.uint32(26).string(message.scenarioHash);
36
- }
37
- if (message.vesselCount !== 0) {
38
- writer.uint32(32).uint32(message.vesselCount);
39
- }
40
- if (message.durationTicks !== 0) {
41
- writer.uint32(40).uint64(message.durationTicks);
42
- }
43
- if (message.stepSizeMs !== 0) {
44
- writer.uint32(48).uint32(message.stepSizeMs);
45
- }
46
- if (message.loadable !== false) {
47
- writer.uint32(56).bool(message.loadable);
48
- }
49
- if (message.reason !== "") {
50
- writer.uint32(66).string(message.reason);
51
- }
52
- return writer;
53
- },
54
- decode(input, length) {
55
- const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
56
- let end = length === undefined ? reader.len : reader.pos + length;
57
- const message = createBaseScenarioInfo();
58
- while (reader.pos < end) {
59
- const tag = reader.uint32();
60
- switch (tag >>> 3) {
61
- case 1: {
62
- if (tag !== 10) {
63
- break;
64
- }
65
- message.scenarioId = reader.string();
66
- continue;
67
- }
68
- case 2: {
69
- if (tag !== 18) {
70
- break;
71
- }
72
- message.description = reader.string();
73
- continue;
74
- }
75
- case 3: {
76
- if (tag !== 26) {
77
- break;
78
- }
79
- message.scenarioHash = reader.string();
80
- continue;
81
- }
82
- case 4: {
83
- if (tag !== 32) {
84
- break;
85
- }
86
- message.vesselCount = reader.uint32();
87
- continue;
88
- }
89
- case 5: {
90
- if (tag !== 40) {
91
- break;
92
- }
93
- message.durationTicks = longToNumber(reader.uint64());
94
- continue;
95
- }
96
- case 6: {
97
- if (tag !== 48) {
98
- break;
99
- }
100
- message.stepSizeMs = reader.uint32();
101
- continue;
102
- }
103
- case 7: {
104
- if (tag !== 56) {
105
- break;
106
- }
107
- message.loadable = reader.bool();
108
- continue;
109
- }
110
- case 8: {
111
- if (tag !== 66) {
112
- break;
113
- }
114
- message.reason = reader.string();
115
- continue;
116
- }
117
- }
118
- if ((tag & 7) === 4 || tag === 0) {
119
- break;
120
- }
121
- reader.skip(tag & 7);
122
- }
123
- return message;
124
- },
125
- fromJSON(object) {
126
- return {
127
- scenarioId: isSet(object.scenarioId) ? globalThis.String(object.scenarioId) : "",
128
- description: isSet(object.description) ? globalThis.String(object.description) : "",
129
- scenarioHash: isSet(object.scenarioHash) ? globalThis.String(object.scenarioHash) : "",
130
- vesselCount: isSet(object.vesselCount) ? globalThis.Number(object.vesselCount) : 0,
131
- durationTicks: isSet(object.durationTicks) ? globalThis.Number(object.durationTicks) : 0,
132
- stepSizeMs: isSet(object.stepSizeMs) ? globalThis.Number(object.stepSizeMs) : 0,
133
- loadable: isSet(object.loadable) ? globalThis.Boolean(object.loadable) : false,
134
- reason: isSet(object.reason) ? globalThis.String(object.reason) : "",
135
- };
136
- },
137
- toJSON(message) {
138
- const obj = {};
139
- if (message.scenarioId !== "") {
140
- obj.scenarioId = message.scenarioId;
141
- }
142
- if (message.description !== "") {
143
- obj.description = message.description;
144
- }
145
- if (message.scenarioHash !== "") {
146
- obj.scenarioHash = message.scenarioHash;
147
- }
148
- if (message.vesselCount !== 0) {
149
- obj.vesselCount = Math.round(message.vesselCount);
150
- }
151
- if (message.durationTicks !== 0) {
152
- obj.durationTicks = Math.round(message.durationTicks);
153
- }
154
- if (message.stepSizeMs !== 0) {
155
- obj.stepSizeMs = Math.round(message.stepSizeMs);
156
- }
157
- if (message.loadable !== false) {
158
- obj.loadable = message.loadable;
159
- }
160
- if (message.reason !== "") {
161
- obj.reason = message.reason;
162
- }
163
- return obj;
164
- },
165
- create(base) {
166
- return exports.ScenarioInfo.fromPartial(base ?? {});
167
- },
168
- fromPartial(object) {
169
- const message = createBaseScenarioInfo();
170
- message.scenarioId = object.scenarioId ?? "";
171
- message.description = object.description ?? "";
172
- message.scenarioHash = object.scenarioHash ?? "";
173
- message.vesselCount = object.vesselCount ?? 0;
174
- message.durationTicks = object.durationTicks ?? 0;
175
- message.stepSizeMs = object.stepSizeMs ?? 0;
176
- message.loadable = object.loadable ?? false;
177
- message.reason = object.reason ?? "";
178
- return message;
179
- },
180
- };
181
- function createBaseListRequest() {
182
- return { pattern: "" };
183
- }
184
- exports.ListRequest = {
185
- encode(message, writer = new wire_1.BinaryWriter()) {
186
- if (message.pattern !== "") {
187
- writer.uint32(10).string(message.pattern);
188
- }
189
- return writer;
190
- },
191
- decode(input, length) {
192
- const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
193
- let end = length === undefined ? reader.len : reader.pos + length;
194
- const message = createBaseListRequest();
195
- while (reader.pos < end) {
196
- const tag = reader.uint32();
197
- switch (tag >>> 3) {
198
- case 1: {
199
- if (tag !== 10) {
200
- break;
201
- }
202
- message.pattern = reader.string();
203
- continue;
204
- }
205
- }
206
- if ((tag & 7) === 4 || tag === 0) {
207
- break;
208
- }
209
- reader.skip(tag & 7);
210
- }
211
- return message;
212
- },
213
- fromJSON(object) {
214
- return { pattern: isSet(object.pattern) ? globalThis.String(object.pattern) : "" };
215
- },
216
- toJSON(message) {
217
- const obj = {};
218
- if (message.pattern !== "") {
219
- obj.pattern = message.pattern;
220
- }
221
- return obj;
222
- },
223
- create(base) {
224
- return exports.ListRequest.fromPartial(base ?? {});
225
- },
226
- fromPartial(object) {
227
- const message = createBaseListRequest();
228
- message.pattern = object.pattern ?? "";
229
- return message;
230
- },
231
- };
232
- function createBaseListResponse() {
233
- return { baseDirectory: "", scenarios: [], truncated: false };
234
- }
235
- exports.ListResponse = {
236
- encode(message, writer = new wire_1.BinaryWriter()) {
237
- if (message.baseDirectory !== "") {
238
- writer.uint32(10).string(message.baseDirectory);
239
- }
240
- for (const v of message.scenarios) {
241
- exports.ScenarioInfo.encode(v, writer.uint32(18).fork()).join();
242
- }
243
- if (message.truncated !== false) {
244
- writer.uint32(24).bool(message.truncated);
245
- }
246
- return writer;
247
- },
248
- decode(input, length) {
249
- const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
250
- let end = length === undefined ? reader.len : reader.pos + length;
251
- const message = createBaseListResponse();
252
- while (reader.pos < end) {
253
- const tag = reader.uint32();
254
- switch (tag >>> 3) {
255
- case 1: {
256
- if (tag !== 10) {
257
- break;
258
- }
259
- message.baseDirectory = reader.string();
260
- continue;
261
- }
262
- case 2: {
263
- if (tag !== 18) {
264
- break;
265
- }
266
- message.scenarios.push(exports.ScenarioInfo.decode(reader, reader.uint32()));
267
- continue;
268
- }
269
- case 3: {
270
- if (tag !== 24) {
271
- break;
272
- }
273
- message.truncated = reader.bool();
274
- continue;
275
- }
276
- }
277
- if ((tag & 7) === 4 || tag === 0) {
278
- break;
279
- }
280
- reader.skip(tag & 7);
281
- }
282
- return message;
283
- },
284
- fromJSON(object) {
285
- return {
286
- baseDirectory: isSet(object.baseDirectory) ? globalThis.String(object.baseDirectory) : "",
287
- scenarios: globalThis.Array.isArray(object?.scenarios)
288
- ? object.scenarios.map((e) => exports.ScenarioInfo.fromJSON(e))
289
- : [],
290
- truncated: isSet(object.truncated) ? globalThis.Boolean(object.truncated) : false,
291
- };
292
- },
293
- toJSON(message) {
294
- const obj = {};
295
- if (message.baseDirectory !== "") {
296
- obj.baseDirectory = message.baseDirectory;
297
- }
298
- if (message.scenarios?.length) {
299
- obj.scenarios = message.scenarios.map((e) => exports.ScenarioInfo.toJSON(e));
300
- }
301
- if (message.truncated !== false) {
302
- obj.truncated = message.truncated;
303
- }
304
- return obj;
305
- },
306
- create(base) {
307
- return exports.ListResponse.fromPartial(base ?? {});
308
- },
309
- fromPartial(object) {
310
- const message = createBaseListResponse();
311
- message.baseDirectory = object.baseDirectory ?? "";
312
- message.scenarios = object.scenarios?.map((e) => exports.ScenarioInfo.fromPartial(e)) || [];
313
- message.truncated = object.truncated ?? false;
314
- return message;
315
- },
316
- };
317
14
  function createBaseLoadRequest() {
318
15
  return { scenario: "" };
319
16
  }
@@ -467,17 +164,17 @@ exports.SetRateRequest = {
467
164
  return message;
468
165
  },
469
166
  };
470
- function createBaseStartResponse() {
167
+ function createBaseLoadResponse() {
471
168
  return {};
472
169
  }
473
- exports.StartResponse = {
170
+ exports.LoadResponse = {
474
171
  encode(_, writer = new wire_1.BinaryWriter()) {
475
172
  return writer;
476
173
  },
477
174
  decode(input, length) {
478
175
  const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
479
176
  let end = length === undefined ? reader.len : reader.pos + length;
480
- const message = createBaseStartResponse();
177
+ const message = createBaseLoadResponse();
481
178
  while (reader.pos < end) {
482
179
  const tag = reader.uint32();
483
180
  switch (tag >>> 3) {
@@ -497,24 +194,24 @@ exports.StartResponse = {
497
194
  return obj;
498
195
  },
499
196
  create(base) {
500
- return exports.StartResponse.fromPartial(base ?? {});
197
+ return exports.LoadResponse.fromPartial(base ?? {});
501
198
  },
502
199
  fromPartial(_) {
503
- const message = createBaseStartResponse();
200
+ const message = createBaseLoadResponse();
504
201
  return message;
505
202
  },
506
203
  };
507
- function createBasePauseResponse() {
204
+ function createBaseStartResponse() {
508
205
  return {};
509
206
  }
510
- exports.PauseResponse = {
207
+ exports.StartResponse = {
511
208
  encode(_, writer = new wire_1.BinaryWriter()) {
512
209
  return writer;
513
210
  },
514
211
  decode(input, length) {
515
212
  const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
516
213
  let end = length === undefined ? reader.len : reader.pos + length;
517
- const message = createBasePauseResponse();
214
+ const message = createBaseStartResponse();
518
215
  while (reader.pos < end) {
519
216
  const tag = reader.uint32();
520
217
  switch (tag >>> 3) {
@@ -534,24 +231,24 @@ exports.PauseResponse = {
534
231
  return obj;
535
232
  },
536
233
  create(base) {
537
- return exports.PauseResponse.fromPartial(base ?? {});
234
+ return exports.StartResponse.fromPartial(base ?? {});
538
235
  },
539
236
  fromPartial(_) {
540
- const message = createBasePauseResponse();
237
+ const message = createBaseStartResponse();
541
238
  return message;
542
239
  },
543
240
  };
544
- function createBaseStopResponse() {
241
+ function createBasePauseResponse() {
545
242
  return {};
546
243
  }
547
- exports.StopResponse = {
244
+ exports.PauseResponse = {
548
245
  encode(_, writer = new wire_1.BinaryWriter()) {
549
246
  return writer;
550
247
  },
551
248
  decode(input, length) {
552
249
  const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
553
250
  let end = length === undefined ? reader.len : reader.pos + length;
554
- const message = createBaseStopResponse();
251
+ const message = createBasePauseResponse();
555
252
  while (reader.pos < end) {
556
253
  const tag = reader.uint32();
557
254
  switch (tag >>> 3) {
@@ -571,24 +268,24 @@ exports.StopResponse = {
571
268
  return obj;
572
269
  },
573
270
  create(base) {
574
- return exports.StopResponse.fromPartial(base ?? {});
271
+ return exports.PauseResponse.fromPartial(base ?? {});
575
272
  },
576
273
  fromPartial(_) {
577
- const message = createBaseStopResponse();
274
+ const message = createBasePauseResponse();
578
275
  return message;
579
276
  },
580
277
  };
581
- function createBaseResetResponse() {
278
+ function createBaseStopResponse() {
582
279
  return {};
583
280
  }
584
- exports.ResetResponse = {
281
+ exports.StopResponse = {
585
282
  encode(_, writer = new wire_1.BinaryWriter()) {
586
283
  return writer;
587
284
  },
588
285
  decode(input, length) {
589
286
  const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
590
287
  let end = length === undefined ? reader.len : reader.pos + length;
591
- const message = createBaseResetResponse();
288
+ const message = createBaseStopResponse();
592
289
  while (reader.pos < end) {
593
290
  const tag = reader.uint32();
594
291
  switch (tag >>> 3) {
@@ -608,24 +305,24 @@ exports.ResetResponse = {
608
305
  return obj;
609
306
  },
610
307
  create(base) {
611
- return exports.ResetResponse.fromPartial(base ?? {});
308
+ return exports.StopResponse.fromPartial(base ?? {});
612
309
  },
613
310
  fromPartial(_) {
614
- const message = createBaseResetResponse();
311
+ const message = createBaseStopResponse();
615
312
  return message;
616
313
  },
617
314
  };
618
- function createBaseSetRateResponse() {
315
+ function createBaseResetResponse() {
619
316
  return {};
620
317
  }
621
- exports.SetRateResponse = {
318
+ exports.ResetResponse = {
622
319
  encode(_, writer = new wire_1.BinaryWriter()) {
623
320
  return writer;
624
321
  },
625
322
  decode(input, length) {
626
323
  const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
627
324
  let end = length === undefined ? reader.len : reader.pos + length;
628
- const message = createBaseSetRateResponse();
325
+ const message = createBaseResetResponse();
629
326
  while (reader.pos < end) {
630
327
  const tag = reader.uint32();
631
328
  switch (tag >>> 3) {
@@ -645,57 +342,27 @@ exports.SetRateResponse = {
645
342
  return obj;
646
343
  },
647
344
  create(base) {
648
- return exports.SetRateResponse.fromPartial(base ?? {});
345
+ return exports.ResetResponse.fromPartial(base ?? {});
649
346
  },
650
347
  fromPartial(_) {
651
- const message = createBaseSetRateResponse();
348
+ const message = createBaseResetResponse();
652
349
  return message;
653
350
  },
654
351
  };
655
- function createBaseLoadResponse() {
656
- return { scenarioId: "", scenarioHash: "", runId: "" };
352
+ function createBaseSetRateResponse() {
353
+ return {};
657
354
  }
658
- exports.LoadResponse = {
659
- encode(message, writer = new wire_1.BinaryWriter()) {
660
- if (message.scenarioId !== "") {
661
- writer.uint32(10).string(message.scenarioId);
662
- }
663
- if (message.scenarioHash !== "") {
664
- writer.uint32(18).string(message.scenarioHash);
665
- }
666
- if (message.runId !== "") {
667
- writer.uint32(26).string(message.runId);
668
- }
355
+ exports.SetRateResponse = {
356
+ encode(_, writer = new wire_1.BinaryWriter()) {
669
357
  return writer;
670
358
  },
671
359
  decode(input, length) {
672
360
  const reader = input instanceof wire_1.BinaryReader ? input : new wire_1.BinaryReader(input);
673
361
  let end = length === undefined ? reader.len : reader.pos + length;
674
- const message = createBaseLoadResponse();
362
+ const message = createBaseSetRateResponse();
675
363
  while (reader.pos < end) {
676
364
  const tag = reader.uint32();
677
365
  switch (tag >>> 3) {
678
- case 1: {
679
- if (tag !== 10) {
680
- break;
681
- }
682
- message.scenarioId = reader.string();
683
- continue;
684
- }
685
- case 2: {
686
- if (tag !== 18) {
687
- break;
688
- }
689
- message.scenarioHash = reader.string();
690
- continue;
691
- }
692
- case 3: {
693
- if (tag !== 26) {
694
- break;
695
- }
696
- message.runId = reader.string();
697
- continue;
698
- }
699
366
  }
700
367
  if ((tag & 7) === 4 || tag === 0) {
701
368
  break;
@@ -704,34 +371,18 @@ exports.LoadResponse = {
704
371
  }
705
372
  return message;
706
373
  },
707
- fromJSON(object) {
708
- return {
709
- scenarioId: isSet(object.scenarioId) ? globalThis.String(object.scenarioId) : "",
710
- scenarioHash: isSet(object.scenarioHash) ? globalThis.String(object.scenarioHash) : "",
711
- runId: isSet(object.runId) ? globalThis.String(object.runId) : "",
712
- };
374
+ fromJSON(_) {
375
+ return {};
713
376
  },
714
- toJSON(message) {
377
+ toJSON(_) {
715
378
  const obj = {};
716
- if (message.scenarioId !== "") {
717
- obj.scenarioId = message.scenarioId;
718
- }
719
- if (message.scenarioHash !== "") {
720
- obj.scenarioHash = message.scenarioHash;
721
- }
722
- if (message.runId !== "") {
723
- obj.runId = message.runId;
724
- }
725
379
  return obj;
726
380
  },
727
381
  create(base) {
728
- return exports.LoadResponse.fromPartial(base ?? {});
382
+ return exports.SetRateResponse.fromPartial(base ?? {});
729
383
  },
730
- fromPartial(object) {
731
- const message = createBaseLoadResponse();
732
- message.scenarioId = object.scenarioId ?? "";
733
- message.scenarioHash = object.scenarioHash ?? "";
734
- message.runId = object.runId ?? "";
384
+ fromPartial(_) {
385
+ const message = createBaseSetRateResponse();
735
386
  return message;
736
387
  },
737
388
  };
@@ -807,14 +458,6 @@ exports.ScenarioControlDefinition = {
807
458
  name: "ScenarioControl",
808
459
  fullName: "keelson.interfaces.scenario_control.ScenarioControl",
809
460
  methods: {
810
- list: {
811
- name: "list",
812
- requestType: exports.ListRequest,
813
- requestStream: false,
814
- responseType: exports.ListResponse,
815
- responseStream: false,
816
- options: {},
817
- },
818
461
  load: {
819
462
  name: "load",
820
463
  requestType: exports.LoadRequest,
@@ -15,8 +15,76 @@ export interface InitialPose {
15
15
  */
16
16
  export interface SetInitialPoseResponse {
17
17
  }
18
+ /**
19
+ * How a vehicle is told to steer. The frame is the field rather than a
20
+ * separate discriminator, so an order cannot name one frame and carry a
21
+ * value meant for another.
22
+ *
23
+ * The two are different instructions, not two spellings of one. A course
24
+ * over ground is made good against the water that is moving the hull; a
25
+ * heading is where she points, and in any current the two differ by the
26
+ * drift angle. A simulator that treats them alike is wrong by that angle
27
+ * and says nothing about it.
28
+ */
29
+ export interface SteeringOrder {
30
+ /** Make good this course, degrees true, [0, 360). */
31
+ courseOverGroundDeg?: number | undefined;
32
+ /**
33
+ * Point this way, degrees true, [0, 360). What she makes good is then
34
+ * whatever the water leaves her.
35
+ */
36
+ headingDeg?: number | undefined;
37
+ }
38
+ /**
39
+ * How a vehicle is told to drive. Four frames, in decreasing order of what
40
+ * the vehicle is asked to guarantee: a speed over the ground is a promise
41
+ * about the track, a speed through the water is a promise about the hull,
42
+ * and the last two are machinery settings that promise nothing about
43
+ * either — what they produce is the vehicle's business.
44
+ */
45
+ export interface PropulsionOrder {
46
+ /**
47
+ * Make good this speed over the ground, m/s. Not always reachable: in
48
+ * a stream that beats her, the vehicle makes its best and the
49
+ * shortfall is what the recording shows.
50
+ */
51
+ sogMps?: number | undefined;
52
+ /** This speed through the water, m/s. */
53
+ stwMps?: number | undefined;
54
+ /**
55
+ * A throttle setting, percent. Negative is astern where the vehicle
56
+ * has it; a vehicle that cannot go astern replies OUT_OF_RANGE rather
57
+ * than clamping silently.
58
+ */
59
+ enginePct?: number | undefined;
60
+ /** Shaft revolutions per minute. Signed, as engine_pct is. */
61
+ shaftRpm?: number | undefined;
62
+ }
63
+ /**
64
+ * A standing order: what the vehicle should be doing until told otherwise.
65
+ *
66
+ * Both halves are optional and omitting one leaves it as it is, so a course
67
+ * can be changed without disturbing a speed. Sending neither is an error
68
+ * rather than a no-op: it is almost always a caller that failed to set the
69
+ * field it meant to.
70
+ */
71
+ export interface StandingOrder {
72
+ steering: SteeringOrder | undefined;
73
+ propulsion: PropulsionOrder | undefined;
74
+ }
75
+ /**
76
+ * Dedicated response for the same reason SetInitialPoseResponse is one: an
77
+ * order that was accepted but modified — clamped to a limit the vehicle
78
+ * declares — is a plausible thing to want to return later.
79
+ */
80
+ export interface SetStandingOrderResponse {
81
+ }
18
82
  export declare const InitialPose: MessageFns<InitialPose>;
19
83
  export declare const SetInitialPoseResponse: MessageFns<SetInitialPoseResponse>;
84
+ export declare const SteeringOrder: MessageFns<SteeringOrder>;
85
+ export declare const PropulsionOrder: MessageFns<PropulsionOrder>;
86
+ export declare const StandingOrder: MessageFns<StandingOrder>;
87
+ export declare const SetStandingOrderResponse: MessageFns<SetStandingOrderResponse>;
20
88
  export type VehicleSimulatorControlDefinition = typeof VehicleSimulatorControlDefinition;
21
89
  export declare const VehicleSimulatorControlDefinition: {
22
90
  readonly name: "VehicleSimulatorControl";
@@ -34,6 +102,21 @@ export declare const VehicleSimulatorControlDefinition: {
34
102
  readonly responseStream: false;
35
103
  readonly options: {};
36
104
  };
105
+ /**
106
+ * Give a RUNNING entity a new standing order, without moving it. On a
107
+ * STOPPED or ASSIGNED entity, replies ErrorResponse{code =
108
+ * INVALID_STATE} — the mirror of set_initial_pose's own rule, and for
109
+ * the same reason: an order to a vehicle that is not going anywhere is
110
+ * a caller confusing setup with command.
111
+ */
112
+ readonly set_standing_order: {
113
+ readonly name: "set_standing_order";
114
+ readonly requestType: MessageFns<StandingOrder>;
115
+ readonly requestStream: false;
116
+ readonly responseType: MessageFns<SetStandingOrderResponse>;
117
+ readonly responseStream: false;
118
+ readonly options: {};
119
+ };
37
120
  };
38
121
  };
39
122
  type Builtin = Date | Function | Uint8Array | string | number | boolean | undefined;