2 import "goby/protobuf/option_extensions.proto";
3 import "goby/util/protobuf/debug_logger.proto";
4 import "goby/moos/protobuf/translator.proto";
6 package goby.moos.protobuf;
8 message GobyMOOSAppConfig
10 // Global moos variables (Specified outside "ProcessConfig" blocks)
11 optional bool log = 100 [
13 (goby.field).moos_global = "log",
14 (goby.field).description =
15 "Should we write a text log of the terminal output?"
17 optional string log_path = 101 [
19 (goby.field).moos_global = "log_path",
20 (goby.field).description =
21 "Directory path to write the text log of the terminal output (if "
25 optional bool log_omit_file_timestamp = 111 [
27 (goby.field).moos_global = "log_omit_file_timestamp",
28 (goby.field).description =
29 "If true, omit timestamp from debug log file string"
31 optional bool log_omit_latest_symlink = 112 [
33 (goby.field).moos_global = "log_omit_latest_symlink",
34 (goby.field).description = "If true, omit symlink to latest file"
37 optional goby.util.protobuf.GLogConfig.Verbosity log_verbosity = 105 [
39 (goby.field).description = "Verbosity of the log file"
42 optional string community = 102 [
43 (goby.field).moos_global = "Community",
44 (goby.field).description = "The vehicle's name",
45 (goby.field).example = "AUV23"
47 optional double lat_origin = 103 [
48 (goby.field).moos_global = "LatOrigin",
49 (goby.field).description =
50 "Latitude in decimal degrees of the local cartesian datum",
51 (goby.field).example = "42.5"
53 optional double lon_origin = 104 [
54 (goby.field).moos_global = "LongOrigin",
55 (goby.field).description =
56 "Longitude in decimal degrees of the local cartesian datum",
57 (goby.field).example = "10.9"
60 optional uint32 time_warp_multiplier = 106 [
62 (goby.field).moos_global = "MOOSTimeWarp",
63 (goby.field).description =
64 "Factor by which to make the clock run faster."
67 optional string server_host = 107 [
68 (goby.field).moos_global = "ServerHost",
69 (goby.field).description = "MOOSDB Server Host name"
71 optional int32 server_port = 108 [
72 (goby.field).moos_global = "ServerPort",
73 (goby.field).description = "MOOSDB Server Port"
76 optional uint32 app_tick = 1 [
78 (goby.field).description = "Frequency at which to run Iterate()."
81 optional uint32 comm_tick = 2 [
83 (goby.field).description =
84 "Frequency at which to call into the MOOSDB for mail."
87 optional goby.util.protobuf.GLogConfig.Verbosity verbosity = 3 [
89 (goby.field).description = "Verbosity of the terminal window output"
91 optional bool show_gui = 4 [
93 (goby.field).description =
94 "Set to true to display windowed NCurses GUI for terminal output."
97 optional bool use_binary_protobuf = 109 [
99 (goby.field).moos_global = "use_binary_protobuf",
100 (goby.field).description =
101 "If true, use TECHNIQUE_PREFIXED_PROTOBUF_NATIVE_ENCODED for parse_for_moos "
102 "and serialize_for_moos"
105 optional goby.moos.protobuf.TranslatorEntry.ParserSerializerTechnique
106 moos_parser_technique = 110 [
107 default = TECHNIQUE_PREFIXED_PROTOBUF_TEXT_FORMAT,
108 (goby.field).moos_global = "moos_parser_technique"
111 // post various configuration values to the MOOSDB on startup
119 required Type type = 1 [
120 (goby.field).description = "type of MOOS variable to publish",
121 (goby.field).example = "INI_DOUBLE"
123 required string moos_var = 2 [
124 (goby.field).description = "name of MOOS variable to publish to",
125 (goby.field).example = "SOME_MOOS_VAR"
127 optional string global_cfg_var = 3 [
128 (goby.field).description =
129 "Optionally, instead of giving `sval` or `dval`, give a name "
130 "here of a global MOOS variable (one at the top of the file) "
131 "whose contents should be written to `moos_var`",
132 (goby.field).example = "LatOrigin"
133 ]; // pull from globals at top of MOOS file
134 optional double dval = 4 [
135 (goby.field).description = "Value to write for type==INI_DOUBLE",
136 (goby.field).example = "3.454"
137 ]; // required if type == MOOS_DOUBLE
138 optional string sval = 5 [
139 (goby.field).description = "Value to write for type==INI_STRING",
140 (goby.field).example = "a string"
141 ]; // required if type == MOOS_STRING
142 optional bool trim = 6 [
143 (goby.field).description =
144 "Trim whitespace from front and back of string",
148 repeated Initializer initializer = 10
149 [(goby.field).description =
150 "Publish a constant value to the MOOSDB at startup"];