Goby3 3.2.3
2025.05.13
Loading...
Searching...
No Matches
amac.proto
Go to the documentation of this file.
1syntax = "proto2";
2import "dccl/option_extensions.proto";
3import "goby/acomms/protobuf/modem_message.proto";
4
5package goby.acomms.protobuf;
6
7message MACUpdate
8{
9 option (dccl.msg).id = 5;
10 option (dccl.msg).max_bytes = 64;
11 option (dccl.msg).codec_version = 3;
12
13 enum UpdateType // this are basically the std::list functions
14 {
15 NO_CHANGE = 0;
16 ASSIGN = 1;
17 PUSH_BACK = 2;
18 PUSH_FRONT = 3;
19 POP_BACK = 4;
20 POP_FRONT = 5;
21 INSERT = 6;
22 ERASE = 7;
23 CLEAR = 8;
24 }
25
26 required int32 src = 1 [
27 (dccl.field).min = 1,
28 (dccl.field).max = 30,
29 (dccl.field).in_head = true
30 ];
31 required int32 dest = 2 [
32 (dccl.field).min = 1,
33 (dccl.field).max = 30,
34 (dccl.field).in_head = true
35 ]; // modem_id that this update is for
36 optional UpdateType update_type = 3 [default = NO_CHANGE];
37 repeated ModemTransmission slot = 4 [(dccl.field).max_repeat = 10];
38 optional int32 first_iterator = 5 [
39 (dccl.field).min = 0,
40 (dccl.field).max = 60,
41 default = 0
42 ]; // integer offset from begin()
43 optional int32 second_iterator = 6 [
44 (dccl.field).min = -1,
45 (dccl.field).max = 60,
46 default = -1
47 ]; // integer offset from begin()
48
49 enum CycleState
50 {
51 STOPPED = 1;
52 STARTED = 2;
53 }
54 optional CycleState cycle_state = 7
55 [default = STARTED, (dccl.field).in_head = true];
56}