Goby3 3.2.3
2025.05.13
Loading...
Searching...
No Matches
header.proto
Go to the documentation of this file.
1syntax = "proto2";
2import "dccl/option_extensions.proto";
3
4package goby.test.acomms.protobuf;
5
6// required fields will be filled in for you by ApplicationBase
7// if you choose not to do so yourself
8message Header
9{
10 option (dccl.msg).unit_system = "si";
11
12 //
13 // time
14 //
15
16 // micro-seconds since unix
17 required uint64 time = 10
18 [(dccl.field).codec = "_time", (dccl.field).in_head = true, (dccl.field).units = { prefix: "micro" base_dimensions: "T"} ];
19
20 //
21 // source
22 //
23 required uint32 source_platform = 11 [
24 (dccl.field).min = 0,
25 (dccl.field).max = 31,
26 (dccl.field).in_head = true
27 ];
28 optional string source_app = 12 [(dccl.field).omit = true];
29
30 //
31 // destination
32 //
33 enum PublishDestination
34 {
35 PUBLISH_SELF = 1;
36 PUBLISH_OTHER = 2;
37 PUBLISH_ALL = 3;
38 }
39 optional PublishDestination dest_type = 13
40 [default = PUBLISH_SELF, (dccl.field).in_head = true];
41
42 optional uint32 dest_platform = 14 [
43 (dccl.field).min = 0,
44 (dccl.field).max = 31,
45 (dccl.field).in_head = true
46 ]; // required if dest_type == other
47}