2 // provides MessageFile
3 import "goby/common/protobuf/option_extensions.proto";
5 package goby.acomms.protobuf;
9 // optional int32 modem_id = 1 [(goby.field).description="Unique number
10 // 1-31 to identify this node", (goby.field).example="1"];
11 optional string crypto_passphrase = 2 [
12 (goby.field).description =
13 "If given, encrypt all communications with this passphrase using "
15 "Omit for unencrypted communications.",
16 (goby.field).example = "twinkletoes%24"
18 repeated uint32 skip_crypto_for_id = 3
19 [(goby.field).description =
20 "Skip encrypting and decrypting these DCCL IDs"];
21 optional string id_codec = 4;
24 message ArithmeticModel
26 required string name = 1;
28 repeated uint32 frequency =
29 10; // frequency of the symbol given by the repeated field index
30 // probability is (frequency / sum(frequency))
31 optional uint32 eof_frequency = 11
32 [default = 1]; // frequency of EOF symbol
33 optional uint32 out_of_range_frequency = 12
35 0]; // frequency of the out-of-range value, that is, the value
36 // not within the range defined by [symbol_to_value(0),
37 // maximum_value). This *may* be zero, in this case, out
38 // of range values end encoding and return EOF there.
40 repeated double value_bound =
41 20; // set of bounds of value in double space that maps to symbol given
42 // by repeated field index; upper bound is given by lower bound of
43 // the next symbol. Size must be size(frequency) + 1 (number of
46 optional bool is_adaptive = 30 [default = false];