cosmos 3.9.2 → 4.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (438) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +23 -0
  3. data/.travis.yml +1 -0
  4. data/.yardopts +3 -0
  5. data/Gemfile +1 -1
  6. data/Manifest.txt +137 -52
  7. data/Rakefile +50 -44
  8. data/autohotkey/config/system/system.txt +0 -5
  9. data/autohotkey/config/targets/INST/cmd_tlm/inst_cmds.txt +6 -1
  10. data/autohotkey/config/targets/INST/screens/extra.txt +19 -0
  11. data/autohotkey/config/targets/INST/sequences/run_sequence.txt +1 -0
  12. data/autohotkey/config/targets/META/screens/data.txt +12 -0
  13. data/autohotkey/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  14. data/autohotkey/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
  15. data/autohotkey/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  16. data/autohotkey/config/targets/SYSTEM/screens/limits_change.txt +14 -0
  17. data/autohotkey/config/targets/SYSTEM/screens/meta.txt +14 -0
  18. data/autohotkey/config/targets/SYSTEM/target.txt +12 -0
  19. data/autohotkey/config/tools/cmd_tlm_server/cmd_tlm_server.txt +2 -2
  20. data/autohotkey/config/tools/test_runner/test_runner2.txt +1 -1
  21. data/autohotkey/tools/CmdSequence +14 -0
  22. data/autohotkey/tools/CmdSequenceAHK +23 -0
  23. data/autohotkey/tools/CmdSequenceAHK2 +16 -0
  24. data/autohotkey/tools/cmd_extractor.ahk +2 -2
  25. data/autohotkey/tools/cmd_sender.ahk +4 -6
  26. data/autohotkey/tools/cmd_sequence.ahk +215 -0
  27. data/autohotkey/tools/cmd_sequence2.ahk +23 -0
  28. data/autohotkey/tools/data_viewer.ahk +2 -3
  29. data/autohotkey/tools/limits_monitor.ahk +9 -11
  30. data/autohotkey/tools/open_gl_builder.ahk +1 -2
  31. data/autohotkey/tools/packet_viewer.ahk +51 -35
  32. data/autohotkey/tools/replay.ahk +1 -2
  33. data/autohotkey/tools/script_runner.ahk +1 -2
  34. data/autohotkey/tools/script_runner2.ahk +1 -2
  35. data/autohotkey/tools/test_runner2.ahk +1 -5
  36. data/autohotkey/tools/test_runner3.ahk +1 -3
  37. data/autohotkey/tools/tlm_grapher.ahk +1 -3
  38. data/autohotkey/tools/tlm_grapher3.ahk +1 -2
  39. data/autohotkey/tools/tlm_viewer.ahk +8 -3
  40. data/autohotkey/tools/tlm_viewer2.ahk +2 -3
  41. data/autohotkey/tools/tlm_viewer5.ahk +1 -2
  42. data/cosmos.gemspec +26 -20
  43. data/data/cmd_sequence.png +0 -0
  44. data/data/config/_array_params.yaml +23 -0
  45. data/data/config/_id_items.yaml +24 -0
  46. data/data/config/_id_params.yaml +58 -0
  47. data/data/config/_interfaces.yaml +206 -0
  48. data/data/config/_items.yaml +20 -0
  49. data/data/config/_params.yaml +58 -0
  50. data/data/config/cmd_tlm_server.yaml +110 -0
  51. data/data/config/command.yaml +38 -0
  52. data/data/config/command_modifiers.yaml +127 -0
  53. data/data/config/command_telemetry.yaml +3 -0
  54. data/data/config/data_viewer.yaml +43 -0
  55. data/data/config/handbook_creator.yaml +23 -0
  56. data/data/config/housekeeping_params.yaml +71 -0
  57. data/data/config/interface_modifiers.yaml +44 -0
  58. data/data/config/item_modifiers.yaml +172 -0
  59. data/data/config/launcher.yaml +117 -0
  60. data/data/config/limits_monitor.yaml +53 -0
  61. data/data/config/linegraph_params.yaml +30 -0
  62. data/data/config/linegraph_plot.yaml +106 -0
  63. data/data/config/page_modifiers.yaml +128 -0
  64. data/data/config/param_item_modifiers.yaml +41 -0
  65. data/data/config/parameter_modifiers.yaml +144 -0
  66. data/data/config/protocols.yaml +257 -0
  67. data/data/config/screen.yaml +151 -0
  68. data/data/config/script_runner.yaml +15 -0
  69. data/data/config/system.yaml +153 -0
  70. data/data/config/table_manager.yaml +76 -0
  71. data/data/config/table_parameter_modifiers.yaml +9 -0
  72. data/data/config/target.yaml +71 -0
  73. data/data/config/telemetry.yaml +73 -0
  74. data/data/config/telemetry_modifiers.yaml +129 -0
  75. data/data/config/test_runner.yaml +118 -0
  76. data/data/config/tlm_extractor.yaml +109 -0
  77. data/data/config/tlm_grapher.yaml +78 -0
  78. data/data/config/tlm_viewer.yaml +107 -0
  79. data/data/config/unknown.yaml +3 -0
  80. data/data/config/widgets.yaml +1339 -0
  81. data/data/config/xy_params.yaml +50 -0
  82. data/data/config/xy_plot.yaml +12 -0
  83. data/data/config_editor.png +0 -0
  84. data/data/crc.txt +172 -161
  85. data/data/delete.png +0 -0
  86. data/demo/config/data/crc.txt +56 -36
  87. data/demo/config/data/meta_init.txt +1 -4
  88. data/demo/config/system/system.txt +15 -3
  89. data/demo/config/system/system2.txt +13 -3
  90. data/demo/config/targets/EXAMPLE/lib/example_interface.rb +2 -6
  91. data/demo/config/targets/EXAMPLE/target.txt +3 -1
  92. data/demo/config/targets/INST/cmd_tlm/inst_cmds.txt +1 -0
  93. data/demo/config/targets/INST/lib/inst_dump_component.rb +34 -0
  94. data/demo/config/targets/INST/screens/adcs.txt +39 -15
  95. data/demo/config/targets/INST/screens/commanding.txt +26 -19
  96. data/demo/config/targets/INST/screens/spacing_box.txt +44 -0
  97. data/demo/config/targets/INST/screens/spacing_grid.txt +78 -0
  98. data/demo/config/targets/INST/screens/tabs.txt +0 -2
  99. data/demo/config/targets/INST/sequences/sequence.tsv +3 -0
  100. data/demo/config/targets/INST/tables/EventAction.csv +9 -0
  101. data/demo/config/targets/INST/tables/EventAction.dat +0 -0
  102. data/demo/config/targets/INST/tables/McConfigTable.csv +20 -0
  103. data/demo/config/targets/INST/tables/McConfigTable.dat +0 -0
  104. data/demo/config/targets/INST/target.txt +4 -0
  105. data/demo/config/targets/INST/tools/data_viewer/data_viewer.txt +2 -0
  106. data/demo/config/targets/INST/tools/data_viewer/data_viewer2.txt +2 -0
  107. data/demo/config/targets/INST/tools/table_manager/EventAction_def.txt +6 -0
  108. data/demo/config/targets/INST/tools/table_manager/McConfigTable_def.txt +38 -0
  109. data/demo/config/targets/SYSTEM/cmd_tlm/limits_groups.txt +7 -3
  110. data/demo/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  111. data/demo/config/targets/{COSMOS/cmd_tlm/cosmos_server_cmds.txt → SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
  112. data/demo/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  113. data/demo/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
  114. data/demo/config/targets/SYSTEM/lib/limits_groups.rb +39 -0
  115. data/demo/config/targets/SYSTEM/screens/status.txt +1 -1
  116. data/demo/config/targets/SYSTEM/target.txt +12 -0
  117. data/demo/config/targets/TEMPLATED/cmd_tlm_server.txt +1 -1
  118. data/demo/config/targets/TEMPLATED/lib/templated_interface.rb +8 -5
  119. data/demo/config/targets/TEMPLATED/target.txt +2 -0
  120. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server.txt +15 -6
  121. data/demo/config/tools/cmd_tlm_server/cmd_tlm_server2.txt +13 -5
  122. data/demo/config/tools/data_viewer/data_viewer.txt +9 -0
  123. data/demo/config/tools/launcher/launcher.txt +9 -6
  124. data/demo/config/tools/launcher/launcher2.txt +16 -13
  125. data/demo/config/tools/launcher/launcher_mini.txt +45 -0
  126. data/demo/config/tools/table_manager/MCConfigurationTable_fsw1_def.txt +12 -11
  127. data/demo/config/tools/table_manager/MCConfigurationTable_fsw2_def.txt +12 -11
  128. data/demo/config/tools/test_runner/test_runner.txt +1 -1
  129. data/demo/config/tools/tlm_viewer/tlm_viewer.txt +5 -5
  130. data/demo/lib/example_background_task.rb +9 -5
  131. data/demo/lib/example_target.rb +5 -15
  132. data/demo/lib/scpi_target.rb +4 -10
  133. data/demo/procedures/cosmos_api_test.rb +17 -0
  134. data/demo/tools/CmdSequence +16 -0
  135. data/demo/tools/CmdSequence.bat +9 -0
  136. data/demo/tools/ConfigEditor +16 -0
  137. data/demo/tools/ConfigEditor.bat +9 -0
  138. data/demo/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
  139. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
  140. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
  141. data/demo/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
  142. data/demo/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
  143. data/ext/cosmos/ext/packet/packet.c +5 -5
  144. data/install/config/data/crc.txt +12 -8
  145. data/install/config/system/system.txt +13 -3
  146. data/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +14 -0
  147. data/install/config/targets/SYSTEM/target.txt +12 -0
  148. data/install/tools/CmdSequence +16 -0
  149. data/install/tools/CmdSequence.bat +9 -0
  150. data/install/tools/ConfigEditor +16 -0
  151. data/install/tools/ConfigEditor.bat +9 -0
  152. data/install/tools/mac/CmdSequence.app/Contents/Info.plist +38 -0
  153. data/install/tools/mac/CmdSequence.app/Contents/MacOS/CmdSequence.rb +16 -0
  154. data/install/tools/mac/CmdSequence.app/Contents/MacOS/main.sh +10 -0
  155. data/install/tools/mac/CmdSequence.app/Contents/MacOS/tool_launch.rb +38 -0
  156. data/install/tools/mac/CmdSequence.app/Contents/Resources/appIcon.icns +0 -0
  157. data/lib/cosmos.rb +1 -1
  158. data/lib/cosmos/config/config_parser.rb +147 -59
  159. data/lib/cosmos/config/meta_config_parser.rb +57 -0
  160. data/lib/cosmos/conversions/polynomial_conversion.rb +20 -4
  161. data/lib/cosmos/conversions/unix_time_conversion.rb +4 -4
  162. data/lib/cosmos/core_ext/array.rb +45 -5
  163. data/lib/cosmos/core_ext/cosmos_io.rb +31 -15
  164. data/lib/cosmos/core_ext/file.rb +2 -2
  165. data/lib/cosmos/core_ext/kernel.rb +1 -6
  166. data/lib/cosmos/core_ext/objectspace.rb +0 -2
  167. data/lib/cosmos/core_ext/string.rb +27 -4
  168. data/lib/cosmos/core_ext/time.rb +39 -10
  169. data/lib/cosmos/gui/choosers/combobox_chooser.rb +37 -26
  170. data/lib/cosmos/gui/choosers/file_chooser.rb +23 -6
  171. data/lib/cosmos/gui/choosers/float_chooser.rb +13 -11
  172. data/lib/cosmos/gui/choosers/integer_chooser.rb +13 -11
  173. data/lib/cosmos/gui/choosers/string_chooser.rb +18 -36
  174. data/lib/cosmos/gui/choosers/telemetry_chooser.rb +64 -64
  175. data/lib/cosmos/gui/choosers/value_chooser.rb +15 -15
  176. data/lib/cosmos/gui/dialogs/about_dialog.rb +18 -13
  177. data/lib/cosmos/gui/dialogs/calendar_dialog.rb +11 -3
  178. data/lib/cosmos/gui/dialogs/cmd_tlm_raw_dialog.rb +1 -1
  179. data/lib/cosmos/gui/dialogs/details_dialog.rb +1 -1
  180. data/lib/cosmos/gui/dialogs/exception_dialog.rb +7 -7
  181. data/lib/cosmos/gui/dialogs/find_replace_dialog.rb +20 -15
  182. data/lib/cosmos/gui/dialogs/interface_raw_dialog.rb +143 -0
  183. data/lib/cosmos/gui/dialogs/legal_dialog.rb +6 -5
  184. data/lib/cosmos/gui/dialogs/packet_log_dialog.rb +5 -2
  185. data/lib/cosmos/gui/dialogs/progress_dialog.rb +1 -1
  186. data/lib/cosmos/gui/dialogs/pry_dialog.rb +4 -4
  187. data/lib/cosmos/gui/dialogs/scroll_text_dialog.rb +3 -0
  188. data/lib/cosmos/gui/dialogs/set_tlm_dialog.rb +7 -6
  189. data/lib/cosmos/gui/dialogs/splash.rb +1 -1
  190. data/lib/cosmos/gui/dialogs/tlm_details_dialog.rb +1 -1
  191. data/lib/cosmos/gui/dialogs/tlm_graph_dialog.rb +114 -0
  192. data/lib/cosmos/gui/line_graph/line_graph.rb +9 -10
  193. data/lib/cosmos/gui/line_graph/line_graph_dialog.rb +7 -5
  194. data/lib/cosmos/gui/line_graph/line_graph_drawing.rb +3 -7
  195. data/lib/cosmos/gui/line_graph/line_graph_popups.rb +3 -8
  196. data/lib/cosmos/gui/line_graph/line_graph_scaling.rb +2 -7
  197. data/lib/cosmos/gui/line_graph/overview_graph.rb +6 -1
  198. data/lib/cosmos/gui/opengl/earth_model.rb +6 -3
  199. data/lib/cosmos/gui/opengl/gl_bounds.rb +11 -23
  200. data/lib/cosmos/gui/opengl/gl_light.rb +3 -4
  201. data/lib/cosmos/gui/opengl/gl_material.rb +3 -4
  202. data/lib/cosmos/gui/opengl/gl_scene.rb +10 -4
  203. data/lib/cosmos/gui/opengl/gl_shape.rb +6 -2
  204. data/lib/cosmos/gui/opengl/gl_viewer.rb +5 -5
  205. data/lib/cosmos/gui/opengl/gl_viewport.rb +11 -12
  206. data/lib/cosmos/gui/opengl/moon_model.rb +6 -3
  207. data/lib/cosmos/gui/opengl/stl_reader.rb +8 -9
  208. data/lib/cosmos/gui/opengl/stl_shape.rb +4 -5
  209. data/lib/cosmos/gui/opengl/texture_mapped_sphere.rb +7 -7
  210. data/lib/cosmos/gui/qt.rb +1 -1
  211. data/lib/cosmos/gui/qt_tool.rb +21 -10
  212. data/lib/cosmos/gui/text/completion.rb +23 -2
  213. data/lib/cosmos/gui/text/completion_text_edit.rb +38 -23
  214. data/lib/cosmos/gui/utilities/analyze_log.rb +1 -1
  215. data/lib/cosmos/gui/utilities/screenshot.rb +2 -2
  216. data/lib/cosmos/gui/widgets/full_text_search_line_edit.rb +11 -1
  217. data/lib/cosmos/gui/widgets/packet_log_frame.rb +19 -6
  218. data/lib/cosmos/interfaces.rb +10 -0
  219. data/lib/cosmos/interfaces/cmd_tlm_server_interface.rb +28 -47
  220. data/lib/cosmos/interfaces/interface.rb +240 -22
  221. data/lib/cosmos/interfaces/linc_interface.rb +3 -5
  222. data/lib/cosmos/interfaces/protocols/burst_protocol.rb +173 -0
  223. data/lib/cosmos/interfaces/protocols/crc_protocol.rb +141 -0
  224. data/lib/cosmos/{streams/fixed_stream_protocol.rb → interfaces/protocols/fixed_protocol.rb} +40 -37
  225. data/lib/cosmos/{streams/length_stream_protocol.rb → interfaces/protocols/length_protocol.rb} +55 -48
  226. data/lib/cosmos/interfaces/protocols/override_protocol.rb +52 -0
  227. data/lib/cosmos/interfaces/protocols/preidentified_protocol.rb +141 -0
  228. data/lib/cosmos/interfaces/protocols/protocol.rb +60 -0
  229. data/lib/cosmos/interfaces/protocols/template_protocol.rb +209 -0
  230. data/lib/cosmos/interfaces/protocols/terminated_protocol.rb +81 -0
  231. data/lib/cosmos/interfaces/serial_interface.rb +28 -23
  232. data/lib/cosmos/interfaces/simulated_target_interface.rb +27 -16
  233. data/lib/cosmos/interfaces/stream_interface.rb +36 -108
  234. data/lib/cosmos/interfaces/tcpip_client_interface.rb +21 -21
  235. data/lib/cosmos/interfaces/tcpip_server_interface.rb +555 -94
  236. data/lib/cosmos/interfaces/udp_interface.rb +51 -83
  237. data/lib/cosmos/io/buffered_file.rb +92 -2
  238. data/lib/cosmos/io/json_drb.rb +2 -2
  239. data/lib/cosmos/io/posix_serial_driver.rb +3 -1
  240. data/lib/cosmos/io/raw_logger.rb +3 -3
  241. data/lib/cosmos/io/serial_driver.rb +14 -5
  242. data/lib/cosmos/io/win32_serial_driver.rb +16 -4
  243. data/lib/cosmos/packet_logs.rb +0 -1
  244. data/lib/cosmos/packet_logs/packet_log_reader.rb +11 -1
  245. data/lib/cosmos/packet_logs/packet_log_writer.rb +31 -13
  246. data/lib/cosmos/packets/binary_accessor.rb +599 -32
  247. data/lib/cosmos/packets/commands.rb +48 -24
  248. data/lib/cosmos/packets/packet.rb +140 -54
  249. data/lib/cosmos/packets/packet_config.rb +0 -2
  250. data/lib/cosmos/packets/parsers/packet_item_parser.rb +10 -2
  251. data/lib/cosmos/packets/structure.rb +81 -33
  252. data/lib/cosmos/packets/structure_item.rb +45 -5
  253. data/lib/cosmos/packets/telemetry.rb +149 -55
  254. data/lib/cosmos/script/api_shared.rb +1000 -0
  255. data/lib/cosmos/script/commands.rb +2 -2
  256. data/lib/cosmos/script/extract.rb +19 -4
  257. data/lib/cosmos/script/limits.rb +2 -0
  258. data/lib/cosmos/script/script.rb +1 -1
  259. data/lib/cosmos/script/scripting.rb +4 -784
  260. data/lib/cosmos/script/telemetry.rb +44 -23
  261. data/lib/cosmos/script/tools.rb +15 -69
  262. data/lib/cosmos/streams/serial_stream.rb +12 -19
  263. data/lib/cosmos/streams/stream.rb +2 -11
  264. data/lib/cosmos/streams/tcpip_socket_stream.rb +3 -13
  265. data/lib/cosmos/system/system.rb +187 -31
  266. data/lib/cosmos/system/target.rb +11 -2
  267. data/lib/cosmos/tools/cmd_extractor/cmd_extractor.rb +12 -11
  268. data/lib/cosmos/tools/cmd_sender/{cmd_sender_item_delegate.rb → cmd_param_table_item_delegate.rb} +11 -10
  269. data/lib/cosmos/tools/cmd_sender/cmd_sender.rb +209 -164
  270. data/lib/cosmos/tools/cmd_sequence/cmd_sequence.rb +652 -0
  271. data/lib/cosmos/tools/cmd_sequence/sequence_item.rb +510 -0
  272. data/lib/cosmos/tools/cmd_sequence/sequence_list.rb +194 -0
  273. data/lib/cosmos/tools/cmd_tlm_server/api.rb +179 -5
  274. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server.rb +31 -14
  275. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_config.rb +23 -16
  276. data/lib/cosmos/tools/cmd_tlm_server/cmd_tlm_server_gui.rb +92 -20
  277. data/lib/cosmos/tools/cmd_tlm_server/commanding.rb +1 -1
  278. data/lib/cosmos/tools/cmd_tlm_server/gui/interfaces_tab.rb +17 -4
  279. data/lib/cosmos/tools/cmd_tlm_server/gui/targets_tab.rb +0 -5
  280. data/lib/cosmos/tools/cmd_tlm_server/interface_thread.rb +1 -2
  281. data/lib/cosmos/tools/cmd_tlm_server/interfaces.rb +4 -4
  282. data/lib/cosmos/tools/cmd_tlm_server/limits_groups_background_task.rb +121 -0
  283. data/lib/cosmos/tools/cmd_tlm_server/routers.rb +8 -4
  284. data/lib/cosmos/tools/config_editor/config_editor.rb +720 -0
  285. data/lib/cosmos/tools/config_editor/config_editor_frame.rb +675 -0
  286. data/lib/cosmos/tools/data_viewer/data_viewer.rb +44 -27
  287. data/lib/cosmos/tools/data_viewer/data_viewer_component.rb +8 -22
  288. data/lib/cosmos/tools/launcher/launcher.rb +29 -12
  289. data/lib/cosmos/tools/launcher/launcher_config.rb +1 -1
  290. data/lib/cosmos/tools/limits_monitor/limits_monitor.rb +153 -42
  291. data/lib/cosmos/tools/packet_viewer/packet_viewer.rb +44 -6
  292. data/lib/cosmos/tools/replay/replay.rb +36 -20
  293. data/lib/cosmos/tools/replay/replay_server.rb +1 -1
  294. data/lib/cosmos/tools/script_runner/script_runner_config.rb +1 -1
  295. data/lib/cosmos/tools/script_runner/script_runner_frame.rb +31 -21
  296. data/lib/cosmos/tools/table_manager/table_config.rb +9 -3
  297. data/lib/cosmos/tools/table_manager/table_manager.rb +27 -7
  298. data/lib/cosmos/tools/test_runner/results_writer.rb +6 -6
  299. data/lib/cosmos/tools/test_runner/test_runner.rb +4 -6
  300. data/lib/cosmos/tools/tlm_extractor/tlm_extractor.rb +4 -5
  301. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_config.rb +1 -1
  302. data/lib/cosmos/tools/tlm_extractor/tlm_extractor_processor.rb +1 -1
  303. data/lib/cosmos/tools/tlm_grapher/data_object_adders/housekeeping_data_object_adder.rb +23 -6
  304. data/lib/cosmos/tools/tlm_grapher/data_object_editors/housekeeping_data_object_editor.rb +44 -3
  305. data/lib/cosmos/tools/tlm_grapher/data_objects/housekeeping_data_object.rb +20 -7
  306. data/lib/cosmos/tools/tlm_grapher/tabbed_plots/overview_tabbed_plots.rb +1 -1
  307. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_config.rb +11 -4
  308. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_plot_editor.rb +2 -2
  309. data/lib/cosmos/tools/tlm_grapher/tabbed_plots_tool/tabbed_plots_realtime_thread.rb +1 -1
  310. data/lib/cosmos/tools/tlm_grapher/tlm_grapher.rb +16 -0
  311. data/lib/cosmos/tools/tlm_viewer/screen.rb +36 -32
  312. data/lib/cosmos/tools/tlm_viewer/tlm_viewer.rb +59 -50
  313. data/lib/cosmos/tools/tlm_viewer/tlm_viewer_config.rb +2 -2
  314. data/lib/cosmos/tools/tlm_viewer/widgets.rb +1 -0
  315. data/lib/cosmos/tools/tlm_viewer/widgets/canvasvalue_widget.rb +1 -0
  316. data/lib/cosmos/tools/tlm_viewer/widgets/labelvalue_widget.rb +22 -4
  317. data/lib/cosmos/tools/tlm_viewer/widgets/matrixbycolumns_widget.rb +9 -0
  318. data/lib/cosmos/tools/tlm_viewer/widgets/spacer_widget.rb +55 -0
  319. data/lib/cosmos/tools/tlm_viewer/widgets/vertical_widget.rb +3 -2
  320. data/lib/cosmos/tools/tlm_viewer/widgets/verticalbox_widget.rb +3 -2
  321. data/lib/cosmos/tools/tlm_viewer/widgets/widget.rb +12 -12
  322. data/lib/cosmos/top_level.rb +34 -24
  323. data/lib/cosmos/utilities/crc.rb +108 -6
  324. data/lib/cosmos/utilities/csv.rb +68 -14
  325. data/lib/cosmos/utilities/logger.rb +2 -2
  326. data/lib/cosmos/utilities/low_fragmentation_array.rb +9 -1
  327. data/lib/cosmos/version.rb +6 -6
  328. data/lib/cosmos/win32/win32_main.rb +50 -46
  329. data/run_gui_tests.bat +3 -1
  330. data/spec/conversions/unix_time_formatted_conversion_spec.rb +2 -2
  331. data/spec/conversions/unix_time_seconds_conversion_spec.rb +2 -2
  332. data/spec/core_ext/file_spec.rb +1 -1
  333. data/spec/core_ext/objectspace_spec.rb +12 -9
  334. data/spec/core_ext/string_spec.rb +6 -0
  335. data/spec/core_ext/time_spec.rb +10 -0
  336. data/spec/gui/line_graph/line_clip_spec.rb +226 -224
  337. data/spec/gui/qt_spec.rb +81 -79
  338. data/spec/install/config/system/system.txt +0 -6
  339. data/spec/install/config/targets/INST/cmd_tlm/inst_cmd_linc.txt +5 -5
  340. data/spec/install/config/targets/INST/cmd_tlm/inst_tlm_linc.txt +8 -8
  341. data/spec/install/config/targets/SYSTEM/cmd_tlm/meta_cmd_tlm.txt +16 -0
  342. data/{install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt → spec/install/config/targets/SYSTEM/cmd_tlm/system_cmds.txt} +8 -8
  343. data/spec/install/config/targets/SYSTEM/cmd_tlm/system_tlm.txt +7 -0
  344. data/spec/install/config/targets/{COSMOS → SYSTEM}/cmd_tlm_server.txt +2 -2
  345. data/spec/install/config/targets/SYSTEM/screens/status.txt +12 -0
  346. data/spec/install/config/targets/SYSTEM/target.txt +12 -0
  347. data/spec/interfaces/cmd_tlm_server_interface_spec.rb +9 -13
  348. data/spec/interfaces/interface_spec.rb +402 -18
  349. data/spec/interfaces/linc_interface_spec.rb +37 -39
  350. data/spec/interfaces/protocols/burst_protocol_spec.rb +300 -0
  351. data/spec/interfaces/protocols/crc_protocol_spec.rb +709 -0
  352. data/spec/interfaces/protocols/fixed_protocol_spec.rb +119 -0
  353. data/spec/interfaces/protocols/length_protocol_spec.rb +499 -0
  354. data/spec/interfaces/protocols/override_protocol_spec.rb +158 -0
  355. data/spec/interfaces/protocols/preidentified_protocol_spec.rb +149 -0
  356. data/spec/interfaces/protocols/template_protocol_spec.rb +218 -0
  357. data/spec/interfaces/protocols/terminated_protocol_spec.rb +174 -0
  358. data/spec/interfaces/serial_interface_spec.rb +35 -34
  359. data/spec/interfaces/simulated_target_interface_spec.rb +13 -13
  360. data/spec/interfaces/tcpip_client_interface_spec.rb +21 -16
  361. data/spec/interfaces/tcpip_server_interface_spec.rb +66 -69
  362. data/spec/interfaces/udp_interface_spec.rb +120 -55
  363. data/spec/io/serial_driver_spec.rb +41 -39
  364. data/spec/io/udp_sockets_spec.rb +13 -8
  365. data/spec/io/win32_serial_driver_spec.rb +62 -59
  366. data/spec/packet_logs/packet_log_reader_spec.rb +68 -47
  367. data/spec/packet_logs/packet_log_writer_spec.rb +7 -5
  368. data/spec/packets/commands_spec.rb +5 -5
  369. data/spec/packets/packet_spec.rb +2 -14
  370. data/spec/script/extract_spec.rb +21 -7
  371. data/spec/script/scripting_spec.rb +261 -6
  372. data/spec/script/telemetry_spec.rb +17 -9
  373. data/spec/spec_helper.rb +26 -10
  374. data/spec/streams/serial_stream_spec.rb +87 -82
  375. data/spec/streams/tcpip_client_stream_spec.rb +12 -4
  376. data/spec/streams/tcpip_socket_stream_spec.rb +5 -0
  377. data/spec/system/system_spec.rb +66 -50
  378. data/spec/system/target_spec.rb +33 -11
  379. data/spec/tools/cmd_tlm_server/api_spec.rb +5 -5
  380. data/spec/tools/cmd_tlm_server/background_tasks_spec.rb +75 -15
  381. data/spec/tools/cmd_tlm_server/cmd_tlm_server_config_spec.rb +125 -5
  382. data/spec/tools/cmd_tlm_server/cmd_tlm_server_spec.rb +244 -232
  383. data/spec/tools/cmd_tlm_server/commanding_spec.rb +18 -18
  384. data/spec/tools/cmd_tlm_server/interface_thread_spec.rb +124 -29
  385. data/spec/tools/cmd_tlm_server/interfaces_spec.rb +2 -2
  386. data/spec/tools/cmd_tlm_server/limits_groups_background_task_spec.rb +145 -0
  387. data/spec/tools/cmd_tlm_server/router_thread_spec.rb +50 -10
  388. data/spec/tools/table_manager/tablemanager_core_spec.rb +0 -1
  389. data/spec/top_level/top_level_spec.rb +39 -11
  390. data/spec/utilities/csv_spec.rb +62 -20
  391. data/tasks/gemfile_stats.rake +6 -3
  392. data/test/performance/config/system/system_packets.txt +0 -1
  393. data/test/performance/config/system/system_threads.txt +0 -1
  394. metadata +177 -92
  395. data/autohotkey/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  396. data/autohotkey/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
  397. data/autohotkey/config/targets/COSMOS/target.txt +0 -5
  398. data/autohotkey/userpath.txt +0 -1
  399. data/demo/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  400. data/demo/config/targets/COSMOS/screens/limits_change.txt +0 -20
  401. data/demo/config/targets/COSMOS/screens/version.txt +0 -19
  402. data/demo/config/targets/COSMOS/target.txt +0 -11
  403. data/demo/config/targets/META/cmd_tlm/meta_cmd.txt +0 -10
  404. data/demo/config/targets/META/cmd_tlm/meta_tlm.txt +0 -13
  405. data/demo/userpath.txt +0 -1
  406. data/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  407. data/install/config/targets/COSMOS/cmd_tlm_server.txt +0 -6
  408. data/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
  409. data/install/config/targets/COSMOS/screens/version.txt +0 -19
  410. data/install/config/targets/COSMOS/target.txt +0 -9
  411. data/install/config/targets/SYSTEM/README.txt +0 -1
  412. data/install/userpath.txt +0 -1
  413. data/lib/cosmos/io/tcpip_server.rb +0 -571
  414. data/lib/cosmos/packet_logs/meta_packet_log_writer.rb +0 -107
  415. data/lib/cosmos/streams/burst_stream_protocol.rb +0 -25
  416. data/lib/cosmos/streams/preidentified_stream_protocol.rb +0 -118
  417. data/lib/cosmos/streams/stream_protocol.rb +0 -373
  418. data/lib/cosmos/streams/template_stream_protocol.rb +0 -140
  419. data/lib/cosmos/streams/terminated_stream_protocol.rb +0 -85
  420. data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +0 -41
  421. data/spec/install/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +0 -15
  422. data/spec/install/config/targets/COSMOS/screens/limits_change.txt +0 -20
  423. data/spec/install/config/targets/COSMOS/screens/version.txt +0 -19
  424. data/spec/install/config/targets/COSMOS/target.txt +0 -5
  425. data/spec/install/config/targets/META/cmd_tlm/meta_cmd.txt +0 -4
  426. data/spec/install/config/targets/META/cmd_tlm/meta_tlm.txt +0 -4
  427. data/spec/install/userpath.txt +0 -1
  428. data/spec/interfaces/stream_interface_spec.rb +0 -157
  429. data/spec/io/tcpip_server_spec.rb +0 -338
  430. data/spec/packet_logs/meta_packet_log_writer_spec.rb +0 -170
  431. data/spec/streams/burst_stream_protocol_spec.rb +0 -32
  432. data/spec/streams/fixed_stream_protocol_spec.rb +0 -113
  433. data/spec/streams/length_stream_protocol_spec.rb +0 -300
  434. data/spec/streams/preidentified_stream_protocol_spec.rb +0 -121
  435. data/spec/streams/stream_protocol_spec.rb +0 -346
  436. data/spec/streams/template_stream_protocol_spec.rb +0 -156
  437. data/spec/streams/terminated_stream_protocol_spec.rb +0 -127
  438. data/test/performance/userpath.txt +0 -1
@@ -0,0 +1,118 @@
1
+ ---
2
+ <%= MetaConfigParser.load('script_runner.yaml').to_meta_config_yaml(0) %>
3
+ LOAD_UTILITY:
4
+ summary: Specify a test procedure to run
5
+ description: Procedures will be found automatically in the procedures directory
6
+ or can be given by a path relative to the COSMOS install directory or by an
7
+ absolute path. This keyword is used to load the script and execute it line
8
+ by line by showing the current execution point. Sometimes you want to load
9
+ utility code that is NOT executed line by line but is executed in the background.
10
+ For example, a CRC routine or other long running calculation. The Ruby keyword
11
+ 'load' can be used for this purpose, e.g. 'load utility.rb'. This code will
12
+ be loaded but not shown when executing.
13
+ parameters:
14
+ - name: Filename
15
+ required: true
16
+ description: Name of the test file in quotes
17
+ values: '.+\.rb'
18
+ REQUIRE_UTILITY:
19
+ summary: DEPRECATED in favor of LOAD_UTILITY
20
+ RESULTS_WRITER:
21
+ summary: Specify a different Ruby file to interpret and print the Test Runner results
22
+ description: The specified Ruby file must define a class which implements the
23
+ Cosmos::ResultsWriter API
24
+ parameters:
25
+ - name: Filename
26
+ required: true
27
+ description: Name of the Ruby file which implements a result writer
28
+ values: '.+\.rb'
29
+ - name: Class Parameters
30
+ required: false
31
+ description: Parameters to pass to the constructor of the results writer
32
+ values: .*
33
+ ALLOW_DEBUG:
34
+ summary: Whether to allow the user to enable the debug line where the user can enter arbitrary statements
35
+ PAUSE_ON_ERROR:
36
+ summary: Set or clear the pause on error checkbox
37
+ description: If this is checked, Test Runner will pause if the test encounters
38
+ an error. Otherwise the error will be logged but the script will continue.
39
+ parameters:
40
+ - name: Enable
41
+ required: true
42
+ description: Whether to pause when the script encounters an error
43
+ values: ['TRUE', 'FALSE']
44
+ CONTINUE_TEST_CASE_AFTER_ERROR:
45
+ summary: Set or clear the continue test case after error checkbox
46
+ description: If this is checked, Test Runner will continue executing the current
47
+ test case after encountering an error. Otherwise the test case will stop at
48
+ the error and the next test case will execute.
49
+ parameters:
50
+ - name: Enable
51
+ required: true
52
+ description: Whether to continue the test case when the script encounters an error
53
+ values: ['TRUE', 'FALSE']
54
+ ABORT_TESTING_AFTER_ERROR:
55
+ summary: Set or clear the abort testing after error checkbox
56
+ description: If this is checked, Test Runner will stop executing after the current
57
+ test case completes (how it completes depends on CONTINUE_TEST_CASE_AFTER_ERROR).
58
+ Otherwise the next test case will execute.
59
+ parameters:
60
+ - name: Enable
61
+ required: true
62
+ description: Whether to continue to the next test case when the script encounters an error
63
+ values: ['TRUE', 'FALSE']
64
+ MANUAL:
65
+ summary: Set the $manual global variable for all executing scripts
66
+ description: The $manual variable can be checked during tests to allow for fully
67
+ automated tests if it is not set, or for user input if it is set. This capability
68
+ is completely dependent on user specific code which checks the $manual variable.
69
+ parameters:
70
+ - name: Enable
71
+ required: true
72
+ description: Whether to set the $manual global to true
73
+ values: ['TRUE', 'FALSE']
74
+ LOOP_TESTING:
75
+ summary: Set or clear the loop testing checkbox
76
+ description: If this is checked, Test Runner will continue to run whatever level
77
+ of tests that were initially started. If either "Abort Testing after Error"
78
+ or "Break Loop after Error" are checked, then the loop testing will stop if
79
+ an error is encountered. The difference is that the "Abort Testing after Error"
80
+ will stop testing immediately after the current test case completes.
81
+ "Break Loop after Error" continues the current loop by executing the remaining
82
+ suite or group before stopping. In the case of executing a single test case
83
+ the options effectively do the same thing.
84
+ parameters:
85
+ - name: Enable
86
+ required: true
87
+ description: Whether to loop the selected test level
88
+ values: ['TRUE', 'FALSE']
89
+ BREAK_LOOP_AFTER_ERROR:
90
+ summary: Set or clear the break loop after error checkbox
91
+ description: If this is checked, Test Runner continues the current loop by
92
+ executing the remaining suite or group before stopping.
93
+ parameters:
94
+ - name: Enable
95
+ required: true
96
+ description: Whether to break the loop after encountering an error
97
+ values: ['TRUE', 'FALSE']
98
+ IGNORE_TEST:
99
+ summary: Ignore the given test class name when parsing the tests
100
+ parameters:
101
+ - name: Test Class Name
102
+ required: true
103
+ description: The test class to ignore when building the list of available tests
104
+ values: .+
105
+ IGNORE_TEST_SUITE:
106
+ summary: Ignores the given test suite name when parsing the tests
107
+ parameters:
108
+ - name: Test Suite Name
109
+ required: true
110
+ description: The test suite to ignore when building the list of available tests
111
+ values: .+
112
+ CREATE_DATA_PACKAGE:
113
+ summary: Creates a data package of every file created during the test
114
+ AUTO_CYCLE_LOGS:
115
+ summary: Automatically start a new server message log and cmd/tlm logs at the
116
+ beginning and end of each test. Typically used in combination with CREATE_DATA_PACKAGE.
117
+ COLLECT_METADATA:
118
+ summary: Prompt for Meta Data before starting tests
@@ -0,0 +1,109 @@
1
+ ---
2
+ DELIMITER:
3
+ summary: Specify an alternative column delimiter over the default tab character
4
+ parameters:
5
+ - name: Delimiter
6
+ required: true
7
+ description: Character or string to use as a delimiter. For example ','.
8
+ values: .+
9
+ FILL_DOWN:
10
+ summary: Insert a value into every row of the output
11
+ description: Telemetry Grapher produces an output file with columns for each
12
+ item name. If you are graphing items from different packets, only the columns
13
+ with items from that packet are populated with values. Fill down causes a
14
+ particular item column to be populated with the previous value so every column
15
+ is 'filled'. This makes it easier to graph multiple values across packets in Excel.
16
+ DOWNSAMPLE_SECONDS:
17
+ summary: Downsample data to only output a value every X seconds of time
18
+ parameters:
19
+ - name: Seconds
20
+ required: true
21
+ desription: Number of seconds to skip between values output
22
+ values: \d+
23
+ MATLAB_HEADER:
24
+ summary: Prepend the Matlab comment symbol of '%' to the header lines in the output file
25
+ UNIQUE_ONLY:
26
+ summary: Only output a row if one of the extracted values has changed
27
+ description: This keyword is useful to extract telemetry items over a large time
28
+ period by only outputting those values where items have changed
29
+ UNIQUE_IGNORE:
30
+ summary: Used in conjunction with UNIQUE_ONLY to control which items should be checked
31
+ for changing values
32
+ description: This list of telemetry items (not target names or packet names)
33
+ always includes the COSMOS metadata items named RECEIVED_TIMEFORMATTED and RECEIVED_SECONDS.
34
+ This is because these items will always change from packet to packet which would
35
+ cause them to ALWAYS be printed if UNIQUE_ONLY was used. To avoid this,
36
+ but still include time stamps in the output, UNIQUE_IGNORE includes these items.
37
+ Use this keyword if you have a similar telemetry item that you want to display
38
+ in the output but not be used to determine uniqueness.
39
+ parameters:
40
+ - name: Item Name
41
+ required: true
42
+ description: Name of the item to exclude from the uniqueness criteria.
43
+ Note that all items with this name in all target packets are affected.
44
+ values: .+
45
+ SHARE_COLUMNS:
46
+ summary: Export telemetry items with the same name into the same column
47
+ description: Normally items from different packets are put in their own column
48
+ in the output. If this keyword is used, items with the same name in different
49
+ packets will now share one column in the output. This applies to all telemetry
50
+ items with identical names. If you want to share columns for only specific items,
51
+ use the SHARE_COLUMN keyword instead.
52
+ SHARE_COLUMN:
53
+ summary: Export telemetry items with the same name into the same column
54
+ description: Normally items from different packets are put in their own column
55
+ in the output. This keyword is used to specify specific items that are from different
56
+ packets but should share one column in the output. This applies to all telemetry
57
+ items with identical names. If you want to share columns for all duplicate item
58
+ names in different packets, use the SHARE_COLUMNS keyword instead.
59
+ since: 3.9.2
60
+ parameters:
61
+ - name: Item Name
62
+ required: true
63
+ description: Name of the telemtry item
64
+ values: .+
65
+ - name: Item Type
66
+ required: false
67
+ description: Type of the telemetry item
68
+ values: ['CONVERTED', 'RAW', 'FORMATTED', 'WITH_UNITS']
69
+ FULL_COLUMN_NAMES:
70
+ summary: Use TARGET PACKET ITEM as the column header for each column
71
+ description: Normally just the item name is used as the column header but this
72
+ adds the target and packet name. Note that the TARGET and PACKET columns
73
+ are not generated when this mode is active since the items are fully qualified.
74
+ DONT_OUTPUT_FILENAMES:
75
+ summary: Don't output the list of input filenames at the top of each output file
76
+ TEXT:
77
+ summary: Insert arbitrary text in the Telemetry Extractor output
78
+ description: Text also allows you to dynamically create Excel formulas using a special syntax
79
+ parameters:
80
+ - name: Header
81
+ required: true
82
+ description: The column header text
83
+ values: .+
84
+ - name: Text
85
+ required: true
86
+ description: Text to put in the output file. The special character '%' will
87
+ be translated to the current row of the output file. This is useful for
88
+ Excel formulas which need a reference to a cell. Remember the first two
89
+ columns are typically the TARGET and PACKET and telemetry items start in
90
+ column 'C' in Excel.
91
+ ITEM:
92
+ summary: Specify a telemetry item to extract
93
+ parameters:
94
+ - name: Target Name
95
+ required: true
96
+ description: Name of the telemetry target
97
+ values: <%= System.targets.keys %>
98
+ - name: Packet Name
99
+ required: true
100
+ description: Name of the telemetry packet
101
+ values: .+
102
+ - name: Item Name
103
+ required: true
104
+ description: Name of the telemetry item
105
+ values: .+
106
+ - name: Item Type
107
+ required: false
108
+ description: Type of the telemetry item
109
+ values: ['CONVERTED', 'RAW', 'FORMATTED', 'WITH_UNITS']
@@ -0,0 +1,78 @@
1
+ ---
2
+ # Require data_object to access the COLOR_LIST
3
+ <% require 'cosmos/tools/tlm_grapher/data_objects/data_object' %>
4
+ POINTS_SAVED:
5
+ summary: Number of points saved in the plot history
6
+ warning: The larger the number the more memory Telemetry Grapher will use.
7
+ Eventually you will run out of memory!
8
+ parameters:
9
+ - name: Points
10
+ required: true
11
+ description: Number of points saved
12
+ values: \d+
13
+ SECONDS_PLOTTED:
14
+ summary: Number of seconds plotted on each graph
15
+ parameters:
16
+ - name: Seconds
17
+ required: true
18
+ description: Number of seconds plotted
19
+ values: \d+
20
+ POINTS_PLOTTED:
21
+ summary: Number of points plotted on each graph
22
+ warning: The larger the number the more performace is affected
23
+ parameters:
24
+ - name: Points
25
+ required: true
26
+ description: Number of points plotted per graph
27
+ values: \d+
28
+ REFRESH_RATE_HZ:
29
+ summary: Telemetry Grapher refresh rate
30
+ parameters:
31
+ - name: Rate
32
+ required: true
33
+ description: Refresh rate in Hertz
34
+ values: '[0-9]*\.?[0-9]+'
35
+ CTS_TIMEOUT:
36
+ summary: Timeout when trying to connect to the Server
37
+ parameters:
38
+ - name: Seconds
39
+ required: true
40
+ description: Timeout in seconds
41
+ values: '[0-9]*\.?[0-9]+'
42
+ TAB:
43
+ summary: Create a new tab in the Telemetry Grapher GUI
44
+ parameters:
45
+ - name: Tab Text
46
+ required: false
47
+ description: Text to display on the tab
48
+ values: .*
49
+ modifiers:
50
+ PLOT:
51
+ summary: Create a new plot
52
+ parameters:
53
+ - name: Plot Type
54
+ required: true
55
+ description: Type of plot to create
56
+ values: ['LINEGRAPH', 'SINGLEXY', 'XY']
57
+ modifiers:
58
+ <%= MetaConfigParser.load('linegraph_plot.yaml').to_meta_config_yaml(8) %>
59
+ <%= MetaConfigParser.load('xy_plot.yaml').to_meta_config_yaml(8) %>
60
+ DATA_OBJECT:
61
+ modifiers:
62
+ COLOR:
63
+ summary: Color of the Data object
64
+ parameters:
65
+ - name: Color
66
+ required: true
67
+ description: Line color to draw the Data Object
68
+ values: <%= DataObject::COLOR_LIST %>
69
+ <%= MetaConfigParser.load('housekeeping_params.yaml').to_meta_config_yaml(12) %>
70
+ <%= MetaConfigParser.load('linegraph_params.yaml').to_meta_config_yaml(12) %>
71
+ <%= MetaConfigParser.load('xy_params.yaml').to_meta_config_yaml(12) %>
72
+ summary: Type of data object on the plot
73
+ parameters:
74
+ - name: Data Object Type
75
+ required: true
76
+ description: Describes how the telemetry item is stored.
77
+ Typically matches the Plot Type.
78
+ values: ['LINEGRAPH','HOUSEKEEPING','SINGLEXY','XY']
@@ -0,0 +1,107 @@
1
+ ---
2
+ AUTO_TARGETS:
3
+ summary: Add all screens defined in the screens directory of each target folder
4
+ description: Automatically added screens are grouped by target name in the display.
5
+ For example, all the screens defined in config/targets/COSMOS/screens will be
6
+ added to a single drop down selection labeled COSMOS.
7
+ AUTO_TARGET:
8
+ summary: Add all screens defined in the screens directory of the specified target folder
9
+ description: Screens are grouped by target name in the display. For example,
10
+ all the screens defined in config/targets/COSMOS/screens will be added to a
11
+ single drop down selection labeled COSMOS.
12
+ warning: If AUTO_TARGETS is used this keyword does nothing
13
+ NEW_COLUMN:
14
+ summary: Creates a new column of drop down selections in Telemetry Viewer
15
+ description: All the AUTO_TARGET or SCREEN keywords after this keyword will be
16
+ added to a new column in the GUI.
17
+ TARGET:
18
+ summary: Used in conjunction with the SCREEN keyword to define individual screens
19
+ within a target's screen directory.
20
+ parameters:
21
+ - name: Target
22
+ required: true
23
+ description: Name of the target
24
+ values: <%= System.targets.keys %>
25
+ modifiers:
26
+ SCREEN:
27
+ summary: Adds the specified screen from the specified target
28
+ parameters:
29
+ - name: File Name
30
+ required: true
31
+ description: Name of the file containing the telemetry screen definition.
32
+ The filename will be upcased and used in the GUI drop down selection.
33
+ values: .+
34
+ - name: X Position
35
+ required: false
36
+ description: Position in pixels to draw the left edge of the screen on
37
+ the display. If not supplied the screen will be centered. If supplied,
38
+ the Y position must also be supplied.
39
+ values: \d+
40
+ - name: Y position
41
+ required: false
42
+ description: Position in pixels to draw the top edge of the screen on
43
+ the display. If not supplied the screen will be centered. If supplied,
44
+ the X position must also be supplied.
45
+ values: \d+
46
+ modifiers:
47
+ SHOW_ON_STARTUP:
48
+ summary: Causes the previously defined SCREEN to be automatically displayed
49
+ when Telemetry Viewer starts
50
+ ADD_SHOW_ON_STARTUP:
51
+ summary: Adds show on startup to any screen that has already been defined
52
+ description: Screens that are discoverd by AUTO_TARGETS or AUTO_TARGET aren't
53
+ explicitly defined. Thus this keyword is used to add show on startup.
54
+ parameters:
55
+ - name: Target Name
56
+ required: true
57
+ description: Target Name of the screen
58
+ values: <%= System.targets.keys %>
59
+ - name: Screen Name
60
+ required: true
61
+ description: Name of the screen. This is equal to the screen's filename
62
+ without the .txt extension.
63
+ values: .+
64
+ - name: X Position
65
+ required: false
66
+ description: Position in pixels to draw the left edge of the screen on
67
+ the display. If not supplied the screen will be centered. If supplied,
68
+ the Y position must also be supplied.
69
+ values: \d+
70
+ - name: Y position
71
+ required: false
72
+ description: Position in pixels to draw the top edge of the screen on
73
+ the display. If not supplied the screen will be centered. If supplied,
74
+ the X position must also be supplied.
75
+ values: \d+
76
+ GROUP:
77
+ summary: Create a new drop down group of screens in the GUI
78
+ parameters:
79
+ - name: Group Name
80
+ required: true
81
+ description: The text to display in front of the drop down list of screens
82
+ values: .+
83
+ modifiers:
84
+ GROUP_SCREEN:
85
+ summary: Define a screen in the given group drop down
86
+ parameters:
87
+ - name: Target Name
88
+ required: true
89
+ description: Target Name of the screen
90
+ values: <%= System.targets.keys %>
91
+ - name: Screen Name
92
+ required: true
93
+ description: Name of the screen. This is equal to the screen's filename
94
+ without the .txt extension.
95
+ values: .+
96
+ - name: X Position
97
+ required: false
98
+ description: Position in pixels to draw the left edge of the screen on
99
+ the display. If not supplied the screen will be centered. If supplied,
100
+ the Y position must also be supplied.
101
+ values: \d+
102
+ - name: Y position
103
+ required: false
104
+ description: Position in pixels to draw the top edge of the screen on
105
+ the display. If not supplied the screen will be centered. If supplied,
106
+ the X position must also be supplied.
107
+ values: \d+
@@ -0,0 +1,3 @@
1
+ ---
2
+ UNKNOWN:
3
+ summary: Unknown keyword selected
@@ -0,0 +1,1339 @@
1
+ ---
2
+ VERTICAL:
3
+ summary: Places the widgets it encapsulates vertically on
4
+ the screen. The screen defaults to a vertical layout, so if no layout widgets
5
+ are specified, all widgets will be automatically placed within a VERTICAL
6
+ layout widget. The VERTICAL widget sizes itself to fit its contents.
7
+ parameters:
8
+ - name: Vertical Spacing
9
+ required: false
10
+ description: Vertical spacing between widgets in pixels (default = 1)
11
+ values: .*
12
+ - name: Vertical Packing
13
+ required: false
14
+ description: Pack all widgets vertically (default = true)
15
+ values: .*
16
+ VERTICALBOX:
17
+ summary: Places the widgets it encapsulates vertically
18
+ on the screen inside of a thin border. The VERTICALBOX widget sizes itself
19
+ to fit its contents vertically and to fit the screen horizontally.
20
+ parameters:
21
+ - name: Title
22
+ required: false
23
+ description: Text to place within the border to label the box
24
+ values: .*
25
+ - name: Vertical spacing
26
+ required: false
27
+ description: Vertical spacing between widgets in pixels (default = 1)
28
+ values: .*
29
+ - name: Vertical packing
30
+ required: false
31
+ description: Pack all widgets vertically (default = true)
32
+ values: .*
33
+ HORIZONTAL:
34
+ summary: Places the widgets it encapsulates horizontally
35
+ on the screen. The HORIZONTAL widget sizes itself to fit its contents.
36
+ parameters:
37
+ - name: Horizontal spacing
38
+ required: false
39
+ description: Horizontal spacing between widgets in pixels (default = 1)
40
+ values: .*
41
+ HORIZONTALBOX:
42
+ summary: Places the widgets it encapsulates horizontally
43
+ on the screen inside of a thin border. The HORIZONTALBOX widget sizes itself
44
+ to fit its contents.
45
+ parameters:
46
+ - name: Title
47
+ required: false
48
+ description: Text to place within the border to label the box
49
+ values: .*
50
+ - name: Horizontal spacing
51
+ required: false
52
+ description: Horizontal spacing between widgets in pixels (default = 1)
53
+ values: .*
54
+ MATRIXBYCOLUMNS:
55
+ summary: Places the widgets into a table-like matrix.
56
+ The MATRIXBYCOLUMNS widget sizes itself to fit its contents.
57
+ parameters:
58
+ - name: Columns
59
+ required: true
60
+ description: The number of columns to create
61
+ values: .*
62
+ SCROLLWINDOW:
63
+ summary: Places the widgets inside of it into a scrollable
64
+ area. The SCROLLWINDOW widget sizes itself to fit the screen in which it is contained.
65
+ TABBOOK:
66
+ summary: Creates a tabbed area in which to place TABITEM widgets
67
+ to form a tabbed layout.
68
+ TABITEM:
69
+ summary: Creates a tab into which to place widgets. The tab
70
+ automatically acts like a VERTICAL widget.
71
+ parameters:
72
+ - name: Tab text
73
+ required: true
74
+ description: Text to diplay in the tab
75
+ values: .*
76
+ LABEL:
77
+ summary: Displays text on the screen. Generally, label widgets
78
+ contain a telemetry mnemonic and are placed next to the telemetry VALUE widget.
79
+ parameters:
80
+ - name: Text
81
+ required: true
82
+ description: Text to display on the label
83
+ values: .*
84
+ HORIZONTALLINE:
85
+ summary: Displays a horizontal line on the screen that can be used as a separator
86
+ SECTIONHEADER:
87
+ summary: Displays a label that is underlined with a
88
+ horizontal line. Generally, SECTIONHEADER widgets are the first widget placed
89
+ inside of a VERTICALBOX widget.
90
+ parameters:
91
+ - name: Text
92
+ required: true
93
+ description: Text to display above the horizontal line
94
+ values: .*
95
+ TITLE:
96
+ summary: Displays a large centered title on the screen.
97
+ parameters:
98
+ - name: Text
99
+ required: true
100
+ description: Text to display above the horizontal line
101
+ values: .*
102
+ SPACER:
103
+ summary: Inserts a spacer into a layout. This can be used to
104
+ separate or align other widgets.
105
+ parameters:
106
+ - name: Width
107
+ required: true
108
+ description: The width of the spacer in pixels.
109
+ values: .*
110
+ - name: Height
111
+ required: true
112
+ description: The height of the spacer in pixels.
113
+ values: .*
114
+ - name: Horizontal Policy
115
+ required: false
116
+ description: The horizontal size policy of the spacer. Default is MINIMUM.
117
+ values: <%= %w(FIXED MINIMUM MAXIMUM PREFERRED EXPANDING MINIMUMEXPANDING IGNORED) %>
118
+ - name: Vertical Policy
119
+ required: false
120
+ description: The vertical size policy of the spacer. Default is MINIMUM.
121
+ values: <%= %w(FIXED MINIMUM MAXIMUM PREFERRED EXPANDING MINIMUMEXPANDING IGNORED) %>
122
+ ARRAY:
123
+ summary: Displays data from an array telemetry item.
124
+ Data is organized into rows and by default space separated.
125
+ parameters:
126
+ - name: Target name
127
+ required: true
128
+ description: The target name
129
+ values: <%= System.targets.keys %>
130
+ - name: Packet name
131
+ required: true
132
+ description: The packet name
133
+ values: .+
134
+ - name: Item name
135
+ required: true
136
+ description: The item name
137
+ values: .+
138
+ - name: Width
139
+ required: false
140
+ description: Width of the widget (default = 200)
141
+ values: .*
142
+ - name: Height
143
+ required: false
144
+ description: Height of the widget (default = 100)
145
+ values: .*
146
+ - name: Format string
147
+ required: false
148
+ description: Format string applied to each array item (default = nil)
149
+ values: .*
150
+ - name: Items per row
151
+ required: false
152
+ description: Number of array items per row (default = 4)
153
+ values: .*
154
+ - name: Value type
155
+ required: false
156
+ description: The type of the value to display. Default is CONVERTED.
157
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
158
+ BLOCK:
159
+ summary: Displays data from a block telemetry item.
160
+ Data is organized into rows and space separated.
161
+ parameters:
162
+ - name: Target name
163
+ required: true
164
+ description: The target name
165
+ values: <%= System.targets.keys %>
166
+ - name: Packet name
167
+ required: true
168
+ description: The packet name
169
+ values: .+
170
+ - name: Item name
171
+ required: true
172
+ description: The item name
173
+ values: .+
174
+ - name: Width
175
+ required: false
176
+ description: Width of the widget (default = 200)
177
+ values: .*
178
+ - name: Height
179
+ required: false
180
+ description: Height of the widget (default = 100)
181
+ values: .*
182
+ - name: Format string
183
+ required: false
184
+ description: Format string applied to each array item (default = nil)
185
+ values: .*
186
+ - name: Bytes per word
187
+ required: false
188
+ description: Number of bytes per word (default = 4)
189
+ values: .*
190
+ - name: Words per row
191
+ required: false
192
+ description: Number of words per row (default = 4
193
+ values: .*
194
+ - name: Address format
195
+ required: false
196
+ description: Format for the address printed at the beginning of each line
197
+ (default = nil which means do not print an address)
198
+ values: .*
199
+ - name: Value type
200
+ required: false
201
+ description: The type of the value to display. Default is CONVERTED.
202
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
203
+ FORMATFONTVALUE:
204
+ summary: Displays a box with a value printed inside
205
+ that is formatted by the specified string rather than by a format string given
206
+ in the telemetry definition files. Additionally, this widget can use a specified
207
+ font. The white portion of the box darkens to gray while the value remains
208
+ stagnant, then brightens to white each time the value changes. Additionally
209
+ the value is colored based on the items limits state (Red for example if it is out of limits).
210
+ parameters:
211
+ - name: Target name
212
+ required: true
213
+ description: The target name
214
+ values: <%= System.targets.keys %>
215
+ - name: Packet name
216
+ required: true
217
+ description: The packet name
218
+ values: .+
219
+ - name: Item name
220
+ required: true
221
+ description: The item name
222
+ values: .+
223
+ - name: Format string
224
+ required: false
225
+ description: Printf style format string to apply to the telemetry item
226
+ values: .*
227
+ - name: Value type
228
+ required: false
229
+ description: The type of the value to display. Default is CONVERTED.
230
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
231
+ - name: Number of characters
232
+ required: false
233
+ description: The number of characters wide to make the value box (default = 12)
234
+ values: .*
235
+ - name: Font name
236
+ required: false
237
+ description: The font to use. (default = arial)
238
+ values: .*
239
+ - name: Font size
240
+ required: false
241
+ description: The font size. (default = 100)
242
+ values: .*
243
+ FORMATVALUE:
244
+ summary: Displays a box with a value printed inside that
245
+ is formatted by the specified string rather than by a format string given in
246
+ the telemetry definition files. The white portion of the box darkens to gray
247
+ while the value remains stagnant, then brightens to white each time the value
248
+ changes. Additionally the value is colored based on the items limits state
249
+ (Red for example if it is out of limits).
250
+ parameters:
251
+ - name: Target name
252
+ required: true
253
+ description: The target name
254
+ values: <%= System.targets.keys %>
255
+ - name: Packet name
256
+ required: true
257
+ description: The packet name
258
+ values: .+
259
+ - name: Item name
260
+ required: true
261
+ description: The item name
262
+ values: .+
263
+ - name: Format string
264
+ required: false
265
+ description: Printf style format string to apply to the telemetry item
266
+ values: .*
267
+ - name: Value type
268
+ required: false
269
+ description: The type of the value to display. Default is CONVERTED.
270
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
271
+ - name: Number of characters
272
+ required: false
273
+ description: The number of characters wide to make the value box (default = 12)
274
+ values: .*
275
+ LABELPROGRESSBAR:
276
+ summary: Displays a LABEL widget showing the items
277
+ name followed by a PROGRESSBAR widget to show the items value.
278
+ parameters:
279
+ - name: Target name
280
+ required: true
281
+ description: The target name
282
+ values: <%= System.targets.keys %>
283
+ - name: Packet name
284
+ required: true
285
+ description: The packet name
286
+ values: .+
287
+ - name: Item name
288
+ required: true
289
+ description: The item name
290
+ values: .+
291
+ - name: Scale factor
292
+ required: false
293
+ description: Value to multiple the telemetry item by before displaying the
294
+ in the progress bar. Final value should be in the range of 0 to 100. Default is 1.0.
295
+ values: .*
296
+ - name: Width
297
+ required: false
298
+ description: Width of the progress bar (default = 80 pixels
299
+ values: .*
300
+ - name: Value type
301
+ required: false
302
+ description: The type of the value to display. Default is CONVERTED.
303
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
304
+ LABELTRENDLIMITSBAR:
305
+ summary: Displays a LABEL widget to show the
306
+ item's name, a VALUE widget to show the telemetry items current value,
307
+ a VALUE widget to display the value of the item X seconds ago, and a TRENDBAR
308
+ widget to display the items value within its limits ranges and its trend.
309
+ parameters:
310
+ - name: Target name
311
+ required: true
312
+ description: The target name
313
+ values: <%= System.targets.keys %>
314
+ - name: Packet name
315
+ required: true
316
+ description: The packet name
317
+ values: .+
318
+ - name: Item name
319
+ required: true
320
+ description: The item name
321
+ values: .+
322
+ - name: Value type
323
+ required: false
324
+ description: The type of the value to display. Default is CONVERTED.
325
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
326
+ - name: Trend seconds
327
+ required: false
328
+ description: The number of seconds in the past to display the trend value (default = 60)
329
+ values: .*
330
+ - name: Characters
331
+ required: false
332
+ description: The number of characters to display the telemetry value (default = 12)
333
+ values: .*
334
+ - name: Width
335
+ required: false
336
+ description: Width of the limits bar (default = 160)
337
+ values: .*
338
+ - name: Height
339
+ required: false
340
+ description: Height of the limits bar (default = 25)
341
+ values: .*
342
+ LABELVALUE:
343
+ summary: Displays a LABEL widget to shows the telemetry
344
+ items name followed by a VALUE widget to display the items value.
345
+ parameters:
346
+ - name: Target name
347
+ required: true
348
+ description: The target name
349
+ values: <%= System.targets.keys %>
350
+ - name: Packet name
351
+ required: true
352
+ description: The packet name
353
+ values: .+
354
+ - name: Item name
355
+ required: true
356
+ description: The item name
357
+ values: .+
358
+ - name: Value type
359
+ required: false
360
+ description: The type of the value to display. Default is CONVERTED.
361
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
362
+ - name: Number of characters
363
+ required: false
364
+ description: The number of characters wide to make the value box (default = 12)
365
+ values: .*
366
+ - name: Justification
367
+ required: false
368
+ description: How to justify the label and value together. The default of
369
+ 'SPLIT' aligns the label to the left and the value to the right with any
370
+ additional space going between them. 'CENTER' pushes the label and value
371
+ together with any additional space to the left and right. 'LEFT' or 'RIGHT'
372
+ pushes them to the respective side with the space going on the opposite.
373
+ values: ['SPLIT','CENTER','LEFT','RIGHT']
374
+ LABELVALUEDESC:
375
+ summary: Displays a LABEL widget to shows the telemetry
376
+ items description followed by a VALUE widget to display the items value.
377
+ parameters:
378
+ - name: Target name
379
+ required: true
380
+ description: The target name
381
+ values: <%= System.targets.keys %>
382
+ - name: Packet name
383
+ required: true
384
+ description: The packet name
385
+ values: .+
386
+ - name: Item name
387
+ required: true
388
+ description: The item name
389
+ values: .+
390
+ - name: Description
391
+ required: false
392
+ description: The description to display in the label (default is to display
393
+ the description text associated with the telemetry item)
394
+ values: .*
395
+ - name: Value type
396
+ required: false
397
+ description: The type of the value to display. Default is CONVERTED.
398
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
399
+ - name: Number of characters
400
+ required: false
401
+ description: The number of characters wide to make the value box (default = 12)
402
+ values: .*
403
+ LABELVALUELIMITSBAR:
404
+ summary: Displays a LABEL widget to shows the
405
+ telemetry item's name, followed by a VALUE widget to display the item's value,
406
+ followed by a LIMITSBAR widget.
407
+ parameters:
408
+ - name: Target name
409
+ required: true
410
+ description: The target name
411
+ values: <%= System.targets.keys %>
412
+ - name: Packet name
413
+ required: true
414
+ description: The packet name
415
+ values: .+
416
+ - name: Item name
417
+ required: true
418
+ description: The item name
419
+ values: .+
420
+ - name: Value type
421
+ required: false
422
+ description: The type of the value to display. Default is CONVERTED.
423
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
424
+ - name: Number of characters
425
+ required: false
426
+ description: The number of characters wide to make the value box (default = 12)
427
+ values: .*
428
+ LABELVALUELIMITSCOLUMN:
429
+ summary: Displays a LABEL widget to shows
430
+ the telemetry itemls name, followed by a VALUE widget to display the item's
431
+ value, followed by a LIMITSCOLUMN widget.
432
+ parameters:
433
+ - name: Target name
434
+ required: true
435
+ description: The target name
436
+ values: <%= System.targets.keys %>
437
+ - name: Packet name
438
+ required: true
439
+ description: The packet name
440
+ values: .+
441
+ - name: Item name
442
+ required: true
443
+ description: The item name
444
+ values: .+
445
+ - name: Value type
446
+ required: false
447
+ description: The type of the value to display. Default is CONVERTED.
448
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
449
+ - name: Number of characters
450
+ required: false
451
+ description: The number of characters wide to make the value box (default = 12)
452
+ values: .*
453
+ LABELVALUERANGEBAR:
454
+ summary: Displays a LABEL widget to shows the
455
+ telemetry item's name, followed by a VALUE widget to display the item's value,
456
+ followed by a RANGEBAR widget.
457
+ parameters:
458
+ - name: Target name
459
+ required: true
460
+ description: The target name
461
+ values: <%= System.targets.keys %>
462
+ - name: Packet name
463
+ required: true
464
+ description: The packet name
465
+ values: .+
466
+ - name: Item name
467
+ required: true
468
+ description: The item name
469
+ values: .+
470
+ - name: Low Value
471
+ required: true
472
+ description: Minimum value to display on the range bar. If the telemetry
473
+ item goes below this value the bar is “pegged” on the low end.
474
+ values: .+
475
+ - name: High Value
476
+ required: true
477
+ description: Maximum value to display on the range bar. If the telemetry
478
+ item goes above this value the bar is “pegged” on the high end.
479
+ values: .+
480
+ - name: Value type
481
+ required: false
482
+ description: The type of the value to display. Default is CONVERTED.
483
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
484
+ - name: Number of characters
485
+ required: false
486
+ description: The number of characters wide to make the value box (default = 12)
487
+ values: .*
488
+ - name: Width
489
+ required: false
490
+ description: Width of the range bar (default = 160)
491
+ values: .*
492
+ - name: Height
493
+ required: false
494
+ description: Height of the range bar (default = 25)
495
+ values: .*
496
+ LABELVALUERANGECOLUMN:
497
+ summary: Displays a LABEL widget to shows the
498
+ telemetry item's name, followed by a VALUE widget to display the item's value,
499
+ followed by a RANGECOLUMN widget.
500
+ parameters:
501
+ - name: Target name
502
+ required: true
503
+ description: The target name
504
+ values: <%= System.targets.keys %>
505
+ - name: Packet name
506
+ required: true
507
+ description: The packet name
508
+ values: .+
509
+ - name: Item name
510
+ required: true
511
+ description: The item name
512
+ values: .+
513
+ - name: Low Value
514
+ required: true
515
+ description: Minimum value to display on the range bar. If the telemetry
516
+ item goes below this value the bar is “pegged” on the low end.
517
+ values: .+
518
+ - name: High Value
519
+ required: true
520
+ description: Maximum value to display on the range bar. If the telemetry
521
+ item goes above this value the bar is “pegged” on the high end.
522
+ values: .+
523
+ - name: Value type
524
+ required: false
525
+ description: The type of the value to display. Default is CONVERTED.
526
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
527
+ - name: Number of characters
528
+ required: false
529
+ description: The number of characters wide to make the value box (default = 12)
530
+ values: .*
531
+ - name: Width
532
+ required: false
533
+ description: Width of the range bar (default = 160)
534
+ values: .*
535
+ - name: Height
536
+ required: false
537
+ description: Height of the range bar (default = 25)
538
+ values: .*
539
+ LIMITSBAR:
540
+ summary: Displays a graphical representation of where an
541
+ item's value falls withing its limits ranges horizontally.
542
+ parameters:
543
+ - name: Target name
544
+ required: true
545
+ description: The target name
546
+ values: <%= System.targets.keys %>
547
+ - name: Packet name
548
+ required: true
549
+ description: The packet name
550
+ values: .+
551
+ - name: Item name
552
+ required: true
553
+ description: The item name
554
+ values: .+
555
+ - name: Value type
556
+ required: false
557
+ description: The type of the value to display. Default is CONVERTED.
558
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
559
+ - name: Width
560
+ required: false
561
+ description: Width of the range bar (default = 160)
562
+ values: .*
563
+ - name: Height
564
+ required: false
565
+ description: Height of the range bar (default = 25)
566
+ values: .*
567
+ LIMITSCOLUMN:
568
+ summary: Displays a graphical representation of where an
569
+ item's value falls withing its limits ranges vertically.
570
+ parameters:
571
+ - name: Target name
572
+ required: true
573
+ description: The target name
574
+ values: <%= System.targets.keys %>
575
+ - name: Packet name
576
+ required: true
577
+ description: The packet name
578
+ values: .+
579
+ - name: Item name
580
+ required: true
581
+ description: The item name
582
+ values: .+
583
+ - name: Value type
584
+ required: false
585
+ description: The type of the value to display. Default is CONVERTED.
586
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
587
+ - name: Width
588
+ required: false
589
+ description: Width of the range bar (default = 160)
590
+ values: .*
591
+ - name: Height
592
+ required: false
593
+ description: Height of the range bar (default = 25)
594
+ values: .*
595
+ LIMITSCOLOR:
596
+ summary: Displays a stoplight-like circle depicting the
597
+ limits color of an item
598
+ parameters:
599
+ - name: Target name
600
+ required: true
601
+ description: The target name
602
+ values: <%= System.targets.keys %>
603
+ - name: Packet name
604
+ required: true
605
+ description: The packet name
606
+ values: .+
607
+ - name: Item name
608
+ required: true
609
+ description: The item name
610
+ values: .+
611
+ - name: Value type
612
+ required: false
613
+ description: The type of the value to display. Default is CONVERTED.
614
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
615
+ - name: Radius
616
+ required: false
617
+ description: Radius of the circle (default is 10)
618
+ values: .*
619
+ - name: Full Item Name
620
+ required: false
621
+ description: Show the full item name (default is false)
622
+ values: .*
623
+ VALUELIMITSBAR:
624
+ summary: Displays a graphical representation of where
625
+ an items value falls withing its limits ranges horizontally and its value in
626
+ a VALUE widget.
627
+ parameters:
628
+ - name: Target name
629
+ required: true
630
+ description: The target name
631
+ values: <%= System.targets.keys %>
632
+ - name: Packet name
633
+ required: true
634
+ description: The packet name
635
+ values: .+
636
+ - name: Item name
637
+ required: true
638
+ description: The item name
639
+ values: .+
640
+ - name: Value type
641
+ required: false
642
+ description: The type of the value to display. Default is CONVERTED.
643
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
644
+ - name: Number of characters
645
+ required: false
646
+ description: The number of characters wide to make the value box (default = 8)
647
+ values: .*
648
+ VALUELIMITSCOLUMN:
649
+ summary: Displays a graphical representation of where
650
+ an item's value falls within its limits ranges vertically and its value in a
651
+ VALUE widget.
652
+ parameters:
653
+ - name: Target name
654
+ required: true
655
+ description: The target name
656
+ values: <%= System.targets.keys %>
657
+ - name: Packet name
658
+ required: true
659
+ description: The packet name
660
+ values: .+
661
+ - name: Item name
662
+ required: true
663
+ description: The item name
664
+ values: .+
665
+ - name: Value type
666
+ required: false
667
+ description: The type of the value to display. Default is CONVERTED.
668
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
669
+ - name: Number of characters
670
+ required: false
671
+ description: The number of characters wide to make the value box (default = 8)
672
+ values: .*
673
+ VALUERANGEBAR:
674
+ summary: Displays a graphical representation of where an
675
+ item's value falls within a range horizontally and its value in a VALUE widget.
676
+ parameters:
677
+ - name: Target name
678
+ required: true
679
+ description: The target name
680
+ values: <%= System.targets.keys %>
681
+ - name: Packet name
682
+ required: true
683
+ description: The packet name
684
+ values: .+
685
+ - name: Item name
686
+ required: true
687
+ description: The item name
688
+ values: .+
689
+ - name: Low Value
690
+ required: true
691
+ description: Minimum value to display on the range bar. If the telemetry
692
+ item goes below this value the bar is “pegged” on the low end.
693
+ values: .+
694
+ - name: High Value
695
+ required: true
696
+ description: Maximum value to display on the range bar. If the telemetry
697
+ item goes above this value the bar is “pegged” on the high end.
698
+ values: .+
699
+ - name: Value type
700
+ required: false
701
+ description: The type of the value to display. Default is CONVERTED.
702
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
703
+ - name: Number of characters
704
+ required: false
705
+ description: The number of characters wide to make the value box (default = 12)
706
+ values: .*
707
+ - name: Width
708
+ required: false
709
+ description: Width of the range bar (default = 160)
710
+ values: .*
711
+ - name: Height
712
+ required: false
713
+ description: Height of the range bar (default = 25)
714
+ values: .*
715
+ VALUERANGECOLUMN:
716
+ summary: Displays a graphical representation of where
717
+ an item's value falls within a range vertically and its value in a VALUE widget.
718
+ parameters:
719
+ - name: Target name
720
+ required: true
721
+ description: The target name
722
+ values: <%= System.targets.keys %>
723
+ - name: Packet name
724
+ required: true
725
+ description: The packet name
726
+ values: .+
727
+ - name: Item name
728
+ required: true
729
+ description: The item name
730
+ values: .+
731
+ - name: Low Value
732
+ required: true
733
+ description: Minimum value to display on the range bar. If the telemetry
734
+ item goes below this value the bar is “pegged” on the low end.
735
+ values: .+
736
+ - name: High Value
737
+ required: true
738
+ description: Maximum value to display on the range bar. If the telemetry
739
+ item goes above this value the bar is “pegged” on the high end.
740
+ values: .+
741
+ - name: Value type
742
+ required: false
743
+ description: The type of the value to display. Default is CONVERTED.
744
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
745
+ - name: Number of characters
746
+ required: false
747
+ description: The number of characters wide to make the value box (default = 12)
748
+ values: .*
749
+ - name: Width
750
+ required: false
751
+ description: Width of the range bar (default = 160)
752
+ values: .*
753
+ - name: Height
754
+ required: false
755
+ description: Height of the range bar (default = 25)
756
+ values: .*
757
+ LINEGRAPH:
758
+ summary: Displays a line graph of a telemetry items value
759
+ verses sample number
760
+ parameters:
761
+ - name: Target name
762
+ required: true
763
+ description: The target name
764
+ values: <%= System.targets.keys %>
765
+ - name: Packet name
766
+ required: true
767
+ description: The packet name
768
+ values: .+
769
+ - name: Item name
770
+ required: true
771
+ description: The item name
772
+ values: .+
773
+ - name: Num Samples
774
+ required: false
775
+ description: Number of samples to display on the graph (default = 100)
776
+ values: .*
777
+ - name: Width
778
+ required: false
779
+ description: Width of the graph (default = 300)
780
+ values: .*
781
+ - name: Height
782
+ required: false
783
+ description: Height of the graph (default = 200)
784
+ values: .*
785
+ - name: Value type
786
+ required: false
787
+ description: The type of the value to display. Default is CONVERTED.
788
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
789
+ PROGRESSBAR:
790
+ summary: Displays a progress bar that is useful for displaying percentages
791
+ parmeters:
792
+ - name: Target name
793
+ required: true
794
+ description: The target name
795
+ values: <%= System.targets.keys %>
796
+ - name: Packet name
797
+ required: true
798
+ description: The packet name
799
+ values: .+
800
+ - name: Item name
801
+ required: true
802
+ description: The item name
803
+ values: .+
804
+ - name: Scale factor
805
+ required: false
806
+ description: Value to multiple the telemetry item by before displaying the
807
+ in the progress bar. Final value should be in the range of 0 to 100. Default is 1.0.
808
+ values: .*
809
+ - name: Width
810
+ required: false
811
+ description: Width of the progress bar (default = 80 pixels
812
+ values: .*
813
+ - name: Value type
814
+ required: false
815
+ description: The type of the value to display. Default is CONVERTED.
816
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
817
+ RANGEBAR:
818
+ summary: Displays a graphical representation of where an
819
+ item's value falls withing a range horizontally.
820
+ parameters:
821
+ - name: Target name
822
+ required: true
823
+ description: The target name
824
+ values: <%= System.targets.keys %>
825
+ - name: Packet name
826
+ required: true
827
+ description: The packet name
828
+ values: .+
829
+ - name: Item name
830
+ required: true
831
+ description: The item name
832
+ values: .+
833
+ - name: Low Value
834
+ required: true
835
+ description: Minimum value to display on the range bar. If the telemetry
836
+ item goes below this value the bar is “pegged” on the low end.
837
+ values: .+
838
+ - name: High Value
839
+ required: true
840
+ description: Maximum value to display on the range bar. If the telemetry
841
+ item goes above this value the bar is “pegged” on the high end.
842
+ values: .+
843
+ - name: Value type
844
+ required: false
845
+ description: The type of the value to display. Default is CONVERTED.
846
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
847
+ - name: Width
848
+ required: false
849
+ description: Width of the range bar (default = 160)
850
+ values: .*
851
+ - name: Height
852
+ required: false
853
+ description: Height of the range bar (default = 25)
854
+ values: .*
855
+ RANGECOLUMN:
856
+ summary: Displays a graphical representation of where
857
+ an item's value falls withing a range vertically
858
+ parameters:
859
+ - name: Target name
860
+ required: true
861
+ description: The target name
862
+ values: <%= System.targets.keys %>
863
+ - name: Packet name
864
+ required: true
865
+ description: The packet name
866
+ values: .+
867
+ - name: Item name
868
+ required: true
869
+ description: The item name
870
+ values: .+
871
+ - name: Low Value
872
+ required: true
873
+ description: Minimum value to display on the range bar. If the telemetry
874
+ item goes below this value the bar is “pegged” on the low end.
875
+ values: .+
876
+ - name: High Value
877
+ required: true
878
+ description: Maximum value to display on the range bar. If the telemetry
879
+ item goes above this value the bar is “pegged” on the high end.
880
+ values: .+
881
+ - name: Value type
882
+ required: false
883
+ description: The type of the value to display. Default is CONVERTED.
884
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
885
+ - name: Width
886
+ required: false
887
+ description: Width of the range bar (default = 30)
888
+ values: .*
889
+ - name: Height
890
+ required: false
891
+ description: Height of the range bar (default = 100)
892
+ values: .*
893
+ TEXTBOX:
894
+ summary: Provides a large box for multiline text
895
+ parameters:
896
+ - name: Target name
897
+ required: true
898
+ description: The target name
899
+ values: <%= System.targets.keys %>
900
+ - name: Packet name
901
+ required: true
902
+ description: The packet name
903
+ values: .+
904
+ - name: Item name
905
+ required: true
906
+ description: The item name
907
+ values: .+
908
+ - name: Width
909
+ required: false
910
+ description: Width of the range bar (default = 30)
911
+ values: .*
912
+ - name: Height
913
+ required: false
914
+ description: Height of the range bar (default = 100)
915
+ values: .*
916
+ TIMEGRAPH:
917
+ summary: Displays a line graph of a telemetry items value verses time
918
+ parameters:
919
+ - name: Target name
920
+ required: true
921
+ description: The target name
922
+ values: <%= System.targets.keys %>
923
+ - name: Packet name
924
+ required: true
925
+ description: The packet name
926
+ values: .+
927
+ - name: Item name
928
+ required: true
929
+ description: The item name
930
+ values: .+
931
+ - name: Num Samples
932
+ required: false
933
+ description: Number of samples to display on graph (default = 100)
934
+ values: .*
935
+ - name: Width
936
+ required: false
937
+ description: Width of the graph (default = 300)
938
+ values: .*
939
+ - name: Height
940
+ required: false
941
+ description: Height of the graph (default = 200)
942
+ values: .*
943
+ - name: Show Points
944
+ required: false
945
+ description: Whether to show points or just draw lines between points (default = true)
946
+ values: ['TRUE','FALSE']
947
+ - name: Time item name
948
+ required: false
949
+ description: The telemetry item to use as the time on the X axis (default = TIMESECONDS)
950
+ value: .*
951
+ - name: Value type
952
+ required: false
953
+ description: The type of the value to display. Default is CONVERTED.
954
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
955
+ TRENDBAR:
956
+ summary: Provides the same functionality as the LIMITSBAR
957
+ widget except that it also keeps a history of the telemetry item and
958
+ graphically shows where the value was X seconds ago.
959
+ parameters:
960
+ - name: Target name
961
+ required: true
962
+ description: The target name
963
+ values: <%= System.targets.keys %>
964
+ - name: Packet name
965
+ required: true
966
+ description: The packet name
967
+ values: .+
968
+ - name: Item name
969
+ required: true
970
+ description: The item name
971
+ values: .+
972
+ - name: Value type
973
+ required: false
974
+ description: The type of the value to display. Default is CONVERTED.
975
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
976
+ - name: Trend Seconds
977
+ required: false
978
+ description: The number of seconds in the past to display the trend value (default = 60)
979
+ values: .*
980
+ - name: Width
981
+ required: false
982
+ description: Width of the limits bar (default = 160)
983
+ values: .*
984
+ - name: Height
985
+ required: false
986
+ description: Height of the limits bar (default = 25)
987
+ values: .*
988
+ TRENDLIMITSBAR:
989
+ summary: Displays a VALUE widget to show the telemetry items current value,
990
+ a VALUE widget to display the value of the item X seconds ago, and a TRENDBAR
991
+ widget to display the items value within its limits ranges and its trend.
992
+ parameters:
993
+ - name: Target name
994
+ required: true
995
+ description: The target name
996
+ values: <%= System.targets.keys %>
997
+ - name: Packet name
998
+ required: true
999
+ description: The packet name
1000
+ values: .+
1001
+ - name: Item name
1002
+ required: true
1003
+ description: The item name
1004
+ values: .+
1005
+ - name: Value type
1006
+ required: false
1007
+ description: The type of the value to display. Default is CONVERTED.
1008
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
1009
+ - name: Trend Seconds
1010
+ required: false
1011
+ description: The number of seconds in the past to display the trend value (default = 60)
1012
+ values: .*
1013
+ - name: Characters
1014
+ required: false
1015
+ description: The number of characters to display the telemetry value (default = 12)
1016
+ values: .*
1017
+ - name: Width
1018
+ required: false
1019
+ description: Width of the limits bar (default = 160)
1020
+ values: .*
1021
+ - name: Height
1022
+ required: false
1023
+ description: Height of the limits bar (default = 25)
1024
+ values: .*
1025
+ VALUE:
1026
+ summary: The VALUE widget displays a box with a value printed inside. The white
1027
+ portion of the box darkens to gray while the value remains stagnant, then
1028
+ brightens to white each time the value changes. Additionally the value is
1029
+ colored based on the items limits state (Red for example if it is out of limits).
1030
+ parameters:
1031
+ - name: Target name
1032
+ required: true
1033
+ description: The target name
1034
+ values: <%= System.targets.keys %>
1035
+ - name: Packet name
1036
+ required: true
1037
+ description: The packet name
1038
+ values: .+
1039
+ - name: Item name
1040
+ required: true
1041
+ description: The item name
1042
+ values: .+
1043
+ - name: Value type
1044
+ required: false
1045
+ description: The type of the value to display. Default is CONVERTED.
1046
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
1047
+ - name: Number of characters
1048
+ required: false
1049
+ description: The number of characters wide to make the value box (default = 12)
1050
+ values: .*
1051
+ BUTTON:
1052
+ summary: Displays a rectangular clickable button
1053
+ description: Upon clicking, the button executes the Ruby code assigned. Buttons
1054
+ can be used to send commands and perform other tasks. If you want your button
1055
+ to use values from other widgets, define them as named widgets and read their
1056
+ values using the get_named_widget("WIDGET_NAME").text method.
1057
+ warning: If your button logic gets complex it's recommended to require a separate
1058
+ script and pass the screen to the script using self,
1059
+ e.g. require utility.rb; utility_method(self).
1060
+ parameters:
1061
+ - name: Button Text
1062
+ required: true
1063
+ description: Text displayed on the button
1064
+ values: .+
1065
+ - name: Button Code
1066
+ required: true
1067
+ description: Ruby code to execute when the button is pressed
1068
+ values: .+
1069
+ CHECKBUTTON:
1070
+ summary: Displays a check box
1071
+ description: Note this is of limited use by itself and is primarily used in
1072
+ conjunction with NAMED_WIDGET.
1073
+ parameters:
1074
+ - name: Checkbox Text
1075
+ required: true
1076
+ description: Text displayed next to the checkbox
1077
+ values: .+
1078
+ COMBOBOX:
1079
+ summary: Displays a drop down list of text items
1080
+ description: Note this is of limited use by itself and is primarily used in
1081
+ conjunction with NAMED_WIDGET.
1082
+ parameters:
1083
+ - name: Option Text
1084
+ required: true
1085
+ description: Text to display in the selection drop down
1086
+ value: .+
1087
+ RADIOBUTTON:
1088
+ summary: Displays a radio button and text
1089
+ description: Note this is of limited use by itself and is primarily used in
1090
+ conjunction with NAMED_WIDGET.
1091
+ parameters:
1092
+ - name: Text
1093
+ required: true
1094
+ description: Text to display next to the radio button
1095
+ values: .+
1096
+ TEXTFIELD:
1097
+ summary: Displays a rectangular box where the user can enter text
1098
+ parameters:
1099
+ - name: Characters
1100
+ required: false
1101
+ description: Width of the text field in characters (default = 12)
1102
+ values: .*
1103
+ - name: Text
1104
+ required: false
1105
+ description: Default text to put in the text field (default is blank)
1106
+ values: .*
1107
+ CANVAS:
1108
+ summary: Layout widget for the other canvas widgets
1109
+ description: All canvas widgets must be enclosed within a CANVAS widget.
1110
+ warning: The canvas coordinate frame places (0,0) in the upper-left corner of the canvas.
1111
+ parameters:
1112
+ - name: Width
1113
+ required: true
1114
+ description: Width of the canvas
1115
+ values: .+
1116
+ - name: Height
1117
+ required: true
1118
+ description: Height of the canvas
1119
+ values: .+
1120
+ CANVASLABEL:
1121
+ summary: Draws text onto the canvas
1122
+ parameters:
1123
+ - name: X Position
1124
+ required: true
1125
+ description: X position of the upper-left corner of the text on the canvas
1126
+ values: \d+
1127
+ - name: Y Position
1128
+ required: true
1129
+ description: Y position of the upper-left corner of the text on the canvas
1130
+ values: \d+
1131
+ - name: Text
1132
+ required: true
1133
+ description: Text to draw onto the canvas
1134
+ values: .+
1135
+ - name: Font Size
1136
+ required: false
1137
+ description: Font size of the text (Default = 12)
1138
+ values: \d+
1139
+ - name: Color
1140
+ required: false
1141
+ description: Color of the text
1142
+ values: .+
1143
+ CANVASLABELVALUE:
1144
+ summary: Draws the text value of a telemetry item onto the canvas in an optional frame
1145
+ parameters:
1146
+ - name: Target name
1147
+ required: true
1148
+ description: The target name
1149
+ values: <%= System.targets.keys %>
1150
+ - name: Packet name
1151
+ required: true
1152
+ description: The packet name
1153
+ values: .+
1154
+ - name: Item name
1155
+ required: true
1156
+ description: The item name
1157
+ values: .+
1158
+ - name: X Position
1159
+ required: true
1160
+ description: X position of the upper-left corner of the text on the canvas
1161
+ values: \d+
1162
+ - name: Y Position
1163
+ required: true
1164
+ description: Y position of the upper-left corner of the text on the canvas
1165
+ values: \d+
1166
+ - name: Font Size
1167
+ required: false
1168
+ description: Font size of the text (Default = 12)
1169
+ values: \d+
1170
+ - name: Color
1171
+ required: false
1172
+ description: Color of the text
1173
+ values: .+
1174
+ - name: Frame
1175
+ required: false
1176
+ description: Whether to draw a frame around the value
1177
+ values: ['FALSE', 'TRUE']
1178
+ - name: Frame Width
1179
+ required: false
1180
+ description: Frame width in pixels
1181
+ values: .*
1182
+ - name: Value type
1183
+ required: false
1184
+ description: The type of the value to display. Default is CONVERTED.
1185
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
1186
+ CANVASIMAGE:
1187
+ summary: Displays a GIF image on the canvas
1188
+ parameters:
1189
+ - name: Image name
1190
+ required: true
1191
+ description: Name of a image file. The file must be located in the
1192
+ <CONFIG>/data directory.
1193
+ values: .+
1194
+ - name: X Position
1195
+ required: true
1196
+ description: X position of the upper-left corner of the image on the canvas
1197
+ values: \d+
1198
+ - name: Y Position
1199
+ required: true
1200
+ description: Y position of the upper-left corner of the image on the canvas
1201
+ values: \d+
1202
+ CANVASIMAGEVALUE:
1203
+ summary: Displays a GIF image on the canvas that changes with a telemetry value
1204
+ parameters:
1205
+ - name: Target name
1206
+ required: true
1207
+ description: The target name
1208
+ values: <%= System.targets.keys %>
1209
+ - name: Packet name
1210
+ required: true
1211
+ description: The packet name
1212
+ values: .+
1213
+ - name: Item name
1214
+ required: true
1215
+ description: The item name
1216
+ values: .+
1217
+ - name: Filename Prefix
1218
+ required: true
1219
+ description: The prefix part of the filename of the gif images (expected
1220
+ to be in the <CONFIG>/data directory). The actual filenames will be this
1221
+ value plus the word 'on' or the word 'off' and '.gif'. For example, your
1222
+ prefix is 'ground' so the files 'groundon.gif' and 'groundoff.gif' will
1223
+ be searched for in the <CONFIG>/data directory.
1224
+ values: .+
1225
+ - name: X Position
1226
+ required: true
1227
+ description: X position of the upper-left corner of the image on the canvas
1228
+ values: \d+
1229
+ - name: Y Position
1230
+ required: true
1231
+ description: Y position of the upper-left corner of the image on the canvas
1232
+ values: \d+
1233
+ CANVASLINE:
1234
+ summary: Draws a line onto the canvas
1235
+ parameters:
1236
+ - name: Start X Position
1237
+ required: true
1238
+ description: X position of the start of the line on the canvas
1239
+ values: \d+
1240
+ - name: Start Y Position
1241
+ required: true
1242
+ description: Y position of the start of the line on the canvas
1243
+ values: \d+
1244
+ - name: End X Position
1245
+ required: true
1246
+ description: X position of the end of the line on the canvas
1247
+ values: \d+
1248
+ - name: End Y Position
1249
+ required: true
1250
+ description: Y position of the end of the line on the canvas
1251
+ values: \d+
1252
+ - name: Color
1253
+ required: false
1254
+ description: Color of the line
1255
+ values: .+
1256
+ - name: Width
1257
+ required: false
1258
+ description: Width of the line in pixels (default = 1)
1259
+ values: \d+
1260
+ - name: Connector
1261
+ required: false
1262
+ description: Indicates whether or not to draw a circle at the endpoint of
1263
+ the line
1264
+ values: ['NO_CONNECTOR','CONNECTOR']
1265
+ CANVASLINEVALUE:
1266
+ summary: Draws a line onto the canvas in one of two colors based on the value
1267
+ of the associated telemetry item
1268
+ parameters:
1269
+ - name: Target name
1270
+ required: true
1271
+ description: The target name
1272
+ values: <%= System.targets.keys %>
1273
+ - name: Packet name
1274
+ required: true
1275
+ description: The packet name
1276
+ values: .+
1277
+ - name: Item name
1278
+ required: true
1279
+ description: The item name
1280
+ values: .+
1281
+ - name: Start X Position
1282
+ required: true
1283
+ description: X position of the start of the line on the canvas
1284
+ values: \d+
1285
+ - name: Start Y Position
1286
+ required: true
1287
+ description: Y position of the start of the line on the canvas
1288
+ values: \d+
1289
+ - name: End X Position
1290
+ required: true
1291
+ description: X position of the end of the line on the canvas
1292
+ values: \d+
1293
+ - name: End Y Position
1294
+ required: true
1295
+ description: Y position of the end of the line on the canvas
1296
+ values: \d+
1297
+ - name: Color On
1298
+ required: false
1299
+ description: Color of the line when the telmetry point is considered on
1300
+ Default is green.
1301
+ values: .+
1302
+ - name: Color Off
1303
+ required: false
1304
+ description: Color of the line when the telmetry point is considered off
1305
+ Default is blue.
1306
+ values: .+
1307
+ - name: Width
1308
+ required: false
1309
+ description: Width of the line in pixels (default = 3)
1310
+ values: \d+
1311
+ - name: Connector
1312
+ required: false
1313
+ description: Indicates whether or not to draw a circle at the endpoint of
1314
+ the line
1315
+ values: ['NO_CONNECTOR','CONNECTOR']
1316
+ - name: Value type
1317
+ required: false
1318
+ description: The type of the value to display. Default is RAW
1319
+ values: <%= %w(RAW CONVERTED FORMATTED WITH_UNITS) %>
1320
+ CANVASDOT:
1321
+ summary: The CANVASDOT widget draws a dot onto the canvas, and it can be
1322
+ programmed to change its position with ruby code
1323
+ parameters:
1324
+ - name: X Position or Ruby Code
1325
+ required: true
1326
+ description: X position of the dot or a String of Ruby code to evalulate
1327
+ values: .+
1328
+ - name: Y Position or Ruby Code
1329
+ required: true
1330
+ description: Y position of the dot or a String of Ruby code to evalulate
1331
+ values: .+
1332
+ - name: Color
1333
+ required: false
1334
+ description: Color of the dot. Default is black.
1335
+ values: .+
1336
+ - name: Width
1337
+ required: false
1338
+ description: Width of the dot in pixels (default = 3)
1339
+ values: \d+