cosmos-unpacking_interface 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (84) hide show
  1. checksums.yaml +7 -0
  2. data/.gitignore +10 -0
  3. data/.travis.yml +7 -0
  4. data/Gemfile +4 -0
  5. data/LICENSE.txt +21 -0
  6. data/README.md +158 -0
  7. data/Rakefile +12 -0
  8. data/bin/console +14 -0
  9. data/bin/setup +8 -0
  10. data/config/data/README.txt +1 -0
  11. data/config/data/crc.txt +198 -0
  12. data/config/system/system.txt +29 -0
  13. data/config/targets/COSMOS/cmd_tlm/cosmos_server_cmds.txt +41 -0
  14. data/config/targets/COSMOS/cmd_tlm/cosmos_server_tlm.txt +15 -0
  15. data/config/targets/COSMOS/cmd_tlm_server.txt +6 -0
  16. data/config/targets/COSMOS/screens/limits_change.txt +20 -0
  17. data/config/targets/COSMOS/screens/version.txt +19 -0
  18. data/config/targets/COSMOS/target.txt +9 -0
  19. data/config/targets/PI/cmd_tlm/pi_tlm_test.txt +12 -0
  20. data/config/targets/PI/cmd_tlm/pi_tlm_test_1.txt +13 -0
  21. data/config/targets/PI/cmd_tlm/pi_tlm_test_2.txt +68 -0
  22. data/config/targets/PI/cmd_tlm/pi_tlm_test_3.txt +12 -0
  23. data/config/targets/PI/cmd_tlm_server.txt +4 -0
  24. data/config/targets/PI/target.txt +4 -0
  25. data/cosmos-unpacking_interface.gemspec +34 -0
  26. data/doc/Cosmos.html +98 -0
  27. data/doc/Cosmos/AggregatePacketMapper.html +152 -0
  28. data/doc/Cosmos/AggregatePacketProcesser.html +249 -0
  29. data/doc/Cosmos/BaseNameMap.html +364 -0
  30. data/doc/Cosmos/UnpackingInterface.html +399 -0
  31. data/doc/UnpackingInterface.html +110 -0
  32. data/doc/created.rid +7 -0
  33. data/doc/css/fonts.css +167 -0
  34. data/doc/css/rdoc.css +590 -0
  35. data/doc/fonts/Lato-Light.ttf +0 -0
  36. data/doc/fonts/Lato-LightItalic.ttf +0 -0
  37. data/doc/fonts/Lato-Regular.ttf +0 -0
  38. data/doc/fonts/Lato-RegularItalic.ttf +0 -0
  39. data/doc/fonts/SourceCodePro-Bold.ttf +0 -0
  40. data/doc/fonts/SourceCodePro-Regular.ttf +0 -0
  41. data/doc/images/add.png +0 -0
  42. data/doc/images/arrow_up.png +0 -0
  43. data/doc/images/brick.png +0 -0
  44. data/doc/images/brick_link.png +0 -0
  45. data/doc/images/bug.png +0 -0
  46. data/doc/images/bullet_black.png +0 -0
  47. data/doc/images/bullet_toggle_minus.png +0 -0
  48. data/doc/images/bullet_toggle_plus.png +0 -0
  49. data/doc/images/date.png +0 -0
  50. data/doc/images/delete.png +0 -0
  51. data/doc/images/find.png +0 -0
  52. data/doc/images/loadingAnimation.gif +0 -0
  53. data/doc/images/macFFBgHack.png +0 -0
  54. data/doc/images/package.png +0 -0
  55. data/doc/images/page_green.png +0 -0
  56. data/doc/images/page_white_text.png +0 -0
  57. data/doc/images/page_white_width.png +0 -0
  58. data/doc/images/plugin.png +0 -0
  59. data/doc/images/ruby.png +0 -0
  60. data/doc/images/tag_blue.png +0 -0
  61. data/doc/images/tag_green.png +0 -0
  62. data/doc/images/transparent.png +0 -0
  63. data/doc/images/wrench.png +0 -0
  64. data/doc/images/wrench_orange.png +0 -0
  65. data/doc/images/zoom.png +0 -0
  66. data/doc/index.html +91 -0
  67. data/doc/js/darkfish.js +161 -0
  68. data/doc/js/jquery.js +4 -0
  69. data/doc/js/navigation.js +141 -0
  70. data/doc/js/navigation.js.gz +0 -0
  71. data/doc/js/search.js +109 -0
  72. data/doc/js/search_index.js +1 -0
  73. data/doc/js/search_index.js.gz +0 -0
  74. data/doc/js/searcher.js +229 -0
  75. data/doc/js/searcher.js.gz +0 -0
  76. data/doc/lib/README_rdoc.html +118 -0
  77. data/doc/table_of_contents.html +140 -0
  78. data/lib/cosmos/unpacking_interface.rb +14 -0
  79. data/lib/cosmos/unpacking_interface/aggregate_packet_mapper.rb +14 -0
  80. data/lib/cosmos/unpacking_interface/aggregate_packet_processor.rb +42 -0
  81. data/lib/cosmos/unpacking_interface/base_name_map.rb +67 -0
  82. data/lib/cosmos/unpacking_interface/unpacking_interface.rb +87 -0
  83. data/lib/cosmos/unpacking_interface/version.rb +3 -0
  84. metadata +174 -0
@@ -0,0 +1,29 @@
1
+ # Declare Targets that make up the system
2
+ # DECLARE_TARGET target_name [substitute_name]
3
+ DECLARE_TARGET PI
4
+ AUTO_DECLARE_TARGETS
5
+ # DECLARE_TARGET SYSTEM
6
+
7
+ # Ethernet Ports
8
+ #PORT CTS_API 7777
9
+ #PORT TLMVIEWER_API 7778
10
+ #PORT CTS_PREIDENTIFIED 7779
11
+
12
+ # Default Packet Log Writer and Reader
13
+ #DEFAULT_PACKET_LOG_WRITER packet_log_writer.rb
14
+ #DEFAULT_PACKET_LOG_READER packet_log_reader.rb
15
+
16
+ # Paths
17
+ PATH LOGS ./outputs/logs
18
+ PATH TMP ./outputs/tmp
19
+ PATH SAVED_CONFIG ./outputs/saved_config
20
+ PATH TABLES ./outputs/tables
21
+ PATH HANDBOOKS ./outputs/handbooks
22
+ PATH PROCEDURES ./procedures
23
+
24
+ # Command and Telemetry Database Version (Optional)
25
+ # CMD_TLM_VERSION version
26
+
27
+ # DISABLE_DNS
28
+
29
+ ALLOW_ACCESS ALL
@@ -0,0 +1,41 @@
1
+ COMMAND COSMOS STARTLOGGING BIG_ENDIAN "Starts logging both commands and telemetry for an interface"
2
+ APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
3
+ APPEND_ID_PARAMETER OPCODE 32 UINT 2 2 2 "COSMOS Command Opcode"
4
+ APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
5
+ APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
6
+ APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
7
+
8
+ COMMAND COSMOS STARTCMDLOG BIG_ENDIAN "Starts logging commands for an interface"
9
+ APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
10
+ APPEND_ID_PARAMETER OPCODE 32 UINT 3 3 3 "COSMOS Command Opcode"
11
+ APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
12
+ APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
13
+ APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
14
+
15
+ COMMAND COSMOS STARTTLMLOG BIG_ENDIAN "Starts logging telemetry for an interface"
16
+ APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
17
+ APPEND_ID_PARAMETER OPCODE 32 UINT 4 4 4 "COSMOS Command Opcode"
18
+ APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
19
+ APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to start logging on - ALL starts logging on all interfaces"
20
+ APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
21
+
22
+ COMMAND COSMOS STOPLOGGING BIG_ENDIAN "Stops logging both commands and telemetry for an interface"
23
+ APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
24
+ APPEND_ID_PARAMETER OPCODE 32 UINT 5 5 5 "COSMOS Command Opcode"
25
+ APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
26
+ APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
27
+ APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
28
+
29
+ COMMAND COSMOS STOPCMDLOG BIG_ENDIAN "Stops logging commands for an interface"
30
+ APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
31
+ APPEND_ID_PARAMETER OPCODE 32 UINT 6 6 6 "COSMOS Command Opcode"
32
+ APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
33
+ APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
34
+ APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
35
+
36
+ COMMAND COSMOS STOPTLMLOG BIG_ENDIAN "Stops logging telemetry for an interface"
37
+ APPEND_PARAMETER SYNC 32 UINT 0x1ACFFC1D 0x1ACFFC1D 0x1ACFFC1D "COSMOS Command Sync Pattern"
38
+ APPEND_ID_PARAMETER OPCODE 32 UINT 7 7 7 "COSMOS Command Opcode"
39
+ APPEND_PARAMETER LENGTH 32 UINT 0 65536 3 "COSMOS Command Length of Command Data in Bytes"
40
+ APPEND_PARAMETER INTERFACE 256 STRING "ALL" "Interface to stop logging on - ALL stops logging on all interfaces"
41
+ APPEND_PARAMETER LABEL 0 STRING "" "Optional label to place on log files"
@@ -0,0 +1,15 @@
1
+ TELEMETRY COSMOS VERSION BIG_ENDIAN "COSMOS version information"
2
+ APPEND_ID_ITEM PKT_ID 8 UINT 1 "Packet ID"
3
+ APPEND_ITEM COSMOS 240 STRING "COSMOS version"
4
+ APPEND_ITEM RUBY 240 STRING "Ruby version"
5
+ APPEND_ITEM CTDB 240 STRING "Command Telemetry Database Version"
6
+ APPEND_ITEM USER 240 STRING "User Version"
7
+
8
+ TELEMETRY COSMOS LIMITS_CHANGE BIG_ENDIAN "COSMOS limits change"
9
+ APPEND_ID_ITEM PKT_ID 8 UINT 2 "Packet ID"
10
+ APPEND_ITEM TARGET 240 STRING "Target name"
11
+ APPEND_ITEM PACKET 240 STRING "Packet name"
12
+ APPEND_ITEM ITEM 240 STRING "Item that changed limits state"
13
+ APPEND_ITEM OLD_STATE 240 STRING "The old limit state"
14
+ APPEND_ITEM NEW_STATE 240 STRING "The new limit state"
15
+
@@ -0,0 +1,6 @@
1
+ # This is a segment of the main cmd_tlm_server.txt that will be used with
2
+ # AUTO_INTERFACE_TARGETS or INTERFACE_TARGET
3
+
4
+ INTERFACE COSMOSINT cmd_tlm_server_interface.rb
5
+ TARGET COSMOS
6
+ DISABLE_DISCONNECT
@@ -0,0 +1,20 @@
1
+ SCREEN AUTO AUTO 0.5
2
+
3
+ VERTICAL
4
+
5
+ TITLE "COSMOS Limits Change"
6
+ SETTING BACKCOLOR 162 181 205
7
+ SETTING TEXTCOLOR black
8
+
9
+ LABELVALUE COSMOS LIMITS_CHANGE RECEIVED_TIMESECONDS WITH_UNITS 30
10
+ LABELVALUE COSMOS LIMITS_CHANGE RECEIVED_TIMEFORMATTED WITH_UNITS 30
11
+ LABELVALUE COSMOS LIMITS_CHANGE RECEIVED_COUNT WITH_UNITS 30
12
+ LABELVALUE COSMOS LIMITS_CHANGE pkt_id WITH_UNITS 30
13
+ LABELVALUE COSMOS LIMITS_CHANGE target WITH_UNITS 30
14
+ LABELVALUE COSMOS limits_change PACKET WITH_UNITS 30
15
+ LABELVALUE COSMOS limits_change ITEM WITH_UNITS 30
16
+ LABELVALUE cosmos LIMITS_CHANGE OLD_STATE WITH_UNITS 30
17
+ LABELVALUE cosmos LIMITS_CHANGE NEW_STATE WITH_UNITS 30
18
+ END
19
+
20
+
@@ -0,0 +1,19 @@
1
+ SCREEN AUTO AUTO 0.5
2
+
3
+ VERTICAL
4
+
5
+ TITLE "COSMOS Version"
6
+ SETTING BACKCOLOR 162 181 205
7
+ SETTING TEXTCOLOR black
8
+
9
+ LABELVALUE COSMOS VERSION RECEIVED_TIMESECONDS WITH_UNITS 30
10
+ LABELVALUE COSMOS VERSION RECEIVED_TIMEFORMATTED WITH_UNITS 30
11
+ LABELVALUE COSMOS VERSION RECEIVED_COUNT WITH_UNITS 30
12
+ LABELVALUE COSMOS VERSION PKT_ID WITH_UNITS 30
13
+ LABELVALUE COSMOS VERSION COSMOS WITH_UNITS 30
14
+ LABELVALUE COSMOS VERSION RUBY WITH_UNITS 30
15
+ LABELVALUE COSMOS VERSION CTDB WITH_UNITS 30
16
+ LABELVALUE COSMOS VERSION USER WITH_UNITS 30
17
+ END
18
+
19
+
@@ -0,0 +1,9 @@
1
+ # Ignored Parameters
2
+ # IGNORE_PARAMETER parameter_name
3
+ IGNORE_PARAMETER SYNC
4
+ IGNORE_PARAMETER OPCODE
5
+ IGNORE_PARAMETER LENGTH
6
+
7
+ IGNORE_ITEM RECEIVED_COUNT
8
+ IGNORE_ITEM RECEIVED_TIMESECONDS
9
+ IGNORE_ITEM RECEIVED_TIMEFORMATTED
@@ -0,0 +1,12 @@
1
+ TELEMETRY PI TEST LITTLE_ENDIAN "Test Aggregate Packet"
2
+ APPEND_ID_ITEM TST_PK_ID 16 UINT 149 "Packet ID which must be 149"
3
+ APPEND_ITEM VALUE_A 8 UINT
4
+ APPEND_ITEM VALUE_B 8 UINT
5
+
6
+ ITEM HEAD_LENGTH 32 16 UINT
7
+
8
+ APPEND_ITEM VALUE_C 8 UINT
9
+ APPEND_ITEM VALUE_D 8 UINT
10
+ # ITEM TEMP_AVERAGE 0 0 DERIVED "Yo"
11
+ # READ_CONVERSION multi_field_bit_conversion.rb VALUE_C VALUE_D
12
+
@@ -0,0 +1,13 @@
1
+ TELEMETRY PI TEST_1 LITTLE_ENDIAN "Test Packet"
2
+ APPEND_ID_ITEM TST_PK_ID 16 UINT 150 "Packet ID which must be 149"
3
+ APPEND_ITEM VALUE_A 8 UINT
4
+ APPEND_ITEM VALUE_B 8 UINT
5
+
6
+ ITEM HEAD_LENGTH 32 16 UINT
7
+
8
+ APPEND_ITEM VALUE_C_0 8 UINT
9
+ APPEND_ITEM VALUE_D_0 8 UINT
10
+ APPEND_ITEM VALUE_C_1 8 UINT
11
+ APPEND_ITEM VALUE_D_1 8 UINT
12
+ APPEND_ITEM VALUE_C_2 8 UINT
13
+ APPEND_ITEM VALUE_D_2 8 UINT
@@ -0,0 +1,68 @@
1
+ TELEMETRY PI TEST_2 LITTLE_ENDIAN "Test Packet"
2
+ APPEND_ID_ITEM TST_PK_ID 16 UINT 151 "Packet ID which must be 149"
3
+ APPEND_ITEM VALUE_A 8 UINT
4
+ APPEND_ITEM VALUE_B 8 UINT
5
+
6
+ ITEM HEAD_LENGTH 32 16 UINT
7
+
8
+ APPEND_ITEM VALUE_C_0 8 UINT
9
+ APPEND_ITEM VALUE_D_0 8 UINT
10
+ APPEND_ITEM VALUE_C_1 8 UINT
11
+ APPEND_ITEM VALUE_D_1 8 UINT
12
+ APPEND_ITEM VALUE_C_2 8 UINT
13
+ APPEND_ITEM VALUE_D_2 8 UINT
14
+ APPEND_ITEM VALUE_C_3 8 UINT
15
+ APPEND_ITEM VALUE_D_3 8 UINT
16
+ APPEND_ITEM VALUE_C_4 8 UINT
17
+ APPEND_ITEM VALUE_D_4 8 UINT
18
+ APPEND_ITEM VALUE_C_5 8 UINT
19
+ APPEND_ITEM VALUE_D_5 8 UINT
20
+ APPEND_ITEM VALUE_C_6 8 UINT
21
+ APPEND_ITEM VALUE_D_6 8 UINT
22
+ APPEND_ITEM VALUE_C_7 8 UINT
23
+ APPEND_ITEM VALUE_D_7 8 UINT
24
+ APPEND_ITEM VALUE_C_8 8 UINT
25
+ APPEND_ITEM VALUE_D_8 8 UINT
26
+ APPEND_ITEM VALUE_C_9 8 UINT
27
+ APPEND_ITEM VALUE_D_9 8 UINT
28
+ APPEND_ITEM VALUE_C_10 8 UINT
29
+ APPEND_ITEM VALUE_D_10 8 UINT
30
+ APPEND_ITEM VALUE_C_11 8 UINT
31
+ APPEND_ITEM VALUE_D_11 8 UINT
32
+ APPEND_ITEM VALUE_C_12 8 UINT
33
+ APPEND_ITEM VALUE_D_12 8 UINT
34
+ APPEND_ITEM VALUE_C_13 8 UINT
35
+ APPEND_ITEM VALUE_D_13 8 UINT
36
+ APPEND_ITEM VALUE_C_14 8 UINT
37
+ APPEND_ITEM VALUE_D_14 8 UINT
38
+ APPEND_ITEM VALUE_C_15 8 UINT
39
+ APPEND_ITEM VALUE_D_15 8 UINT
40
+ APPEND_ITEM VALUE_C_16 8 UINT
41
+ APPEND_ITEM VALUE_D_16 8 UINT
42
+ APPEND_ITEM VALUE_C_17 8 UINT
43
+ APPEND_ITEM VALUE_D_17 8 UINT
44
+ APPEND_ITEM VALUE_C_18 8 UINT
45
+ APPEND_ITEM VALUE_D_18 8 UINT
46
+ APPEND_ITEM VALUE_C_19 8 UINT
47
+ APPEND_ITEM VALUE_D_19 8 UINT
48
+ APPEND_ITEM VALUE_C_20 8 UINT
49
+ APPEND_ITEM VALUE_D_20 8 UINT
50
+ APPEND_ITEM VALUE_C_21 8 UINT
51
+ APPEND_ITEM VALUE_D_21 8 UINT
52
+ APPEND_ITEM VALUE_C_22 8 UINT
53
+ APPEND_ITEM VALUE_D_23 8 UINT
54
+ APPEND_ITEM VALUE_C_24 8 UINT
55
+ APPEND_ITEM VALUE_D_24 8 UINT
56
+ APPEND_ITEM VALUE_C_25 8 UINT
57
+ APPEND_ITEM VALUE_D_25 8 UINT
58
+ APPEND_ITEM VALUE_C_26 8 UINT
59
+ APPEND_ITEM VALUE_D_26 8 UINT
60
+ APPEND_ITEM VALUE_C_27 8 UINT
61
+ APPEND_ITEM VALUE_D_27 8 UINT
62
+ APPEND_ITEM VALUE_C_28 8 UINT
63
+ APPEND_ITEM VALUE_D_28 8 UINT
64
+ APPEND_ITEM VALUE_C_29 8 UINT
65
+ APPEND_ITEM VALUE_D_29 8 UINT
66
+ APPEND_ITEM VALUE_C_30 8 UINT
67
+ APPEND_ITEM VALUE_D_30 8 UINT
68
+
@@ -0,0 +1,12 @@
1
+ TELEMETRY PI TEST_3 LITTLE_ENDIAN "Test Aggregate Packet"
2
+ APPEND_ID_ITEM TST_PK_ID 16 UINT 153 "Packet ID which must be 149"
3
+ APPEND_ITEM VALUE_A 8 INT
4
+ APPEND_ITEM VALUE_B 8 INT
5
+
6
+ ITEM HEAD_LENGTH 32 16 UINT
7
+
8
+ APPEND_ITEM VALUE_C 16 UINT
9
+ APPEND_ITEM VALUE_D 4 UINT
10
+ # ITEM TEMP_AVERAGE 0 0 DERIVED "Yo"
11
+ # READ_CONVERSION multi_field_bit_conversion.rb VALUE_C VALUE_D
12
+
@@ -0,0 +1,4 @@
1
+ #INTERFACE NAME INTERFACE FILE WRITE READ W TIMEOUT R TIMEOUT STREAM ARGUMENTS
2
+ #-----------------------------------------------------------------------------------------------------------------------------------------
3
+ INTERFACE PI_TCPIP unpacking_interface.rb 4810 4810 nil nil LENGTH 32 16 7 1 LITTLE_ENDIAN 0 nil 10532
4
+ TARGET PI
@@ -0,0 +1,4 @@
1
+ #REQUIRE temp_conversion.rb
2
+ #REQUIRE hkadc_conversion.rb
3
+ #REQUIRE hkadc_lpsweep.rb
4
+ #REQUIRE multi_field_bit_conversion.rb
@@ -0,0 +1,34 @@
1
+
2
+ lib = File.expand_path("../lib", __FILE__)
3
+ $LOAD_PATH.unshift(lib) unless $LOAD_PATH.include?(lib)
4
+ require "cosmos/unpacking_interface/version"
5
+
6
+ Gem::Specification.new do |spec|
7
+ spec.name = "cosmos-unpacking_interface"
8
+ spec.version = UnpackingInterface::VERSION
9
+ spec.authors = ["Center for Space Engineering", "Nick Benoit"]
10
+ spec.email = ["cse@engineering.usu.edu", "nick.benoit14@gmail.com"]
11
+
12
+ spec.summary = %q{
13
+ A custom interface that unpacks aggregate packets (packets with many granules) into many
14
+ simple packets (packets with a single granule). This way we can use all the cosmos niceties
15
+ without having to send packets for individual measurements. Essentially we unpack an aggregate
16
+ packet into many packets that are stored in a queue that is read from. When the queue is empty
17
+ we look for new aggregate packets
18
+ }
19
+ spec.homepage = "https://github.com/nick-benoit14/cosmos-unpacking_interface"
20
+ spec.license = "MIT"
21
+
22
+ # Specify which files should be added to the gem when it is released.
23
+ # The `git ls-files -z` loads the files in the RubyGem that have been added into git.
24
+ spec.files = Dir.chdir(File.expand_path('..', __FILE__)) do
25
+ `git ls-files -z`.split("\x0").reject { |f| f.match(%r{^(test|spec|features)/}) }
26
+ end
27
+
28
+ spec.require_paths = ["lib"]
29
+
30
+ spec.add_development_dependency "bundler", "~> 1.3"
31
+ spec.add_development_dependency "rake", "~> 10.0"
32
+
33
+ spec.add_runtime_dependency "cosmos", "4.3"
34
+ end
data/doc/Cosmos.html ADDED
@@ -0,0 +1,98 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>module Cosmos - RDoc Documentation</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "./";
11
+ var index_rel_prefix = "./";
12
+ </script>
13
+
14
+ <script src="./js/jquery.js"></script>
15
+ <script src="./js/darkfish.js"></script>
16
+
17
+ <link href="./css/fonts.css" rel="stylesheet">
18
+ <link href="./css/rdoc.css" rel="stylesheet">
19
+
20
+
21
+
22
+ <body id="top" role="document" class="module">
23
+ <nav role="navigation">
24
+ <div id="project-navigation">
25
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
26
+ <h2>
27
+ <a href="./index.html" rel="home">Home</a>
28
+ </h2>
29
+
30
+ <div id="table-of-contents-navigation">
31
+ <a href="./table_of_contents.html#pages">Pages</a>
32
+ <a href="./table_of_contents.html#classes">Classes</a>
33
+ <a href="./table_of_contents.html#methods">Methods</a>
34
+ </div>
35
+ </div>
36
+
37
+ <div id="search-section" role="search" class="project-section initially-hidden">
38
+ <form action="#" method="get" accept-charset="utf-8">
39
+ <div id="search-field-wrapper">
40
+ <input id="search-field" role="combobox" aria-label="Search"
41
+ aria-autocomplete="list" aria-controls="search-results"
42
+ type="text" name="search" placeholder="Search" spellcheck="false"
43
+ title="Type to search, Up and Down to navigate, Enter to load">
44
+ </div>
45
+
46
+ <ul id="search-results" aria-label="Search Results"
47
+ aria-busy="false" aria-expanded="false"
48
+ aria-atomic="false" class="initially-hidden"></ul>
49
+ </form>
50
+ </div>
51
+
52
+ </div>
53
+
54
+
55
+
56
+ <div id="class-metadata">
57
+
58
+
59
+
60
+
61
+
62
+ </div>
63
+ </nav>
64
+
65
+ <main role="main" aria-labelledby="module-Cosmos">
66
+ <h1 id="module-Cosmos" class="module">
67
+ module Cosmos
68
+ </h1>
69
+
70
+ <section class="description">
71
+
72
+ <p>Encapsulates the conversion of an aggregate packet into a <a href="Cosmos/BaseNameMap.html"><code>BaseNameMap</code></a>, our internal representation of the fields in an aggregate packet</p>
73
+
74
+ <p>Internal respresentation of an aggregate packet</p>
75
+
76
+ </section>
77
+
78
+
79
+ <section id="5Buntitled-5D" class="documentation-section">
80
+
81
+
82
+
83
+
84
+
85
+
86
+
87
+
88
+
89
+ </section>
90
+ </main>
91
+
92
+
93
+ <footer id="validator-badges" role="contentinfo">
94
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
95
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.1.
96
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
97
+ </footer>
98
+
@@ -0,0 +1,152 @@
1
+ <!DOCTYPE html>
2
+
3
+ <html>
4
+ <head>
5
+ <meta charset="UTF-8">
6
+
7
+ <title>class Cosmos::AggregatePacketMapper - RDoc Documentation</title>
8
+
9
+ <script type="text/javascript">
10
+ var rdoc_rel_prefix = "../";
11
+ var index_rel_prefix = "../";
12
+ </script>
13
+
14
+ <script src="../js/jquery.js"></script>
15
+ <script src="../js/darkfish.js"></script>
16
+
17
+ <link href="../css/fonts.css" rel="stylesheet">
18
+ <link href="../css/rdoc.css" rel="stylesheet">
19
+
20
+
21
+
22
+ <body id="top" role="document" class="class">
23
+ <nav role="navigation">
24
+ <div id="project-navigation">
25
+ <div id="home-section" role="region" title="Quick navigation" class="nav-section">
26
+ <h2>
27
+ <a href="../index.html" rel="home">Home</a>
28
+ </h2>
29
+
30
+ <div id="table-of-contents-navigation">
31
+ <a href="../table_of_contents.html#pages">Pages</a>
32
+ <a href="../table_of_contents.html#classes">Classes</a>
33
+ <a href="../table_of_contents.html#methods">Methods</a>
34
+ </div>
35
+ </div>
36
+
37
+ <div id="search-section" role="search" class="project-section initially-hidden">
38
+ <form action="#" method="get" accept-charset="utf-8">
39
+ <div id="search-field-wrapper">
40
+ <input id="search-field" role="combobox" aria-label="Search"
41
+ aria-autocomplete="list" aria-controls="search-results"
42
+ type="text" name="search" placeholder="Search" spellcheck="false"
43
+ title="Type to search, Up and Down to navigate, Enter to load">
44
+ </div>
45
+
46
+ <ul id="search-results" aria-label="Search Results"
47
+ aria-busy="false" aria-expanded="false"
48
+ aria-atomic="false" class="initially-hidden"></ul>
49
+ </form>
50
+ </div>
51
+
52
+ </div>
53
+
54
+
55
+
56
+ <div id="class-metadata">
57
+
58
+ <div id="parent-class-section" class="nav-section">
59
+ <h3>Parent</h3>
60
+
61
+
62
+ <p class="link">Object
63
+
64
+ </div>
65
+
66
+
67
+
68
+ <!-- Method Quickref -->
69
+ <div id="method-list-section" class="nav-section">
70
+ <h3>Methods</h3>
71
+
72
+ <ul class="link-list" role="directory">
73
+
74
+ <li ><a href="#method-i-build_map">#build_map</a>
75
+
76
+ </ul>
77
+ </div>
78
+
79
+ </div>
80
+ </nav>
81
+
82
+ <main role="main" aria-labelledby="class-Cosmos::AggregatePacketMapper">
83
+ <h1 id="class-Cosmos::AggregatePacketMapper" class="class">
84
+ class Cosmos::AggregatePacketMapper
85
+ </h1>
86
+
87
+ <section class="description">
88
+
89
+ </section>
90
+
91
+
92
+ <section id="5Buntitled-5D" class="documentation-section">
93
+
94
+
95
+
96
+
97
+
98
+
99
+
100
+
101
+
102
+ <section id="public-instance-5Buntitled-5D-method-details" class="method-section">
103
+ <header>
104
+ <h3>Public Instance Methods</h3>
105
+ </header>
106
+
107
+
108
+ <div id="method-i-build_map" class="method-detail ">
109
+
110
+ <div class="method-heading">
111
+ <span class="method-name">build_map</span><span
112
+ class="method-args">(packet)</span>
113
+
114
+ <span class="method-click-advice">click to toggle source</span>
115
+
116
+ </div>
117
+
118
+
119
+ <div class="method-description">
120
+
121
+ <p>Builds a <a href="BaseNameMap.html"><code>BaseNameMap</code></a> from a cosmos aggregate packet</p>
122
+
123
+
124
+
125
+
126
+ <div class="method-source-code" id="build_map-source">
127
+ <pre><span class="ruby-comment"># File lib/cosmos/unpacking_interface/aggregate_packet_mapper.rb, line 10</span>
128
+ <span class="ruby-keyword">def</span> <span class="ruby-identifier ruby-title">build_map</span>(<span class="ruby-identifier">packet</span>)
129
+ <span class="ruby-constant">BaseNameMap</span>.<span class="ruby-identifier">new</span>({}, <span class="ruby-identifier">packet</span>.<span class="ruby-identifier">packet_name</span>)
130
+ <span class="ruby-keyword">end</span></pre>
131
+ </div>
132
+
133
+ </div>
134
+
135
+
136
+
137
+
138
+ </div>
139
+
140
+
141
+ </section>
142
+
143
+ </section>
144
+ </main>
145
+
146
+
147
+ <footer id="validator-badges" role="contentinfo">
148
+ <p><a href="https://validator.w3.org/check/referer">Validate</a>
149
+ <p>Generated by <a href="https://ruby.github.io/rdoc/">RDoc</a> 6.1.1.
150
+ <p>Based on <a href="http://deveiate.org/projects/Darkfish-RDoc/">Darkfish</a> by <a href="http://deveiate.org">Michael Granger</a>.
151
+ </footer>
152
+