argos-ruby 1.2.5 → 1.2.6
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.
- checksums.yaml +4 -4
- data/Gemfile.lock +72 -0
- data/argos-ruby-1.2.5.gem +0 -0
- data/argos-ruby.gemspec +2 -1
- data/doc/Argos.html +227 -0
- data/doc/Argos/Ascii.html +906 -0
- data/doc/Argos/Command.html +299 -0
- data/doc/Argos/Diag.html +2141 -0
- data/doc/Argos/Download.html +383 -0
- data/doc/Argos/Ds.html +2604 -0
- data/doc/Argos/Exception.html +127 -0
- data/doc/Argos/NodataException.html +139 -0
- data/doc/Argos/Soap.html +2960 -0
- data/doc/Argos/SoapCommand.html +1037 -0
- data/doc/Argos/SoapException.html +135 -0
- data/doc/Argos/SoapFault.html +139 -0
- data/doc/_index.html +227 -0
- data/doc/class_list.html +58 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +57 -0
- data/doc/css/style.css +339 -0
- data/doc/file.README.html +129 -0
- data/doc/file_list.html +60 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +129 -0
- data/doc/js/app.js +219 -0
- data/doc/js/full_list.js +181 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +669 -0
- data/doc/top-level-namespace.html +112 -0
- data/lib/argos/soap.rb +20 -3
- data/lib/argos/version.rb +1 -1
- metadata +30 -2
@@ -0,0 +1,383 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>
|
7
|
+
Class: Argos::Download
|
8
|
+
|
9
|
+
— Documentation by YARD 0.8.7.6
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
19
|
+
relpath = '../';
|
20
|
+
framesUrl = "../frames.html#!Argos/Download.html";
|
21
|
+
</script>
|
22
|
+
|
23
|
+
|
24
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
25
|
+
|
26
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
27
|
+
|
28
|
+
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div id="header">
|
32
|
+
<div id="menu">
|
33
|
+
|
34
|
+
<a href="../_index.html">Index (D)</a> »
|
35
|
+
<span class='title'><span class='object_link'><a href="../Argos.html" title="Argos (module)">Argos</a></span></span>
|
36
|
+
»
|
37
|
+
<span class="title">Download</span>
|
38
|
+
|
39
|
+
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div id="search">
|
44
|
+
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
46
|
+
href="../class_list.html">
|
47
|
+
Class List
|
48
|
+
</a>
|
49
|
+
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
51
|
+
href="../method_list.html">
|
52
|
+
Method List
|
53
|
+
</a>
|
54
|
+
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
56
|
+
href="../file_list.html">
|
57
|
+
File List
|
58
|
+
</a>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
<div class="clear"></div>
|
62
|
+
</div>
|
63
|
+
|
64
|
+
<iframe id="search_frame"></iframe>
|
65
|
+
|
66
|
+
<div id="content"><h1>Class: Argos::Download
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
</h1>
|
71
|
+
|
72
|
+
<dl class="box">
|
73
|
+
|
74
|
+
<dt class="r1">Inherits:</dt>
|
75
|
+
<dd class="r1">
|
76
|
+
<span class="inheritName">Object</span>
|
77
|
+
|
78
|
+
<ul class="fullTree">
|
79
|
+
<li>Object</li>
|
80
|
+
|
81
|
+
<li class="next">Argos::Download</li>
|
82
|
+
|
83
|
+
</ul>
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
85
|
+
|
86
|
+
</dd>
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
<dt class="r2 last">Defined in:</dt>
|
97
|
+
<dd class="r2 last">lib/argos/download.rb</dd>
|
98
|
+
|
99
|
+
</dl>
|
100
|
+
<div class="clear"></div>
|
101
|
+
|
102
|
+
|
103
|
+
|
104
|
+
|
105
|
+
|
106
|
+
|
107
|
+
|
108
|
+
|
109
|
+
|
110
|
+
<h2>
|
111
|
+
Class Method Summary
|
112
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
113
|
+
</h2>
|
114
|
+
|
115
|
+
<ul class="summary">
|
116
|
+
|
117
|
+
<li class="public ">
|
118
|
+
<span class="summary_signature">
|
119
|
+
|
120
|
+
<a href="#download-class_method" title="download (class method)">+ (Object) <strong>download</strong>(username, password, archive, log, days = 20) </a>
|
121
|
+
|
122
|
+
|
123
|
+
|
124
|
+
</span>
|
125
|
+
|
126
|
+
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
|
133
|
+
|
134
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
135
|
+
|
136
|
+
</li>
|
137
|
+
|
138
|
+
|
139
|
+
</ul>
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
<div id="class_method_details" class="method_details_list">
|
145
|
+
<h2>Class Method Details</h2>
|
146
|
+
|
147
|
+
|
148
|
+
<div class="method_details first">
|
149
|
+
<h3 class="signature first" id="download-class_method">
|
150
|
+
|
151
|
+
+ (<tt>Object</tt>) <strong>download</strong>(username, password, archive, log, days = 20)
|
152
|
+
|
153
|
+
|
154
|
+
|
155
|
+
|
156
|
+
|
157
|
+
</h3><table class="source_code">
|
158
|
+
<tr>
|
159
|
+
<td>
|
160
|
+
<pre class="lines">
|
161
|
+
|
162
|
+
|
163
|
+
23
|
164
|
+
24
|
165
|
+
25
|
166
|
+
26
|
167
|
+
27
|
168
|
+
28
|
169
|
+
29
|
170
|
+
30
|
171
|
+
31
|
172
|
+
32
|
173
|
+
33
|
174
|
+
34
|
175
|
+
35
|
176
|
+
36
|
177
|
+
37
|
178
|
+
38
|
179
|
+
39
|
180
|
+
40
|
181
|
+
41
|
182
|
+
42
|
183
|
+
43
|
184
|
+
44
|
185
|
+
45
|
186
|
+
46
|
187
|
+
47
|
188
|
+
48
|
189
|
+
49
|
190
|
+
50
|
191
|
+
51
|
192
|
+
52
|
193
|
+
53
|
194
|
+
54
|
195
|
+
55
|
196
|
+
56
|
197
|
+
57
|
198
|
+
58
|
199
|
+
59
|
200
|
+
60
|
201
|
+
61
|
202
|
+
62
|
203
|
+
63
|
204
|
+
64
|
205
|
+
65
|
206
|
+
66
|
207
|
+
67
|
208
|
+
68
|
209
|
+
69
|
210
|
+
70
|
211
|
+
71
|
212
|
+
72
|
213
|
+
73
|
214
|
+
74
|
215
|
+
75
|
216
|
+
76
|
217
|
+
77
|
218
|
+
78
|
219
|
+
79
|
220
|
+
80
|
221
|
+
81
|
222
|
+
82
|
223
|
+
83
|
224
|
+
84
|
225
|
+
85
|
226
|
+
86
|
227
|
+
87
|
228
|
+
88
|
229
|
+
89
|
230
|
+
90
|
231
|
+
91
|
232
|
+
92
|
233
|
+
93
|
234
|
+
94
|
235
|
+
95
|
236
|
+
96
|
237
|
+
97
|
238
|
+
98
|
239
|
+
99
|
240
|
+
100
|
241
|
+
101
|
242
|
+
102
|
243
|
+
103
|
244
|
+
104
|
245
|
+
105
|
246
|
+
106
|
247
|
+
107
|
248
|
+
108
|
249
|
+
109
|
250
|
+
110
|
251
|
+
111
|
252
|
+
112
|
253
|
+
113
|
254
|
+
114
|
255
|
+
115
|
256
|
+
116
|
257
|
+
117
|
258
|
+
118
|
259
|
+
119
|
260
|
+
120
|
261
|
+
121
|
262
|
+
122</pre>
|
263
|
+
</td>
|
264
|
+
<td>
|
265
|
+
<pre class="code"><span class="info file"># File 'lib/argos/download.rb', line 23</span>
|
266
|
+
|
267
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_download'>download</span><span class='lparen'>(</span><span class='id identifier rubyid_username'>username</span><span class='comma'>,</span> <span class='id identifier rubyid_password'>password</span><span class='comma'>,</span> <span class='id identifier rubyid_archive'>archive</span><span class='comma'>,</span> <span class='id identifier rubyid_log'>log</span><span class='comma'>,</span> <span class='id identifier rubyid_days'>days</span><span class='op'>=</span><span class='int'>20</span><span class='rparen'>)</span>
|
268
|
+
|
269
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Starting download of Argos XML to </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_archive'>archive</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
270
|
+
|
271
|
+
<span class='id identifier rubyid_soap'>soap</span> <span class='op'>=</span> <span class='const'>Argos</span><span class='op'>::</span><span class='const'>Soap</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='label'>username:</span> <span class='id identifier rubyid_username'>username</span><span class='comma'>,</span> <span class='label'>password:</span> <span class='id identifier rubyid_password'>password</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
272
|
+
<span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_log'>log</span> <span class='op'>=</span> <span class='id identifier rubyid_log'>log</span>
|
273
|
+
|
274
|
+
<span class='id identifier rubyid_programs'>programs</span> <span class='op'>=</span> <span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_programs'>programs</span>
|
275
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Programs for </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_username'>username</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_programs'>programs</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
276
|
+
<span class='id identifier rubyid_year'>year</span> <span class='op'>=</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_now'>now</span><span class='period'>.</span><span class='id identifier rubyid_year'>year</span>
|
277
|
+
|
278
|
+
<span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_getPlatformList'>getPlatformList</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>data</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>program</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_program'>program</span><span class='op'>|</span>
|
279
|
+
<span class='id identifier rubyid_programNumber'>programNumber</span> <span class='op'>=</span> <span class='id identifier rubyid_program'>program</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>programNumber</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span>
|
280
|
+
<span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_programNumber'>programNumber</span> <span class='op'>=</span> <span class='id identifier rubyid_programNumber'>programNumber</span>
|
281
|
+
|
282
|
+
<span class='id identifier rubyid_platforms'>platforms</span> <span class='op'>=</span> <span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_platforms'>platforms</span>
|
283
|
+
|
284
|
+
<span class='comment'># inactive (no last collect)
|
285
|
+
</span> <span class='id identifier rubyid_inactive'>inactive</span> <span class='op'>=</span> <span class='id identifier rubyid_program'>program</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>platform</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span>
|
286
|
+
|
287
|
+
<span class='id identifier rubyid_active'>active</span> <span class='op'>=</span> <span class='id identifier rubyid_program'>program</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>platform</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_select'>select</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_platform'>platform</span><span class='op'>|</span>
|
288
|
+
<span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>lastCollectDate</span><span class='tstring_end'>"</span></span> <span class='kw'>and</span> <span class='id identifier rubyid_platform'>platform</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>lastLocationDate</span><span class='tstring_end'>"</span></span><span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_select'>select</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_platform'>platform</span><span class='op'>|</span>
|
289
|
+
|
290
|
+
<span class='id identifier rubyid_lastCollectDate'>lastCollectDate</span> <span class='op'>=</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_platform'>platform</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>lastCollectDate</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
291
|
+
<span class='id identifier rubyid_lastLocationDate'>lastLocationDate</span> <span class='op'>=</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_platform'>platform</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>lastLocationDate</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
292
|
+
|
293
|
+
<span class='id identifier rubyid_twentydays'>twentydays</span> <span class='op'>=</span> <span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='lparen'>(</span><span class='const'>Date</span><span class='period'>.</span><span class='id identifier rubyid_today'>today</span><span class='op'>-</span><span class='int'>20</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span><span class='rparen'>)</span>
|
294
|
+
|
295
|
+
<span class='lparen'>(</span><span class='id identifier rubyid_lastCollectDate'>lastCollectDate</span> <span class='op'>></span> <span class='id identifier rubyid_twentydays'>twentydays</span> <span class='kw'>or</span> <span class='id identifier rubyid_lastLocationDate'>lastLocationDate</span> <span class='op'>></span> <span class='id identifier rubyid_twentydays'>twentydays</span><span class='rparen'>)</span>
|
296
|
+
|
297
|
+
<span class='rbrace'>}</span>
|
298
|
+
<span class='comment'># inactive = platforms where last collect date is missing or > 20 days
|
299
|
+
</span> <span class='id identifier rubyid_inactive'>inactive</span> <span class='op'>=</span> <span class='id identifier rubyid_program'>program</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>platform</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span> <span class='op'>-</span> <span class='id identifier rubyid_active'>active</span>
|
300
|
+
|
301
|
+
<span class='id identifier rubyid_active'>active</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_a'>a</span><span class='comma'>,</span><span class='id identifier rubyid_m'>m</span><span class='op'>|</span>
|
302
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Active [</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_m'>m</span><span class='op'>+</span><span class='int'>1</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_active'>active</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>]: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_a'>a</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_k'>k</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>location</span><span class='regexp_end'>/i</span></span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
303
|
+
<span class='kw'>end</span>
|
304
|
+
<span class='id identifier rubyid_inactive'>inactive</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_i'>i</span><span class='comma'>,</span><span class='id identifier rubyid_n'>n</span><span class='op'>|</span>
|
305
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Inactive [</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_n'>n</span><span class='op'>+</span><span class='int'>1</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_inactive'>inactive</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>]: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_i'>i</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span><span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_k'>k</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>location</span><span class='regexp_end'>/i</span></span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
306
|
+
<span class='kw'>end</span>
|
307
|
+
<span class='id identifier rubyid_active'>active</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span> <span class='id identifier rubyid_platform'>platform</span><span class='comma'>,</span> <span class='id identifier rubyid_idx'>idx</span> <span class='op'>|</span>
|
308
|
+
|
309
|
+
|
310
|
+
<span class='id identifier rubyid_platformId'>platformId</span> <span class='op'>=</span> <span class='id identifier rubyid_platform'>platform</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>platformId</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span>
|
311
|
+
<span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_platformId'>platformId</span> <span class='op'>=</span> <span class='id identifier rubyid_platformId'>platformId</span>
|
312
|
+
|
313
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>About to download program: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_programNumber'>programNumber</span><span class='embexpr_end'>}</span><span class='tstring_content'>, platform: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platformId'>platformId</span><span class='embexpr_end'>}</span><span class='tstring_content'> [</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_idx'>idx</span><span class='op'>+</span><span class='int'>1</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_active'>active</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'>], lastCollectDate: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platform'>platform</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>lastCollectDate</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
314
|
+
|
315
|
+
<span class='int'>20</span><span class='period'>.</span><span class='id identifier rubyid_downto'>downto</span><span class='lparen'>(</span><span class='int'>1</span><span class='rparen'>)</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_daysago'>daysago</span><span class='op'>|</span>
|
316
|
+
|
317
|
+
<span class='id identifier rubyid_date'>date</span> <span class='op'>=</span> <span class='const'>Date</span><span class='period'>.</span><span class='id identifier rubyid_today'>today</span><span class='op'>-</span><span class='id identifier rubyid_daysago'>daysago</span>
|
318
|
+
|
319
|
+
<span class='id identifier rubyid_destination'>destination</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_archive'>archive</span><span class='embexpr_end'>}</span><span class='tstring_content'>/</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_year'>year</span><span class='embexpr_end'>}</span><span class='tstring_content'>/program-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_programNumber'>programNumber</span><span class='embexpr_end'>}</span><span class='tstring_content'>/platform-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platformId'>platformId</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
320
|
+
|
321
|
+
<span class='kw'>begin</span>
|
322
|
+
<span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_period'>period</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='label'>startDate:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_date'>date</span><span class='embexpr_end'>}</span><span class='tstring_content'>T00:00:00Z</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='label'>endDate:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_date'>date</span><span class='embexpr_end'>}</span><span class='tstring_content'>T23:59:59.999Z</span><span class='tstring_end'>"</span></span><span class='rbrace'>}</span>
|
323
|
+
<span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_getXml'>getXml</span>
|
324
|
+
|
325
|
+
<span class='const'>FileUtils</span><span class='period'>.</span><span class='id identifier rubyid_mkdir_p'>mkdir_p</span><span class='lparen'>(</span><span class='id identifier rubyid_destination'>destination</span><span class='rparen'>)</span>
|
326
|
+
<span class='id identifier rubyid_filename'>filename</span> <span class='op'>=</span> <span class='id identifier rubyid_destination'>destination</span><span class='op'>+</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>/argos-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_date'>date</span><span class='embexpr_end'>}</span><span class='tstring_content'>-platform-</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platformId'>platformId</span><span class='embexpr_end'>}</span><span class='tstring_content'>.xml</span><span class='tstring_end'>"</span></span>
|
327
|
+
|
328
|
+
<span class='kw'>if</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_exists?'>exists?</span> <span class='id identifier rubyid_filename'>filename</span>
|
329
|
+
<span class='id identifier rubyid_existing_sha1'>existing_sha1</span> <span class='op'>=</span> <span class='const'>Digest</span><span class='op'>::</span><span class='const'>SHA1</span><span class='period'>.</span><span class='id identifier rubyid_file'>file</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hexdigest'>hexdigest</span>
|
330
|
+
<span class='id identifier rubyid_existing_errors'>existing_errors</span> <span class='op'>=</span> <span class='const'>Argos</span><span class='op'>::</span><span class='const'>Soap</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_validate'>validate</span><span class='lparen'>(</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_read'>read</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
331
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_existing_errors'>existing_errors</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
332
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Validation error for existing data </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_content'> (</span><span class='embexpr_beg'>#{</span><span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span><span class='embexpr_end'>}</span><span class='tstring_content'> bytes): </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_existing_errors'>existing_errors</span><span class='period'>.</span><span class='id identifier rubyid_uniq'>uniq</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
333
|
+
<span class='kw'>end</span>
|
334
|
+
<span class='comment'>#log.debug "Keeping existing file #{filename} from #{File.mtime(filename)}, fresh data is identical"
|
335
|
+
</span> <span class='kw'>end</span>
|
336
|
+
|
337
|
+
<span class='id identifier rubyid_new_xml_ng'>new_xml_ng</span> <span class='op'>=</span> <span class='const'>Nokogiri</span><span class='op'>::</span><span class='const'>XML</span><span class='lparen'>(</span><span class='id identifier rubyid_soap'>soap</span><span class='period'>.</span><span class='id identifier rubyid_xml'>xml</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='kw'>nil</span><span class='comma'>,</span> <span class='const'>Nokogiri</span><span class='op'>::</span><span class='const'>XML</span><span class='op'>::</span><span class='const'>ParseOptions</span><span class='op'>::</span><span class='const'>NOBLANKS</span> <span class='op'>|</span> <span class='const'>Nokogiri</span><span class='op'>::</span><span class='const'>XML</span><span class='op'>::</span><span class='const'>ParseOptions</span><span class='op'>::</span><span class='const'>NOCDATA</span> <span class='op'>|</span> <span class='const'>Nokogiri</span><span class='op'>::</span><span class='const'>XML</span><span class='op'>::</span><span class='const'>ParseOptions</span><span class='op'>::</span><span class='const'>STRICT</span><span class='rparen'>)</span>
|
338
|
+
<span class='id identifier rubyid_new_xml'>new_xml</span> <span class='op'>=</span> <span class='id identifier rubyid_new_xml_ng'>new_xml_ng</span><span class='period'>.</span><span class='id identifier rubyid_canonicalize'>canonicalize</span>
|
339
|
+
<span class='id identifier rubyid_new_sha1'>new_sha1</span> <span class='op'>=</span> <span class='const'>Digest</span><span class='op'>::</span><span class='const'>SHA1</span><span class='period'>.</span><span class='id identifier rubyid_hexdigest'>hexdigest</span><span class='lparen'>(</span><span class='id identifier rubyid_new_xml'>new_xml</span><span class='rparen'>)</span>
|
340
|
+
|
341
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_existing_sha1'>existing_sha1</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>or</span> <span class='id identifier rubyid_existing_errors'>existing_errors</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span> <span class='kw'>or</span> <span class='id identifier rubyid_existing_sha1'>existing_sha1</span> <span class='op'>!=</span> <span class='id identifier rubyid_new_sha1'>new_sha1</span>
|
342
|
+
|
343
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_errors'>errors</span> <span class='op'>=</span> <span class='const'>Argos</span><span class='op'>::</span><span class='const'>Soap</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='period'>.</span><span class='id identifier rubyid_validate'>validate</span><span class='lparen'>(</span><span class='id identifier rubyid_new_xml_ng'>new_xml_ng</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
344
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Failed XML schema validation</span><span class='tstring_end'>"</span></span>
|
345
|
+
<span class='kw'>else</span>
|
346
|
+
<span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>wb</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_file'>file</span><span class='op'>|</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_write'>write</span><span class='lparen'>(</span><span class='id identifier rubyid_new_xml'>new_xml</span><span class='rparen'>)</span><span class='rbrace'>}</span>
|
347
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Validated and saved new data: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
348
|
+
<span class='kw'>end</span>
|
349
|
+
|
350
|
+
<span class='kw'>end</span>
|
351
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Day -</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_daysago'>daysago</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_date'>date</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_new_xml_ng'>new_xml_ng</span><span class='period'>.</span><span class='id identifier rubyid_xpath'>xpath</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>//message</span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> message(s) (program </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_programNumber'>programNumber</span><span class='embexpr_end'>}</span><span class='tstring_content'>, platform </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platformId'>platformId</span><span class='embexpr_end'>}</span><span class='tstring_content'>)</span><span class='tstring_end'>"</span></span>
|
352
|
+
<span class='kw'>rescue</span> <span class='const'>Argos</span><span class='op'>::</span><span class='const'>NodataException</span>
|
353
|
+
<span class='comment'># noop
|
354
|
+
</span> <span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Day -</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_daysago'>daysago</span><span class='embexpr_end'>}</span><span class='tstring_content'>: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_date'>date</span><span class='embexpr_end'>}</span><span class='tstring_content'>: No data for (program </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_programNumber'>programNumber</span><span class='embexpr_end'>}</span><span class='tstring_content'>, platform </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platformId'>platformId</span><span class='embexpr_end'>}</span><span class='tstring_content'>)</span><span class='tstring_end'>"</span></span>
|
355
|
+
<span class='kw'>rescue</span> <span class='op'>=></span> <span class='id identifier rubyid_e'>e</span>
|
356
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_error'>error</span> <span class='id identifier rubyid_e'>e</span>
|
357
|
+
<span class='kw'>end</span>
|
358
|
+
|
359
|
+
<span class='kw'>end</span>
|
360
|
+
|
361
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Completed download of </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_platformId'>platformId</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
362
|
+
|
363
|
+
<span class='kw'>end</span>
|
364
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Completed download for </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_username'>username</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
365
|
+
<span class='kw'>end</span>
|
366
|
+
<span class='kw'>end</span></pre>
|
367
|
+
</td>
|
368
|
+
</tr>
|
369
|
+
</table>
|
370
|
+
</div>
|
371
|
+
|
372
|
+
</div>
|
373
|
+
|
374
|
+
</div>
|
375
|
+
|
376
|
+
<div id="footer">
|
377
|
+
Generated on Wed Nov 26 17:02:39 2014 by
|
378
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
379
|
+
0.8.7.6 (ruby-2.1.1).
|
380
|
+
</div>
|
381
|
+
|
382
|
+
</body>
|
383
|
+
</html>
|
data/doc/Argos/Ds.html
ADDED
@@ -0,0 +1,2604 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>
|
7
|
+
Class: Argos::Ds
|
8
|
+
|
9
|
+
— Documentation by YARD 0.8.7.6
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
19
|
+
relpath = '../';
|
20
|
+
framesUrl = "../frames.html#!Argos/Ds.html";
|
21
|
+
</script>
|
22
|
+
|
23
|
+
|
24
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
25
|
+
|
26
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
27
|
+
|
28
|
+
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div id="header">
|
32
|
+
<div id="menu">
|
33
|
+
|
34
|
+
<a href="../_index.html">Index (D)</a> »
|
35
|
+
<span class='title'><span class='object_link'><a href="../Argos.html" title="Argos (module)">Argos</a></span></span>
|
36
|
+
»
|
37
|
+
<span class="title">Ds</span>
|
38
|
+
|
39
|
+
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div id="search">
|
44
|
+
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
46
|
+
href="../class_list.html">
|
47
|
+
Class List
|
48
|
+
</a>
|
49
|
+
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
51
|
+
href="../method_list.html">
|
52
|
+
Method List
|
53
|
+
</a>
|
54
|
+
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
56
|
+
href="../file_list.html">
|
57
|
+
File List
|
58
|
+
</a>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
<div class="clear"></div>
|
62
|
+
</div>
|
63
|
+
|
64
|
+
<iframe id="search_frame"></iframe>
|
65
|
+
|
66
|
+
<div id="content"><h1>Class: Argos::Ds
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
</h1>
|
71
|
+
|
72
|
+
<dl class="box">
|
73
|
+
|
74
|
+
<dt class="r1">Inherits:</dt>
|
75
|
+
<dd class="r1">
|
76
|
+
<span class="inheritName">Array</span>
|
77
|
+
|
78
|
+
<ul class="fullTree">
|
79
|
+
<li>Object</li>
|
80
|
+
|
81
|
+
<li class="next">Array</li>
|
82
|
+
|
83
|
+
<li class="next">Argos::Ds</li>
|
84
|
+
|
85
|
+
</ul>
|
86
|
+
<a href="#" class="inheritanceTree">show all</a>
|
87
|
+
|
88
|
+
</dd>
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
<dt class="r2">Includes:</dt>
|
96
|
+
<dd class="r2"><span class='object_link'><a href="Ascii.html" title="Argos::Ascii (module)">Ascii</a></span></dd>
|
97
|
+
|
98
|
+
|
99
|
+
|
100
|
+
|
101
|
+
|
102
|
+
<dt class="r1 last">Defined in:</dt>
|
103
|
+
<dd class="r1 last">lib/argos/ds.rb</dd>
|
104
|
+
|
105
|
+
</dl>
|
106
|
+
<div class="clear"></div>
|
107
|
+
|
108
|
+
<h2>Overview</h2><div class="docstring">
|
109
|
+
<div class="discussion">
|
110
|
+
|
111
|
+
<p>Argos DS|DAT file parser</p>
|
112
|
+
|
113
|
+
<p>Usage</p>
|
114
|
+
|
115
|
+
<pre class="code ruby"><code class="ruby"><span class='id identifier rubyid_ds'>ds</span> <span class='op'>=</span> <span class='const'>Argos</span><span class='op'>::</span><span class='const'>Ds</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span>
|
116
|
+
<span class='id identifier rubyid_puts'>puts</span> <span class='id identifier rubyid_ds'>ds</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span></code></pre>
|
117
|
+
|
118
|
+
|
119
|
+
</div>
|
120
|
+
</div>
|
121
|
+
<div class="tags">
|
122
|
+
|
123
|
+
<p class="tag_title">Author:</p>
|
124
|
+
<ul class="author">
|
125
|
+
|
126
|
+
<li>
|
127
|
+
|
128
|
+
|
129
|
+
|
130
|
+
|
131
|
+
|
132
|
+
<div class='inline'>
|
133
|
+
<p>Espen Egeland</p>
|
134
|
+
</div>
|
135
|
+
|
136
|
+
</li>
|
137
|
+
|
138
|
+
<li>
|
139
|
+
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
<div class='inline'>
|
145
|
+
<p>Conrad Helgeland</p>
|
146
|
+
</div>
|
147
|
+
|
148
|
+
</li>
|
149
|
+
|
150
|
+
</ul>
|
151
|
+
|
152
|
+
</div>
|
153
|
+
<h2>Constant Summary</h2>
|
154
|
+
|
155
|
+
<dl class="constants">
|
156
|
+
|
157
|
+
<dt id="START_REGEX-constant" class="">START_REGEX =
|
158
|
+
|
159
|
+
</dt>
|
160
|
+
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>^\d{5} \d{5,6} +\d+ +\d+</span><span class='regexp_end'>/</span></span></pre></dd>
|
161
|
+
|
162
|
+
<dt id="START_REGEX_LEGACY-constant" class="">START_REGEX_LEGACY =
|
163
|
+
|
164
|
+
</dt>
|
165
|
+
<dd><pre class="code"><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\s+\d\.\d{3}\s\d{9}\s+\w{4}$</span><span class='regexp_end'>/</span></span></pre></dd>
|
166
|
+
|
167
|
+
<dt id="LOCATION_CLASS-constant" class="">LOCATION_CLASS =
|
168
|
+
|
169
|
+
</dt>
|
170
|
+
<dd><pre class="code"><span class='lbracket'>[</span><span class='kw'>nil</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>0</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>1</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>2</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>3</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>A</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>B</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>G</span><span class='tstring_end'>"</span></span><span class='comma'>,</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Z</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span></pre></dd>
|
171
|
+
|
172
|
+
</dl>
|
173
|
+
|
174
|
+
|
175
|
+
|
176
|
+
|
177
|
+
|
178
|
+
<h2>Instance Attribute Summary <small>(<a href="#" class="summary_toggle">collapse</a>)</small></h2>
|
179
|
+
<ul class="summary">
|
180
|
+
|
181
|
+
<li class="public ">
|
182
|
+
<span class="summary_signature">
|
183
|
+
|
184
|
+
<a href="#bundle-instance_method" title="#bundle (instance method)">- (Object) <strong>bundle</strong> </a>
|
185
|
+
|
186
|
+
|
187
|
+
|
188
|
+
</span>
|
189
|
+
|
190
|
+
|
191
|
+
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
<span class="summary_desc"><div class='inline'>
|
202
|
+
<p>Returns the value of attribute bundle.</p>
|
203
|
+
</div></span>
|
204
|
+
|
205
|
+
</li>
|
206
|
+
|
207
|
+
|
208
|
+
<li class="public ">
|
209
|
+
<span class="summary_signature">
|
210
|
+
|
211
|
+
<a href="#errors-instance_method" title="#errors (instance method)">- (Object) <strong>errors</strong> </a>
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
</span>
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
<span class="note title readonly">readonly</span>
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
|
225
|
+
|
226
|
+
|
227
|
+
|
228
|
+
|
229
|
+
|
230
|
+
<span class="summary_desc"><div class='inline'>
|
231
|
+
<p>Returns the value of attribute errors.</p>
|
232
|
+
</div></span>
|
233
|
+
|
234
|
+
</li>
|
235
|
+
|
236
|
+
|
237
|
+
<li class="public ">
|
238
|
+
<span class="summary_signature">
|
239
|
+
|
240
|
+
<a href="#filename-instance_method" title="#filename (instance method)">- (Object) <strong>filename</strong> </a>
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
</span>
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
|
250
|
+
|
251
|
+
|
252
|
+
|
253
|
+
|
254
|
+
|
255
|
+
|
256
|
+
|
257
|
+
<span class="summary_desc"><div class='inline'>
|
258
|
+
<p>Returns the value of attribute filename.</p>
|
259
|
+
</div></span>
|
260
|
+
|
261
|
+
</li>
|
262
|
+
|
263
|
+
|
264
|
+
<li class="public ">
|
265
|
+
<span class="summary_signature">
|
266
|
+
|
267
|
+
<a href="#filesize-instance_method" title="#filesize (instance method)">- (Object) <strong>filesize</strong> </a>
|
268
|
+
|
269
|
+
|
270
|
+
|
271
|
+
</span>
|
272
|
+
|
273
|
+
|
274
|
+
|
275
|
+
|
276
|
+
<span class="note title readonly">readonly</span>
|
277
|
+
|
278
|
+
|
279
|
+
|
280
|
+
|
281
|
+
|
282
|
+
|
283
|
+
|
284
|
+
|
285
|
+
|
286
|
+
<span class="summary_desc"><div class='inline'>
|
287
|
+
<p>Returns the value of attribute filesize.</p>
|
288
|
+
</div></span>
|
289
|
+
|
290
|
+
</li>
|
291
|
+
|
292
|
+
|
293
|
+
<li class="public ">
|
294
|
+
<span class="summary_signature">
|
295
|
+
|
296
|
+
<a href="#filter-instance_method" title="#filter (instance method)">- (Object) <strong>filter</strong> </a>
|
297
|
+
|
298
|
+
|
299
|
+
|
300
|
+
</span>
|
301
|
+
|
302
|
+
|
303
|
+
|
304
|
+
|
305
|
+
|
306
|
+
|
307
|
+
|
308
|
+
|
309
|
+
|
310
|
+
|
311
|
+
|
312
|
+
|
313
|
+
<span class="summary_desc"><div class='inline'>
|
314
|
+
<p>Returns the value of attribute filter.</p>
|
315
|
+
</div></span>
|
316
|
+
|
317
|
+
</li>
|
318
|
+
|
319
|
+
|
320
|
+
<li class="public ">
|
321
|
+
<span class="summary_signature">
|
322
|
+
|
323
|
+
<a href="#filtername-instance_method" title="#filtername (instance method)">- (Object) <strong>filtername</strong> </a>
|
324
|
+
|
325
|
+
|
326
|
+
|
327
|
+
</span>
|
328
|
+
|
329
|
+
|
330
|
+
|
331
|
+
|
332
|
+
<span class="note title readonly">readonly</span>
|
333
|
+
|
334
|
+
|
335
|
+
|
336
|
+
|
337
|
+
|
338
|
+
|
339
|
+
|
340
|
+
|
341
|
+
|
342
|
+
<span class="summary_desc"><div class='inline'>
|
343
|
+
<p>Returns the value of attribute filtername.</p>
|
344
|
+
</div></span>
|
345
|
+
|
346
|
+
</li>
|
347
|
+
|
348
|
+
|
349
|
+
<li class="public ">
|
350
|
+
<span class="summary_signature">
|
351
|
+
|
352
|
+
<a href="#log-instance_method" title="#log (instance method)">- (Object) <strong>log</strong> </a>
|
353
|
+
|
354
|
+
|
355
|
+
|
356
|
+
</span>
|
357
|
+
|
358
|
+
|
359
|
+
|
360
|
+
|
361
|
+
|
362
|
+
|
363
|
+
|
364
|
+
|
365
|
+
|
366
|
+
|
367
|
+
|
368
|
+
|
369
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
370
|
+
|
371
|
+
</li>
|
372
|
+
|
373
|
+
|
374
|
+
<li class="public ">
|
375
|
+
<span class="summary_signature">
|
376
|
+
|
377
|
+
<a href="#messages-instance_method" title="#messages (instance method)">- (Object) <strong>messages</strong> </a>
|
378
|
+
|
379
|
+
|
380
|
+
|
381
|
+
</span>
|
382
|
+
|
383
|
+
|
384
|
+
|
385
|
+
|
386
|
+
<span class="note title readonly">readonly</span>
|
387
|
+
|
388
|
+
|
389
|
+
|
390
|
+
|
391
|
+
|
392
|
+
|
393
|
+
|
394
|
+
|
395
|
+
|
396
|
+
<span class="summary_desc"><div class='inline'>
|
397
|
+
<p>Returns the value of attribute messages.</p>
|
398
|
+
</div></span>
|
399
|
+
|
400
|
+
</li>
|
401
|
+
|
402
|
+
|
403
|
+
<li class="public ">
|
404
|
+
<span class="summary_signature">
|
405
|
+
|
406
|
+
<a href="#multiplicates-instance_method" title="#multiplicates (instance method)">- (Object) <strong>multiplicates</strong> </a>
|
407
|
+
|
408
|
+
|
409
|
+
|
410
|
+
</span>
|
411
|
+
|
412
|
+
|
413
|
+
|
414
|
+
|
415
|
+
<span class="note title readonly">readonly</span>
|
416
|
+
|
417
|
+
|
418
|
+
|
419
|
+
|
420
|
+
|
421
|
+
|
422
|
+
|
423
|
+
|
424
|
+
|
425
|
+
<span class="summary_desc"><div class='inline'>
|
426
|
+
<p>Returns the value of attribute multiplicates.</p>
|
427
|
+
</div></span>
|
428
|
+
|
429
|
+
</li>
|
430
|
+
|
431
|
+
|
432
|
+
<li class="public ">
|
433
|
+
<span class="summary_signature">
|
434
|
+
|
435
|
+
<a href="#sha1-instance_method" title="#sha1 (instance method)">- (Object) <strong>sha1</strong> </a>
|
436
|
+
|
437
|
+
|
438
|
+
|
439
|
+
</span>
|
440
|
+
|
441
|
+
|
442
|
+
|
443
|
+
|
444
|
+
<span class="note title readonly">readonly</span>
|
445
|
+
|
446
|
+
|
447
|
+
|
448
|
+
|
449
|
+
|
450
|
+
|
451
|
+
|
452
|
+
|
453
|
+
|
454
|
+
<span class="summary_desc"><div class='inline'>
|
455
|
+
<p>Returns the value of attribute sha1.</p>
|
456
|
+
</div></span>
|
457
|
+
|
458
|
+
</li>
|
459
|
+
|
460
|
+
|
461
|
+
<li class="public ">
|
462
|
+
<span class="summary_signature">
|
463
|
+
|
464
|
+
<a href="#updated-instance_method" title="#updated (instance method)">- (Object) <strong>updated</strong> </a>
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
</span>
|
469
|
+
|
470
|
+
|
471
|
+
|
472
|
+
|
473
|
+
<span class="note title readonly">readonly</span>
|
474
|
+
|
475
|
+
|
476
|
+
|
477
|
+
|
478
|
+
|
479
|
+
|
480
|
+
|
481
|
+
|
482
|
+
|
483
|
+
<span class="summary_desc"><div class='inline'>
|
484
|
+
<p>Returns the value of attribute updated.</p>
|
485
|
+
</div></span>
|
486
|
+
|
487
|
+
</li>
|
488
|
+
|
489
|
+
|
490
|
+
<li class="public ">
|
491
|
+
<span class="summary_signature">
|
492
|
+
|
493
|
+
<a href="#valid-instance_method" title="#valid (instance method)">- (Object) <strong>valid</strong> </a>
|
494
|
+
|
495
|
+
|
496
|
+
|
497
|
+
</span>
|
498
|
+
|
499
|
+
|
500
|
+
|
501
|
+
|
502
|
+
<span class="note title readonly">readonly</span>
|
503
|
+
|
504
|
+
|
505
|
+
|
506
|
+
|
507
|
+
|
508
|
+
|
509
|
+
|
510
|
+
|
511
|
+
|
512
|
+
<span class="summary_desc"><div class='inline'>
|
513
|
+
<p>Returns the value of attribute valid.</p>
|
514
|
+
</div></span>
|
515
|
+
|
516
|
+
</li>
|
517
|
+
|
518
|
+
|
519
|
+
</ul>
|
520
|
+
|
521
|
+
|
522
|
+
|
523
|
+
|
524
|
+
|
525
|
+
<h2>
|
526
|
+
Instance Method Summary
|
527
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
528
|
+
</h2>
|
529
|
+
|
530
|
+
<ul class="summary">
|
531
|
+
|
532
|
+
<li class="public ">
|
533
|
+
<span class="summary_signature">
|
534
|
+
|
535
|
+
<a href="#combine_header_with_transmission-instance_method" title="#combine_header_with_transmission (instance method)">- (Object) <strong>combine_header_with_transmission</strong>(measurements, header) </a>
|
536
|
+
|
537
|
+
|
538
|
+
|
539
|
+
</span>
|
540
|
+
|
541
|
+
|
542
|
+
|
543
|
+
|
544
|
+
|
545
|
+
|
546
|
+
|
547
|
+
|
548
|
+
|
549
|
+
<span class="summary_desc"><div class='inline'>
|
550
|
+
<p>Header is is a space-separated string containing [0] Program number
|
551
|
+
[1] Platform number [2] Number of lines of data per satellite pass [3]
|
552
|
+
Number of sensors [4] Satellite identifier [5] Location class (lc)
|
553
|
+
[6] Location date 2007-03-02 [7] Location UTC time [8] Latitude
|
554
|
+
(decimal degrees) [9] Longitude, may be > 180 like 255.452°,
|
555
|
+
equivalent to 255.452 - 360 = -104.548 (°E) [10] Altitude (km) [11]
|
556
|
+
Frequency (calculated).</p>
|
557
|
+
</div></span>
|
558
|
+
|
559
|
+
</li>
|
560
|
+
|
561
|
+
|
562
|
+
<li class="public ">
|
563
|
+
<span class="summary_signature">
|
564
|
+
|
565
|
+
<a href="#filter%3F-instance_method" title="#filter? (instance method)">- (Boolean) <strong>filter?</strong> </a>
|
566
|
+
|
567
|
+
|
568
|
+
|
569
|
+
</span>
|
570
|
+
|
571
|
+
|
572
|
+
|
573
|
+
|
574
|
+
|
575
|
+
|
576
|
+
|
577
|
+
|
578
|
+
|
579
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
580
|
+
|
581
|
+
</li>
|
582
|
+
|
583
|
+
|
584
|
+
<li class="public ">
|
585
|
+
<span class="summary_signature">
|
586
|
+
|
587
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">- (Ds) <strong>initialize</strong> </a>
|
588
|
+
|
589
|
+
|
590
|
+
|
591
|
+
</span>
|
592
|
+
|
593
|
+
|
594
|
+
<span class="note title constructor">constructor</span>
|
595
|
+
|
596
|
+
|
597
|
+
|
598
|
+
|
599
|
+
|
600
|
+
|
601
|
+
|
602
|
+
|
603
|
+
<span class="summary_desc"><div class='inline'>
|
604
|
+
<p>A new instance of Ds.</p>
|
605
|
+
</div></span>
|
606
|
+
|
607
|
+
</li>
|
608
|
+
|
609
|
+
|
610
|
+
<li class="public ">
|
611
|
+
<span class="summary_signature">
|
612
|
+
|
613
|
+
<a href="#merge-instance_method" title="#merge (instance method)">- (Array) <strong>merge</strong>(ds, measurement) </a>
|
614
|
+
|
615
|
+
|
616
|
+
|
617
|
+
</span>
|
618
|
+
|
619
|
+
|
620
|
+
|
621
|
+
|
622
|
+
|
623
|
+
|
624
|
+
|
625
|
+
|
626
|
+
|
627
|
+
<span class="summary_desc"><div class='inline'>
|
628
|
+
<p>Merges a DS header hash into each measurement.</p>
|
629
|
+
</div></span>
|
630
|
+
|
631
|
+
</li>
|
632
|
+
|
633
|
+
|
634
|
+
<li class="public ">
|
635
|
+
<span class="summary_signature">
|
636
|
+
|
637
|
+
<a href="#parse-instance_method" title="#parse (instance method)">- (Argos::Ds) <strong>parse</strong>(filename = nil) </a>
|
638
|
+
|
639
|
+
|
640
|
+
|
641
|
+
</span>
|
642
|
+
|
643
|
+
|
644
|
+
|
645
|
+
|
646
|
+
|
647
|
+
|
648
|
+
|
649
|
+
|
650
|
+
|
651
|
+
<span class="summary_desc"><div class='inline'>
|
652
|
+
<p>Parses Argos DS file and returns Argos::Ds -> Array.</p>
|
653
|
+
</div></span>
|
654
|
+
|
655
|
+
</li>
|
656
|
+
|
657
|
+
|
658
|
+
<li class="public ">
|
659
|
+
<span class="summary_signature">
|
660
|
+
|
661
|
+
<a href="#parse_message-instance_method" title="#parse_message (instance method)">- (Object) <strong>parse_message</strong>(contact) </a>
|
662
|
+
|
663
|
+
|
664
|
+
|
665
|
+
</span>
|
666
|
+
|
667
|
+
|
668
|
+
|
669
|
+
|
670
|
+
|
671
|
+
|
672
|
+
|
673
|
+
|
674
|
+
|
675
|
+
<span class="summary_desc"><div class='inline'>
|
676
|
+
<p>Pare one DS segment.</p>
|
677
|
+
</div></span>
|
678
|
+
|
679
|
+
</li>
|
680
|
+
|
681
|
+
|
682
|
+
<li class="public ">
|
683
|
+
<span class="summary_signature">
|
684
|
+
|
685
|
+
<a href="#process_item_body-instance_method" title="#process_item_body (instance method)">- (Object) <strong>process_item_body</strong>(body_arr) </a>
|
686
|
+
|
687
|
+
|
688
|
+
|
689
|
+
</span>
|
690
|
+
|
691
|
+
|
692
|
+
|
693
|
+
|
694
|
+
|
695
|
+
|
696
|
+
|
697
|
+
|
698
|
+
|
699
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
700
|
+
|
701
|
+
</li>
|
702
|
+
|
703
|
+
|
704
|
+
<li class="public ">
|
705
|
+
<span class="summary_signature">
|
706
|
+
|
707
|
+
<a href="#recursive_transmission_parse-instance_method" title="#recursive_transmission_parse (instance method)">- (Aray) <strong>recursive_transmission_parse</strong>(body_arr) </a>
|
708
|
+
|
709
|
+
|
710
|
+
|
711
|
+
</span>
|
712
|
+
|
713
|
+
|
714
|
+
|
715
|
+
|
716
|
+
|
717
|
+
|
718
|
+
|
719
|
+
|
720
|
+
|
721
|
+
<span class="summary_desc"><div class='inline'>
|
722
|
+
<p> @param [Array] body_arr.</p>
|
723
|
+
</div></span>
|
724
|
+
|
725
|
+
</li>
|
726
|
+
|
727
|
+
|
728
|
+
<li class="public ">
|
729
|
+
<span class="summary_signature">
|
730
|
+
|
731
|
+
<a href="#source-instance_method" title="#source (instance method)">- (Object) <strong>source</strong> </a>
|
732
|
+
|
733
|
+
|
734
|
+
|
735
|
+
</span>
|
736
|
+
|
737
|
+
|
738
|
+
|
739
|
+
|
740
|
+
|
741
|
+
|
742
|
+
|
743
|
+
|
744
|
+
|
745
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
746
|
+
|
747
|
+
</li>
|
748
|
+
|
749
|
+
|
750
|
+
<li class="public ">
|
751
|
+
<span class="summary_signature">
|
752
|
+
|
753
|
+
<a href="#start-instance_method" title="#start (instance method)">- (Object) <strong>start</strong> </a>
|
754
|
+
|
755
|
+
|
756
|
+
|
757
|
+
</span>
|
758
|
+
|
759
|
+
|
760
|
+
|
761
|
+
|
762
|
+
|
763
|
+
|
764
|
+
|
765
|
+
|
766
|
+
|
767
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
768
|
+
|
769
|
+
</li>
|
770
|
+
|
771
|
+
|
772
|
+
<li class="public ">
|
773
|
+
<span class="summary_signature">
|
774
|
+
|
775
|
+
<a href="#stop-instance_method" title="#stop (instance method)">- (Object) <strong>stop</strong> </a>
|
776
|
+
|
777
|
+
|
778
|
+
|
779
|
+
</span>
|
780
|
+
|
781
|
+
|
782
|
+
|
783
|
+
|
784
|
+
|
785
|
+
|
786
|
+
|
787
|
+
|
788
|
+
|
789
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
790
|
+
|
791
|
+
</li>
|
792
|
+
|
793
|
+
|
794
|
+
<li class="public ">
|
795
|
+
<span class="summary_signature">
|
796
|
+
|
797
|
+
<a href="#transmission_package-instance_method" title="#transmission_package (instance method)">- (Object) <strong>transmission_package</strong>(data) </a>
|
798
|
+
|
799
|
+
|
800
|
+
|
801
|
+
</span>
|
802
|
+
|
803
|
+
|
804
|
+
|
805
|
+
|
806
|
+
|
807
|
+
|
808
|
+
|
809
|
+
|
810
|
+
|
811
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
812
|
+
|
813
|
+
</li>
|
814
|
+
|
815
|
+
|
816
|
+
<li class="public ">
|
817
|
+
<span class="summary_signature">
|
818
|
+
|
819
|
+
<a href="#type-instance_method" title="#type (instance method)">- (Object) <strong>type</strong> </a>
|
820
|
+
|
821
|
+
|
822
|
+
|
823
|
+
</span>
|
824
|
+
|
825
|
+
|
826
|
+
|
827
|
+
|
828
|
+
|
829
|
+
|
830
|
+
|
831
|
+
|
832
|
+
|
833
|
+
<span class="summary_desc"><div class='inline'></div></span>
|
834
|
+
|
835
|
+
</li>
|
836
|
+
|
837
|
+
|
838
|
+
<li class="public ">
|
839
|
+
<span class="summary_signature">
|
840
|
+
|
841
|
+
<a href="#unfold-instance_method" title="#unfold (instance method)">- (Object) <strong>unfold</strong> </a>
|
842
|
+
|
843
|
+
|
844
|
+
|
845
|
+
</span>
|
846
|
+
|
847
|
+
|
848
|
+
|
849
|
+
|
850
|
+
|
851
|
+
|
852
|
+
|
853
|
+
|
854
|
+
|
855
|
+
<span class="summary_desc"><div class='inline'>
|
856
|
+
<p>Merge position and all other top-level DS fields with each measurement line
|
857
|
+
(containing sensor data) The 3 lines below will unfold to
|
858
|
+
<strong>2</strong> documents, each with “positioned”:2010-03-05T14:19:06Z,
|
859
|
+
“platform”: “23695”, “latitude”:“79.989”, etc.</p>
|
860
|
+
</div></span>
|
861
|
+
|
862
|
+
</li>
|
863
|
+
|
864
|
+
|
865
|
+
</ul>
|
866
|
+
|
867
|
+
|
868
|
+
|
869
|
+
|
870
|
+
|
871
|
+
|
872
|
+
|
873
|
+
|
874
|
+
|
875
|
+
|
876
|
+
|
877
|
+
<h3 class="inherited">Methods included from <span class='object_link'><a href="Ascii.html" title="Argos::Ascii (module)">Ascii</a></span></h3>
|
878
|
+
<p class="inherited"><span class='object_link'><a href="Ascii.html#argos%3F-class_method" title="Argos::Ascii.argos? (method)">argos?</a></span>, <span class='object_link'><a href="Ascii.html#factory-class_method" title="Argos::Ascii.factory (method)">factory</a></span>, <span class='object_link'><a href="Ascii.html#latitudes-instance_method" title="Argos::Ascii#latitudes (method)">#latitudes</a></span>, <span class='object_link'><a href="Ascii.html#longitudes-instance_method" title="Argos::Ascii#longitudes (method)">#longitudes</a></span>, <span class='object_link'><a href="Ascii.html#platforms-instance_method" title="Argos::Ascii#platforms (method)">#platforms</a></span>, <span class='object_link'><a href="Ascii.html#programs-instance_method" title="Argos::Ascii#programs (method)">#programs</a></span>, <span class='object_link'><a href="Ascii.html#source-class_method" title="Argos::Ascii.source (method)">source</a></span>, <span class='object_link'><a href="Ascii.html#type-class_method" title="Argos::Ascii.type (method)">type</a></span></p>
|
879
|
+
|
880
|
+
<div id="constructor_details" class="method_details_list">
|
881
|
+
<h2>Constructor Details</h2>
|
882
|
+
|
883
|
+
<div class="method_details first">
|
884
|
+
<h3 class="signature first" id="initialize-instance_method">
|
885
|
+
|
886
|
+
- (<tt><span class='object_link'><a href="" title="Argos::Ds (class)">Ds</a></span></tt>) <strong>initialize</strong>
|
887
|
+
|
888
|
+
|
889
|
+
|
890
|
+
|
891
|
+
|
892
|
+
</h3><div class="docstring">
|
893
|
+
<div class="discussion">
|
894
|
+
|
895
|
+
<p>Returns a new instance of Ds</p>
|
896
|
+
|
897
|
+
|
898
|
+
</div>
|
899
|
+
</div>
|
900
|
+
<div class="tags">
|
901
|
+
|
902
|
+
|
903
|
+
</div><table class="source_code">
|
904
|
+
<tr>
|
905
|
+
<td>
|
906
|
+
<pre class="lines">
|
907
|
+
|
908
|
+
|
909
|
+
26
|
910
|
+
27
|
911
|
+
28
|
912
|
+
29</pre>
|
913
|
+
</td>
|
914
|
+
<td>
|
915
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 26</span>
|
916
|
+
|
917
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span>
|
918
|
+
<span class='ivar'>@errors</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
919
|
+
<span class='ivar'>@log</span> <span class='op'>=</span> <span class='const'>Logger</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>STDERR</span><span class='rparen'>)</span>
|
920
|
+
<span class='kw'>end</span></pre>
|
921
|
+
</td>
|
922
|
+
</tr>
|
923
|
+
</table>
|
924
|
+
</div>
|
925
|
+
|
926
|
+
</div>
|
927
|
+
|
928
|
+
<div id="instance_attr_details" class="attr_details">
|
929
|
+
<h2>Instance Attribute Details</h2>
|
930
|
+
|
931
|
+
|
932
|
+
<span id="bundle=-instance_method"></span>
|
933
|
+
<div class="method_details first">
|
934
|
+
<h3 class="signature first" id="bundle-instance_method">
|
935
|
+
|
936
|
+
- (<tt>Object</tt>) <strong>bundle</strong>
|
937
|
+
|
938
|
+
|
939
|
+
|
940
|
+
|
941
|
+
|
942
|
+
</h3><div class="docstring">
|
943
|
+
<div class="discussion">
|
944
|
+
|
945
|
+
<p>Returns the value of attribute bundle</p>
|
946
|
+
|
947
|
+
|
948
|
+
</div>
|
949
|
+
</div>
|
950
|
+
<div class="tags">
|
951
|
+
|
952
|
+
|
953
|
+
</div><table class="source_code">
|
954
|
+
<tr>
|
955
|
+
<td>
|
956
|
+
<pre class="lines">
|
957
|
+
|
958
|
+
|
959
|
+
18
|
960
|
+
19
|
961
|
+
20</pre>
|
962
|
+
</td>
|
963
|
+
<td>
|
964
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
965
|
+
|
966
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_bundle'>bundle</span>
|
967
|
+
<span class='ivar'>@bundle</span>
|
968
|
+
<span class='kw'>end</span></pre>
|
969
|
+
</td>
|
970
|
+
</tr>
|
971
|
+
</table>
|
972
|
+
</div>
|
973
|
+
|
974
|
+
|
975
|
+
<span id=""></span>
|
976
|
+
<div class="method_details ">
|
977
|
+
<h3 class="signature " id="errors-instance_method">
|
978
|
+
|
979
|
+
- (<tt>Object</tt>) <strong>errors</strong> <span class="extras">(readonly)</span>
|
980
|
+
|
981
|
+
|
982
|
+
|
983
|
+
|
984
|
+
|
985
|
+
</h3><div class="docstring">
|
986
|
+
<div class="discussion">
|
987
|
+
|
988
|
+
<p>Returns the value of attribute errors</p>
|
989
|
+
|
990
|
+
|
991
|
+
</div>
|
992
|
+
</div>
|
993
|
+
<div class="tags">
|
994
|
+
|
995
|
+
|
996
|
+
</div><table class="source_code">
|
997
|
+
<tr>
|
998
|
+
<td>
|
999
|
+
<pre class="lines">
|
1000
|
+
|
1001
|
+
|
1002
|
+
18
|
1003
|
+
19
|
1004
|
+
20</pre>
|
1005
|
+
</td>
|
1006
|
+
<td>
|
1007
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1008
|
+
|
1009
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_errors'>errors</span>
|
1010
|
+
<span class='ivar'>@errors</span>
|
1011
|
+
<span class='kw'>end</span></pre>
|
1012
|
+
</td>
|
1013
|
+
</tr>
|
1014
|
+
</table>
|
1015
|
+
</div>
|
1016
|
+
|
1017
|
+
|
1018
|
+
<span id="filename=-instance_method"></span>
|
1019
|
+
<div class="method_details ">
|
1020
|
+
<h3 class="signature " id="filename-instance_method">
|
1021
|
+
|
1022
|
+
- (<tt>Object</tt>) <strong>filename</strong>
|
1023
|
+
|
1024
|
+
|
1025
|
+
|
1026
|
+
|
1027
|
+
|
1028
|
+
</h3><div class="docstring">
|
1029
|
+
<div class="discussion">
|
1030
|
+
|
1031
|
+
<p>Returns the value of attribute filename</p>
|
1032
|
+
|
1033
|
+
|
1034
|
+
</div>
|
1035
|
+
</div>
|
1036
|
+
<div class="tags">
|
1037
|
+
|
1038
|
+
|
1039
|
+
</div><table class="source_code">
|
1040
|
+
<tr>
|
1041
|
+
<td>
|
1042
|
+
<pre class="lines">
|
1043
|
+
|
1044
|
+
|
1045
|
+
18
|
1046
|
+
19
|
1047
|
+
20</pre>
|
1048
|
+
</td>
|
1049
|
+
<td>
|
1050
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1051
|
+
|
1052
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filename'>filename</span>
|
1053
|
+
<span class='ivar'>@filename</span>
|
1054
|
+
<span class='kw'>end</span></pre>
|
1055
|
+
</td>
|
1056
|
+
</tr>
|
1057
|
+
</table>
|
1058
|
+
</div>
|
1059
|
+
|
1060
|
+
|
1061
|
+
<span id=""></span>
|
1062
|
+
<div class="method_details ">
|
1063
|
+
<h3 class="signature " id="filesize-instance_method">
|
1064
|
+
|
1065
|
+
- (<tt>Object</tt>) <strong>filesize</strong> <span class="extras">(readonly)</span>
|
1066
|
+
|
1067
|
+
|
1068
|
+
|
1069
|
+
|
1070
|
+
|
1071
|
+
</h3><div class="docstring">
|
1072
|
+
<div class="discussion">
|
1073
|
+
|
1074
|
+
<p>Returns the value of attribute filesize</p>
|
1075
|
+
|
1076
|
+
|
1077
|
+
</div>
|
1078
|
+
</div>
|
1079
|
+
<div class="tags">
|
1080
|
+
|
1081
|
+
|
1082
|
+
</div><table class="source_code">
|
1083
|
+
<tr>
|
1084
|
+
<td>
|
1085
|
+
<pre class="lines">
|
1086
|
+
|
1087
|
+
|
1088
|
+
18
|
1089
|
+
19
|
1090
|
+
20</pre>
|
1091
|
+
</td>
|
1092
|
+
<td>
|
1093
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1094
|
+
|
1095
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filesize'>filesize</span>
|
1096
|
+
<span class='ivar'>@filesize</span>
|
1097
|
+
<span class='kw'>end</span></pre>
|
1098
|
+
</td>
|
1099
|
+
</tr>
|
1100
|
+
</table>
|
1101
|
+
</div>
|
1102
|
+
|
1103
|
+
|
1104
|
+
<span id="filter=-instance_method"></span>
|
1105
|
+
<div class="method_details ">
|
1106
|
+
<h3 class="signature " id="filter-instance_method">
|
1107
|
+
|
1108
|
+
- (<tt>Object</tt>) <strong>filter</strong>
|
1109
|
+
|
1110
|
+
|
1111
|
+
|
1112
|
+
|
1113
|
+
|
1114
|
+
</h3><div class="docstring">
|
1115
|
+
<div class="discussion">
|
1116
|
+
|
1117
|
+
<p>Returns the value of attribute filter</p>
|
1118
|
+
|
1119
|
+
|
1120
|
+
</div>
|
1121
|
+
</div>
|
1122
|
+
<div class="tags">
|
1123
|
+
|
1124
|
+
|
1125
|
+
</div><table class="source_code">
|
1126
|
+
<tr>
|
1127
|
+
<td>
|
1128
|
+
<pre class="lines">
|
1129
|
+
|
1130
|
+
|
1131
|
+
18
|
1132
|
+
19
|
1133
|
+
20</pre>
|
1134
|
+
</td>
|
1135
|
+
<td>
|
1136
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1137
|
+
|
1138
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter'>filter</span>
|
1139
|
+
<span class='ivar'>@filter</span>
|
1140
|
+
<span class='kw'>end</span></pre>
|
1141
|
+
</td>
|
1142
|
+
</tr>
|
1143
|
+
</table>
|
1144
|
+
</div>
|
1145
|
+
|
1146
|
+
|
1147
|
+
<span id=""></span>
|
1148
|
+
<div class="method_details ">
|
1149
|
+
<h3 class="signature " id="filtername-instance_method">
|
1150
|
+
|
1151
|
+
- (<tt>Object</tt>) <strong>filtername</strong> <span class="extras">(readonly)</span>
|
1152
|
+
|
1153
|
+
|
1154
|
+
|
1155
|
+
|
1156
|
+
|
1157
|
+
</h3><div class="docstring">
|
1158
|
+
<div class="discussion">
|
1159
|
+
|
1160
|
+
<p>Returns the value of attribute filtername</p>
|
1161
|
+
|
1162
|
+
|
1163
|
+
</div>
|
1164
|
+
</div>
|
1165
|
+
<div class="tags">
|
1166
|
+
|
1167
|
+
|
1168
|
+
</div><table class="source_code">
|
1169
|
+
<tr>
|
1170
|
+
<td>
|
1171
|
+
<pre class="lines">
|
1172
|
+
|
1173
|
+
|
1174
|
+
18
|
1175
|
+
19
|
1176
|
+
20</pre>
|
1177
|
+
</td>
|
1178
|
+
<td>
|
1179
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1180
|
+
|
1181
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filtername'>filtername</span>
|
1182
|
+
<span class='ivar'>@filtername</span>
|
1183
|
+
<span class='kw'>end</span></pre>
|
1184
|
+
</td>
|
1185
|
+
</tr>
|
1186
|
+
</table>
|
1187
|
+
</div>
|
1188
|
+
|
1189
|
+
|
1190
|
+
<span id="log=-instance_method"></span>
|
1191
|
+
<div class="method_details ">
|
1192
|
+
<h3 class="signature " id="log-instance_method">
|
1193
|
+
|
1194
|
+
- (<tt>Object</tt>) <strong>log</strong>
|
1195
|
+
|
1196
|
+
|
1197
|
+
|
1198
|
+
|
1199
|
+
|
1200
|
+
</h3><table class="source_code">
|
1201
|
+
<tr>
|
1202
|
+
<td>
|
1203
|
+
<pre class="lines">
|
1204
|
+
|
1205
|
+
|
1206
|
+
44
|
1207
|
+
45
|
1208
|
+
46
|
1209
|
+
47
|
1210
|
+
48
|
1211
|
+
49</pre>
|
1212
|
+
</td>
|
1213
|
+
<td>
|
1214
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 44</span>
|
1215
|
+
|
1216
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_log'>log</span>
|
1217
|
+
<span class='kw'>if</span> <span class='ivar'>@log</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1218
|
+
<span class='ivar'>@log</span> <span class='op'>=</span> <span class='const'>Logger</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='const'>STDERR</span><span class='rparen'>)</span>
|
1219
|
+
<span class='kw'>end</span>
|
1220
|
+
<span class='ivar'>@log</span>
|
1221
|
+
<span class='kw'>end</span></pre>
|
1222
|
+
</td>
|
1223
|
+
</tr>
|
1224
|
+
</table>
|
1225
|
+
</div>
|
1226
|
+
|
1227
|
+
|
1228
|
+
<span id=""></span>
|
1229
|
+
<div class="method_details ">
|
1230
|
+
<h3 class="signature " id="messages-instance_method">
|
1231
|
+
|
1232
|
+
- (<tt>Object</tt>) <strong>messages</strong> <span class="extras">(readonly)</span>
|
1233
|
+
|
1234
|
+
|
1235
|
+
|
1236
|
+
|
1237
|
+
|
1238
|
+
</h3><div class="docstring">
|
1239
|
+
<div class="discussion">
|
1240
|
+
|
1241
|
+
<p>Returns the value of attribute messages</p>
|
1242
|
+
|
1243
|
+
|
1244
|
+
</div>
|
1245
|
+
</div>
|
1246
|
+
<div class="tags">
|
1247
|
+
|
1248
|
+
|
1249
|
+
</div><table class="source_code">
|
1250
|
+
<tr>
|
1251
|
+
<td>
|
1252
|
+
<pre class="lines">
|
1253
|
+
|
1254
|
+
|
1255
|
+
18
|
1256
|
+
19
|
1257
|
+
20</pre>
|
1258
|
+
</td>
|
1259
|
+
<td>
|
1260
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1261
|
+
|
1262
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_messages'>messages</span>
|
1263
|
+
<span class='ivar'>@messages</span>
|
1264
|
+
<span class='kw'>end</span></pre>
|
1265
|
+
</td>
|
1266
|
+
</tr>
|
1267
|
+
</table>
|
1268
|
+
</div>
|
1269
|
+
|
1270
|
+
|
1271
|
+
<span id=""></span>
|
1272
|
+
<div class="method_details ">
|
1273
|
+
<h3 class="signature " id="multiplicates-instance_method">
|
1274
|
+
|
1275
|
+
- (<tt>Object</tt>) <strong>multiplicates</strong> <span class="extras">(readonly)</span>
|
1276
|
+
|
1277
|
+
|
1278
|
+
|
1279
|
+
|
1280
|
+
|
1281
|
+
</h3><div class="docstring">
|
1282
|
+
<div class="discussion">
|
1283
|
+
|
1284
|
+
<p>Returns the value of attribute multiplicates</p>
|
1285
|
+
|
1286
|
+
|
1287
|
+
</div>
|
1288
|
+
</div>
|
1289
|
+
<div class="tags">
|
1290
|
+
|
1291
|
+
|
1292
|
+
</div><table class="source_code">
|
1293
|
+
<tr>
|
1294
|
+
<td>
|
1295
|
+
<pre class="lines">
|
1296
|
+
|
1297
|
+
|
1298
|
+
18
|
1299
|
+
19
|
1300
|
+
20</pre>
|
1301
|
+
</td>
|
1302
|
+
<td>
|
1303
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1304
|
+
|
1305
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_multiplicates'>multiplicates</span>
|
1306
|
+
<span class='ivar'>@multiplicates</span>
|
1307
|
+
<span class='kw'>end</span></pre>
|
1308
|
+
</td>
|
1309
|
+
</tr>
|
1310
|
+
</table>
|
1311
|
+
</div>
|
1312
|
+
|
1313
|
+
|
1314
|
+
<span id=""></span>
|
1315
|
+
<div class="method_details ">
|
1316
|
+
<h3 class="signature " id="sha1-instance_method">
|
1317
|
+
|
1318
|
+
- (<tt>Object</tt>) <strong>sha1</strong> <span class="extras">(readonly)</span>
|
1319
|
+
|
1320
|
+
|
1321
|
+
|
1322
|
+
|
1323
|
+
|
1324
|
+
</h3><div class="docstring">
|
1325
|
+
<div class="discussion">
|
1326
|
+
|
1327
|
+
<p>Returns the value of attribute sha1</p>
|
1328
|
+
|
1329
|
+
|
1330
|
+
</div>
|
1331
|
+
</div>
|
1332
|
+
<div class="tags">
|
1333
|
+
|
1334
|
+
|
1335
|
+
</div><table class="source_code">
|
1336
|
+
<tr>
|
1337
|
+
<td>
|
1338
|
+
<pre class="lines">
|
1339
|
+
|
1340
|
+
|
1341
|
+
18
|
1342
|
+
19
|
1343
|
+
20</pre>
|
1344
|
+
</td>
|
1345
|
+
<td>
|
1346
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1347
|
+
|
1348
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_sha1'>sha1</span>
|
1349
|
+
<span class='ivar'>@sha1</span>
|
1350
|
+
<span class='kw'>end</span></pre>
|
1351
|
+
</td>
|
1352
|
+
</tr>
|
1353
|
+
</table>
|
1354
|
+
</div>
|
1355
|
+
|
1356
|
+
|
1357
|
+
<span id=""></span>
|
1358
|
+
<div class="method_details ">
|
1359
|
+
<h3 class="signature " id="updated-instance_method">
|
1360
|
+
|
1361
|
+
- (<tt>Object</tt>) <strong>updated</strong> <span class="extras">(readonly)</span>
|
1362
|
+
|
1363
|
+
|
1364
|
+
|
1365
|
+
|
1366
|
+
|
1367
|
+
</h3><div class="docstring">
|
1368
|
+
<div class="discussion">
|
1369
|
+
|
1370
|
+
<p>Returns the value of attribute updated</p>
|
1371
|
+
|
1372
|
+
|
1373
|
+
</div>
|
1374
|
+
</div>
|
1375
|
+
<div class="tags">
|
1376
|
+
|
1377
|
+
|
1378
|
+
</div><table class="source_code">
|
1379
|
+
<tr>
|
1380
|
+
<td>
|
1381
|
+
<pre class="lines">
|
1382
|
+
|
1383
|
+
|
1384
|
+
18
|
1385
|
+
19
|
1386
|
+
20</pre>
|
1387
|
+
</td>
|
1388
|
+
<td>
|
1389
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1390
|
+
|
1391
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_updated'>updated</span>
|
1392
|
+
<span class='ivar'>@updated</span>
|
1393
|
+
<span class='kw'>end</span></pre>
|
1394
|
+
</td>
|
1395
|
+
</tr>
|
1396
|
+
</table>
|
1397
|
+
</div>
|
1398
|
+
|
1399
|
+
|
1400
|
+
<span id=""></span>
|
1401
|
+
<div class="method_details ">
|
1402
|
+
<h3 class="signature " id="valid-instance_method">
|
1403
|
+
|
1404
|
+
- (<tt>Object</tt>) <strong>valid</strong> <span class="extras">(readonly)</span>
|
1405
|
+
|
1406
|
+
|
1407
|
+
|
1408
|
+
|
1409
|
+
|
1410
|
+
</h3><div class="docstring">
|
1411
|
+
<div class="discussion">
|
1412
|
+
|
1413
|
+
<p>Returns the value of attribute valid</p>
|
1414
|
+
|
1415
|
+
|
1416
|
+
</div>
|
1417
|
+
</div>
|
1418
|
+
<div class="tags">
|
1419
|
+
|
1420
|
+
|
1421
|
+
</div><table class="source_code">
|
1422
|
+
<tr>
|
1423
|
+
<td>
|
1424
|
+
<pre class="lines">
|
1425
|
+
|
1426
|
+
|
1427
|
+
18
|
1428
|
+
19
|
1429
|
+
20</pre>
|
1430
|
+
</td>
|
1431
|
+
<td>
|
1432
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 18</span>
|
1433
|
+
|
1434
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_valid'>valid</span>
|
1435
|
+
<span class='ivar'>@valid</span>
|
1436
|
+
<span class='kw'>end</span></pre>
|
1437
|
+
</td>
|
1438
|
+
</tr>
|
1439
|
+
</table>
|
1440
|
+
</div>
|
1441
|
+
|
1442
|
+
</div>
|
1443
|
+
|
1444
|
+
|
1445
|
+
<div id="instance_method_details" class="method_details_list">
|
1446
|
+
<h2>Instance Method Details</h2>
|
1447
|
+
|
1448
|
+
|
1449
|
+
<div class="method_details first">
|
1450
|
+
<h3 class="signature first" id="combine_header_with_transmission-instance_method">
|
1451
|
+
|
1452
|
+
- (<tt>Object</tt>) <strong>combine_header_with_transmission</strong>(measurements, header)
|
1453
|
+
|
1454
|
+
|
1455
|
+
|
1456
|
+
|
1457
|
+
|
1458
|
+
</h3><div class="docstring">
|
1459
|
+
<div class="discussion">
|
1460
|
+
|
1461
|
+
<p>Header is is a space-separated string containing</p>
|
1462
|
+
|
1463
|
+
<pre class="code ruby"><code class="ruby"> [0] Program number
|
1464
|
+
[1] Platform number
|
1465
|
+
[2] Number of lines of data per satellite pass
|
1466
|
+
[3] Number of sensors
|
1467
|
+
[4] Satellite identifier
|
1468
|
+
[5] Location class (lc)
|
1469
|
+
[6] Location date 2007-03-02
|
1470
|
+
[7] Location UTC time
|
1471
|
+
[8] Latitude (decimal degrees)
|
1472
|
+
[9] Longitude, may be > 180 like 255.452°, equivalent to 255.452 - 360 = -104.548 (°E)
|
1473
|
+
[10] Altitude (km)
|
1474
|
+
[11] Frequency (calculated)
|
1475
|
+
</code></pre>
|
1476
|
+
|
1477
|
+
<p>The header varies in information elemenet, often either 0..4|5 or 0..11.
|
1478
|
+
Header examples (plit on “ ”):</p>
|
1479
|
+
|
1480
|
+
<pre class="code ruby"><code class="ruby"><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>09660</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>10788</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>4</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>3</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>D</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>0</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span>
|
1481
|
+
<span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>09660</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>10788</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>5</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>3</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>H</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>2</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>1992-04-06</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>22:12:16</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>78.248</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>15.505</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>0.000</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>401649604</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span>
|
1482
|
+
<span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>09660</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>10788</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>2</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>3</span><span class='tstring_end'>"</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>D</span><span class='tstring_end'>"</span></span><span class='rbracket'>]</span></code></pre>
|
1483
|
+
|
1484
|
+
<p><a
|
1485
|
+
href="http://www.argos-system.org/files/pmedia/public/r363_9_argos_users_manual-v1.5.pdf">www.argos-system.org/files/pmedia/public/r363_9_argos_users_manual-v1.5.pdf</a>
|
1486
|
+
page 42</p>
|
1487
|
+
|
1488
|
+
<p>Warning, the parser does not support this header format from 1989
|
1489
|
+
[AUO89.DAT] 19890800-19891000: [“09660”, “14653”, “10”, “41”, “14”, “1”,
|
1490
|
+
“-.42155E+1”, “00”, “112”, “17DD”]</p>
|
1491
|
+
|
1492
|
+
|
1493
|
+
</div>
|
1494
|
+
</div>
|
1495
|
+
<div class="tags">
|
1496
|
+
<p class="tag_title">Parameters:</p>
|
1497
|
+
<ul class="param">
|
1498
|
+
|
1499
|
+
<li>
|
1500
|
+
|
1501
|
+
<span class='name'>header</span>
|
1502
|
+
|
1503
|
+
|
1504
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1505
|
+
|
1506
|
+
|
1507
|
+
|
1508
|
+
</li>
|
1509
|
+
|
1510
|
+
</ul>
|
1511
|
+
|
1512
|
+
|
1513
|
+
</div><table class="source_code">
|
1514
|
+
<tr>
|
1515
|
+
<td>
|
1516
|
+
<pre class="lines">
|
1517
|
+
|
1518
|
+
|
1519
|
+
195
|
1520
|
+
196
|
1521
|
+
197
|
1522
|
+
198
|
1523
|
+
199
|
1524
|
+
200
|
1525
|
+
201
|
1526
|
+
202
|
1527
|
+
203
|
1528
|
+
204
|
1529
|
+
205
|
1530
|
+
206
|
1531
|
+
207
|
1532
|
+
208
|
1533
|
+
209
|
1534
|
+
210
|
1535
|
+
211
|
1536
|
+
212
|
1537
|
+
213
|
1538
|
+
214
|
1539
|
+
215
|
1540
|
+
216
|
1541
|
+
217
|
1542
|
+
218
|
1543
|
+
219
|
1544
|
+
220
|
1545
|
+
221
|
1546
|
+
222
|
1547
|
+
223
|
1548
|
+
224
|
1549
|
+
225
|
1550
|
+
226
|
1551
|
+
227
|
1552
|
+
228
|
1553
|
+
229
|
1554
|
+
230
|
1555
|
+
231
|
1556
|
+
232
|
1557
|
+
233
|
1558
|
+
234
|
1559
|
+
235
|
1560
|
+
236
|
1561
|
+
237
|
1562
|
+
238
|
1563
|
+
239
|
1564
|
+
240
|
1565
|
+
241
|
1566
|
+
242
|
1567
|
+
243
|
1568
|
+
244
|
1569
|
+
245
|
1570
|
+
246
|
1571
|
+
247
|
1572
|
+
248
|
1573
|
+
249
|
1574
|
+
250
|
1575
|
+
251
|
1576
|
+
252
|
1577
|
+
253
|
1578
|
+
254
|
1579
|
+
255
|
1580
|
+
256
|
1581
|
+
257
|
1582
|
+
258
|
1583
|
+
259
|
1584
|
+
260
|
1585
|
+
261
|
1586
|
+
262
|
1587
|
+
263
|
1588
|
+
264
|
1589
|
+
265
|
1590
|
+
266</pre>
|
1591
|
+
</td>
|
1592
|
+
<td>
|
1593
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 195</span>
|
1594
|
+
|
1595
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_combine_header_with_transmission'>combine_header_with_transmission</span><span class='lparen'>(</span><span class='id identifier rubyid_measurements'>measurements</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
|
1596
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_header'>header</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Array</span>
|
1597
|
+
<span class='id identifier rubyid_header'>header</span> <span class='op'>=</span> <span class='id identifier rubyid_header'>header</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
1598
|
+
<span class='kw'>end</span>
|
1599
|
+
<span class='id identifier rubyid_latitude'>latitude</span> <span class='op'>=</span> <span class='id identifier rubyid_longitude'>longitude</span> <span class='op'>=</span> <span class='id identifier rubyid_positioned'>positioned</span> <span class='op'>=</span> <span class='kw'>nil</span>
|
1600
|
+
<span class='id identifier rubyid_warn'>warn</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
1601
|
+
<span class='id identifier rubyid_errors'>errors</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
1602
|
+
|
1603
|
+
<span class='id identifier rubyid_lc'>lc</span> <span class='op'>=</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>5</span><span class='rbracket'>]</span>
|
1604
|
+
|
1605
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>6</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>and</span> <span class='kw'>not</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>7</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1606
|
+
<span class='id identifier rubyid_positioned'>positioned</span> <span class='op'>=</span> <span class='id identifier rubyid_convert_datetime'>convert_datetime</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>6</span><span class='rbracket'>]</span><span class='op'>+</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='tstring_end'>"</span></span><span class='op'>+</span><span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>7</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
1607
|
+
<span class='kw'>end</span>
|
1608
|
+
|
1609
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>8</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='op'>&&</span> <span class='id identifier rubyid_valid_float?'>valid_float?</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>8</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
1610
|
+
<span class='id identifier rubyid_latitude'>latitude</span> <span class='op'>=</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>8</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span>
|
1611
|
+
<span class='kw'>end</span>
|
1612
|
+
|
1613
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>9</span><span class='rbracket'>]</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='op'>&&</span> <span class='id identifier rubyid_valid_float?'>valid_float?</span><span class='lparen'>(</span><span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>9</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
1614
|
+
<span class='id identifier rubyid_longitude'>longitude</span> <span class='op'>=</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>9</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span>
|
1615
|
+
<span class='kw'>if</span> <span class='lparen'>(</span><span class='int'>180</span><span class='op'>..</span><span class='int'>360</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_longitude'>longitude</span>
|
1616
|
+
<span class='id identifier rubyid_longitude'>longitude</span> <span class='op'>=</span> <span class='lparen'>(</span><span class='id identifier rubyid_longitude'>longitude</span> <span class='op'>-</span> <span class='int'>360</span><span class='rparen'>)</span>
|
1617
|
+
<span class='kw'>end</span>
|
1618
|
+
<span class='kw'>end</span>
|
1619
|
+
|
1620
|
+
<span class='id identifier rubyid_altitude'>altitude</span> <span class='op'>=</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>10</span><span class='rbracket'>]</span>
|
1621
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_altitude'>altitude</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1622
|
+
<span class='id identifier rubyid_altitude'>altitude</span> <span class='op'>=</span> <span class='id identifier rubyid_altitude'>altitude</span><span class='period'>.</span><span class='id identifier rubyid_to_f'>to_f</span><span class='op'>*</span><span class='int'>1000</span>
|
1623
|
+
<span class='kw'>end</span>
|
1624
|
+
|
1625
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_positioned'>positioned</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>and</span> <span class='id identifier rubyid_measurements'>measurements</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1626
|
+
<span class='id identifier rubyid_warn'>warn</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>missing-time</span><span class='tstring_end'>"</span></span>
|
1627
|
+
<span class='kw'>end</span>
|
1628
|
+
|
1629
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_latitude'>latitude</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>or</span> <span class='id identifier rubyid_longitude'>longitude</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1630
|
+
<span class='id identifier rubyid_warn'>warn</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>missing-position</span><span class='tstring_end'>"</span></span>
|
1631
|
+
<span class='kw'>else</span>
|
1632
|
+
|
1633
|
+
<span class='kw'>unless</span> <span class='id identifier rubyid_latitude'>latitude</span><span class='period'>.</span><span class='id identifier rubyid_between?'>between?</span><span class='lparen'>(</span><span class='op'>-</span><span class='int'>90</span><span class='comma'>,</span> <span class='int'>90</span><span class='rparen'>)</span> <span class='kw'>and</span> <span class='id identifier rubyid_longitude'>longitude</span><span class='period'>.</span><span class='id identifier rubyid_between?'>between?</span><span class='lparen'>(</span><span class='op'>-</span><span class='int'>180</span><span class='comma'>,</span> <span class='int'>180</span><span class='rparen'>)</span>
|
1634
|
+
<span class='id identifier rubyid_errors'>errors</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>invalid-position</span><span class='tstring_end'>"</span></span>
|
1635
|
+
<span class='kw'>end</span>
|
1636
|
+
<span class='kw'>end</span>
|
1637
|
+
|
1638
|
+
<span class='kw'>unless</span> <span class='const'>LOCATION_CLASS</span><span class='period'>.</span><span class='id identifier rubyid_include?'>include?</span> <span class='id identifier rubyid_lc'>lc</span>
|
1639
|
+
<span class='id identifier rubyid_errors'>errors</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>invalid-lc</span><span class='tstring_end'>"</span></span>
|
1640
|
+
<span class='kw'>end</span>
|
1641
|
+
|
1642
|
+
<span class='comment'># Satellites
|
1643
|
+
</span> <span class='comment'># ["A", "B", "K", "L", "M", "N", "P", "R"]
|
1644
|
+
</span>
|
1645
|
+
<span class='id identifier rubyid_document'>document</span> <span class='op'>=</span> <span class='lbrace'>{</span> <span class='label'>program:</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='comma'>,</span>
|
1646
|
+
<span class='label'>platform:</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='comma'>,</span>
|
1647
|
+
<span class='label'>lines:</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='comma'>,</span>
|
1648
|
+
<span class='label'>sensors:</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>3</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='comma'>,</span>
|
1649
|
+
<span class='label'>satellite:</span> <span class='id identifier rubyid_header'>header</span><span class='lbracket'>[</span><span class='int'>4</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
1650
|
+
<span class='label'>lc:</span> <span class='id identifier rubyid_lc'>lc</span><span class='comma'>,</span>
|
1651
|
+
<span class='label'>positioned:</span> <span class='id identifier rubyid_positioned'>positioned</span><span class='comma'>,</span>
|
1652
|
+
<span class='label'>latitude:</span> <span class='id identifier rubyid_latitude'>latitude</span><span class='comma'>,</span>
|
1653
|
+
<span class='label'>longitude:</span> <span class='id identifier rubyid_longitude'>longitude</span><span class='comma'>,</span>
|
1654
|
+
<span class='label'>altitude:</span> <span class='id identifier rubyid_altitude'>altitude</span><span class='comma'>,</span>
|
1655
|
+
<span class='label'>measurements:</span> <span class='id identifier rubyid_measurements'>measurements</span><span class='comma'>,</span>
|
1656
|
+
<span class='label'>headers:</span> <span class='id identifier rubyid_header'>header</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
|
1657
|
+
<span class='rbrace'>}</span>
|
1658
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_warn'>warn</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
1659
|
+
<span class='id identifier rubyid_document'>document</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span><span class='op'>=</span><span class='id identifier rubyid_warn'>warn</span>
|
1660
|
+
<span class='kw'>end</span>
|
1661
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_errors'>errors</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
1662
|
+
<span class='id identifier rubyid_document'>document</span><span class='lbracket'>[</span><span class='symbol'>:errors</span><span class='rbracket'>]</span><span class='op'>=</span><span class='id identifier rubyid_errors'>errors</span>
|
1663
|
+
<span class='kw'>end</span>
|
1664
|
+
|
1665
|
+
<span class='id identifier rubyid_document'>document</span>
|
1666
|
+
<span class='kw'>end</span></pre>
|
1667
|
+
</td>
|
1668
|
+
</tr>
|
1669
|
+
</table>
|
1670
|
+
</div>
|
1671
|
+
|
1672
|
+
<div class="method_details ">
|
1673
|
+
<h3 class="signature " id="filter?-instance_method">
|
1674
|
+
|
1675
|
+
- (<tt>Boolean</tt>) <strong>filter?</strong>
|
1676
|
+
|
1677
|
+
|
1678
|
+
|
1679
|
+
|
1680
|
+
|
1681
|
+
</h3><div class="docstring">
|
1682
|
+
<div class="discussion">
|
1683
|
+
|
1684
|
+
|
1685
|
+
</div>
|
1686
|
+
</div>
|
1687
|
+
<div class="tags">
|
1688
|
+
|
1689
|
+
<p class="tag_title">Returns:</p>
|
1690
|
+
<ul class="return">
|
1691
|
+
|
1692
|
+
<li>
|
1693
|
+
|
1694
|
+
|
1695
|
+
<span class='type'>(<tt>Boolean</tt>)</span>
|
1696
|
+
|
1697
|
+
|
1698
|
+
|
1699
|
+
</li>
|
1700
|
+
|
1701
|
+
</ul>
|
1702
|
+
|
1703
|
+
</div><table class="source_code">
|
1704
|
+
<tr>
|
1705
|
+
<td>
|
1706
|
+
<pre class="lines">
|
1707
|
+
|
1708
|
+
|
1709
|
+
31
|
1710
|
+
32
|
1711
|
+
33</pre>
|
1712
|
+
</td>
|
1713
|
+
<td>
|
1714
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 31</span>
|
1715
|
+
|
1716
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_filter?'>filter?</span>
|
1717
|
+
<span class='kw'>not</span> <span class='ivar'>@filter</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1718
|
+
<span class='kw'>end</span></pre>
|
1719
|
+
</td>
|
1720
|
+
</tr>
|
1721
|
+
</table>
|
1722
|
+
</div>
|
1723
|
+
|
1724
|
+
<div class="method_details ">
|
1725
|
+
<h3 class="signature " id="merge-instance_method">
|
1726
|
+
|
1727
|
+
- (<tt>Array</tt>) <strong>merge</strong>(ds, measurement)
|
1728
|
+
|
1729
|
+
|
1730
|
+
|
1731
|
+
|
1732
|
+
|
1733
|
+
</h3><div class="docstring">
|
1734
|
+
<div class="discussion">
|
1735
|
+
|
1736
|
+
<p>Merges a DS header hash into each measurement</p>
|
1737
|
+
|
1738
|
+
|
1739
|
+
</div>
|
1740
|
+
</div>
|
1741
|
+
<div class="tags">
|
1742
|
+
|
1743
|
+
<p class="tag_title">Returns:</p>
|
1744
|
+
<ul class="return">
|
1745
|
+
|
1746
|
+
<li>
|
1747
|
+
|
1748
|
+
|
1749
|
+
<span class='type'>(<tt>Array</tt>)</span>
|
1750
|
+
|
1751
|
+
|
1752
|
+
|
1753
|
+
—
|
1754
|
+
<div class='inline'>
|
1755
|
+
<p>Measurements with header and static metadata merged in</p>
|
1756
|
+
</div>
|
1757
|
+
|
1758
|
+
</li>
|
1759
|
+
|
1760
|
+
</ul>
|
1761
|
+
|
1762
|
+
</div><table class="source_code">
|
1763
|
+
<tr>
|
1764
|
+
<td>
|
1765
|
+
<pre class="lines">
|
1766
|
+
|
1767
|
+
|
1768
|
+
307
|
1769
|
+
308
|
1770
|
+
309
|
1771
|
+
310
|
1772
|
+
311
|
1773
|
+
312
|
1774
|
+
313
|
1775
|
+
314
|
1776
|
+
315
|
1777
|
+
316
|
1778
|
+
317
|
1779
|
+
318
|
1780
|
+
319
|
1781
|
+
320
|
1782
|
+
321
|
1783
|
+
322
|
1784
|
+
323
|
1785
|
+
324
|
1786
|
+
325
|
1787
|
+
326
|
1788
|
+
327
|
1789
|
+
328
|
1790
|
+
329
|
1791
|
+
330
|
1792
|
+
331
|
1793
|
+
332
|
1794
|
+
333
|
1795
|
+
334
|
1796
|
+
335
|
1797
|
+
336
|
1798
|
+
337
|
1799
|
+
338
|
1800
|
+
339
|
1801
|
+
340
|
1802
|
+
341
|
1803
|
+
342
|
1804
|
+
343
|
1805
|
+
344
|
1806
|
+
345
|
1807
|
+
346
|
1808
|
+
347
|
1809
|
+
348
|
1810
|
+
349
|
1811
|
+
350
|
1812
|
+
351
|
1813
|
+
352
|
1814
|
+
353
|
1815
|
+
354
|
1816
|
+
355
|
1817
|
+
356
|
1818
|
+
357
|
1819
|
+
358
|
1820
|
+
359
|
1821
|
+
360
|
1822
|
+
361
|
1823
|
+
362
|
1824
|
+
363</pre>
|
1825
|
+
</td>
|
1826
|
+
<td>
|
1827
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 307</span>
|
1828
|
+
|
1829
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_ds'>ds</span><span class='comma'>,</span> <span class='id identifier rubyid_measurement'>measurement</span><span class='rparen'>)</span>
|
1830
|
+
<span class='id identifier rubyid_m'>m</span> <span class='op'>=</span> <span class='id identifier rubyid_ds'>ds</span><span class='period'>.</span><span class='id identifier rubyid_select'>select</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_k'>k</span> <span class='op'>!=</span> <span class='symbol'>:measurements</span> <span class='kw'>and</span> <span class='id identifier rubyid_k'>k</span> <span class='op'>!=</span> <span class='symbol'>:errors</span> <span class='kw'>and</span> <span class='id identifier rubyid_k'>k</span> <span class='op'>!=</span> <span class='symbol'>:warn</span> <span class='rbrace'>}</span>
|
1831
|
+
<span class='id identifier rubyid_m'>m</span> <span class='op'>=</span> <span class='id identifier rubyid_m'>m</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_measurement'>measurement</span><span class='rparen'>)</span>
|
1832
|
+
<span class='id identifier rubyid_m'>m</span> <span class='op'>=</span> <span class='id identifier rubyid_m'>m</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span> <span class='lparen'>(</span><span class='lbrace'>{</span> <span class='label'>technology:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>argos</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
1833
|
+
<span class='label'>type:</span> <span class='id identifier rubyid_type'>type</span><span class='comma'>,</span>
|
1834
|
+
<span class='label'>file:</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>file://</span><span class='tstring_end'>"</span></span><span class='op'>+</span><span class='id identifier rubyid_filename'>filename</span><span class='comma'>,</span>
|
1835
|
+
<span class='label'>source:</span> <span class='id identifier rubyid_sha1'>sha1</span>
|
1836
|
+
<span class='rbrace'>}</span><span class='rparen'>)</span>
|
1837
|
+
|
1838
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:errors</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>and</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:errors</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
1839
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:errors</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:errors</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
|
1840
|
+
<span class='kw'>end</span>
|
1841
|
+
|
1842
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>and</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
1843
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
|
1844
|
+
<span class='kw'>end</span>
|
1845
|
+
|
1846
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:sensor_data</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>and</span> <span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:sensor_data</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>!=</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:sensors</span><span class='rbracket'>]</span>
|
1847
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
1848
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
1849
|
+
<span class='kw'>end</span>
|
1850
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:warn</span><span class='rbracket'>]</span> <span class='op'><<</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>sensors-count-mismatch</span><span class='tstring_end'>"</span></span>
|
1851
|
+
<span class='kw'>end</span>
|
1852
|
+
|
1853
|
+
<span class='comment'># Create id as SHA1 hash of measurement minus stuff that may vary (like filename)
|
1854
|
+
</span> <span class='comment'>#
|
1855
|
+
</span> <span class='comment'># Possible improvement for is to base id on a static list of keys
|
1856
|
+
</span> <span class='comment'># :program,
|
1857
|
+
</span> <span class='comment'># :platform,
|
1858
|
+
</span> <span class='comment'># :lines,
|
1859
|
+
</span> <span class='comment'># :sensors,
|
1860
|
+
</span> <span class='comment'># :satellite,
|
1861
|
+
</span> <span class='comment'># :lc,
|
1862
|
+
</span> <span class='comment'># :positioned,
|
1863
|
+
</span> <span class='comment'># :latitude,
|
1864
|
+
</span> <span class='comment'># :longitude,
|
1865
|
+
</span> <span class='comment'># :altitude,
|
1866
|
+
</span> <span class='comment'># :headers,
|
1867
|
+
</span> <span class='comment'># :measured,
|
1868
|
+
</span> <span class='comment'># :identical,
|
1869
|
+
</span> <span class='comment'># :sensor_data,
|
1870
|
+
</span> <span class='comment'># :technology,
|
1871
|
+
</span> <span class='comment'># :type,
|
1872
|
+
</span> <span class='comment'># :source
|
1873
|
+
</span>
|
1874
|
+
<span class='id identifier rubyid_idbase'>idbase</span> <span class='op'>=</span> <span class='id identifier rubyid_m'>m</span><span class='period'>.</span><span class='id identifier rubyid_clone'>clone</span>
|
1875
|
+
<span class='id identifier rubyid_idbase'>idbase</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span> <span class='symbol'>:errors</span>
|
1876
|
+
<span class='id identifier rubyid_idbase'>idbase</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span> <span class='symbol'>:file</span>
|
1877
|
+
<span class='id identifier rubyid_idbase'>idbase</span><span class='period'>.</span><span class='id identifier rubyid_delete'>delete</span> <span class='symbol'>:warn</span>
|
1878
|
+
|
1879
|
+
<span class='id identifier rubyid_id'>id</span> <span class='op'>=</span> <span class='const'>Digest</span><span class='op'>::</span><span class='const'>SHA1</span><span class='period'>.</span><span class='id identifier rubyid_hexdigest'>hexdigest</span><span class='lparen'>(</span><span class='id identifier rubyid_idbase'>idbase</span><span class='period'>.</span><span class='id identifier rubyid_to_json'>to_json</span><span class='rparen'>)</span>
|
1880
|
+
|
1881
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:parser</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='const'>Argos</span><span class='period'>.</span><span class='id identifier rubyid_library_version'>library_version</span>
|
1882
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:id</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_id'>id</span>
|
1883
|
+
<span class='id identifier rubyid_m'>m</span><span class='lbracket'>[</span><span class='symbol'>:bundle</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_bundle'>bundle</span>
|
1884
|
+
<span class='id identifier rubyid_m'>m</span>
|
1885
|
+
<span class='kw'>end</span></pre>
|
1886
|
+
</td>
|
1887
|
+
</tr>
|
1888
|
+
</table>
|
1889
|
+
</div>
|
1890
|
+
|
1891
|
+
<div class="method_details ">
|
1892
|
+
<h3 class="signature " id="parse-instance_method">
|
1893
|
+
|
1894
|
+
- (<tt><span class='object_link'><a href="" title="Argos::Ds (class)">Argos::Ds</a></span></tt>) <strong>parse</strong>(filename = nil)
|
1895
|
+
|
1896
|
+
|
1897
|
+
|
1898
|
+
|
1899
|
+
|
1900
|
+
</h3><div class="docstring">
|
1901
|
+
<div class="discussion">
|
1902
|
+
|
1903
|
+
<p>Parses Argos DS file and returns Argos::Ds -> Array</p>
|
1904
|
+
|
1905
|
+
<p>The parser loops all messages (stored in @messages), before #unfold
|
1906
|
+
creates a sorted Array of measurements</p>
|
1907
|
+
|
1908
|
+
|
1909
|
+
</div>
|
1910
|
+
</div>
|
1911
|
+
<div class="tags">
|
1912
|
+
<p class="tag_title">Parameters:</p>
|
1913
|
+
<ul class="param">
|
1914
|
+
|
1915
|
+
<li>
|
1916
|
+
|
1917
|
+
<span class='name'>filename</span>
|
1918
|
+
|
1919
|
+
|
1920
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1921
|
+
|
1922
|
+
|
1923
|
+
<em class="default">(defaults to: <tt>nil</tt>)</em>
|
1924
|
+
|
1925
|
+
|
1926
|
+
—
|
1927
|
+
<div class='inline'>
|
1928
|
+
<p>Filename of Argos DS file</p>
|
1929
|
+
</div>
|
1930
|
+
|
1931
|
+
</li>
|
1932
|
+
|
1933
|
+
</ul>
|
1934
|
+
|
1935
|
+
<p class="tag_title">Returns:</p>
|
1936
|
+
<ul class="return">
|
1937
|
+
|
1938
|
+
<li>
|
1939
|
+
|
1940
|
+
|
1941
|
+
<span class='type'>(<tt><span class='object_link'><a href="" title="Argos::Ds (class)">Argos::Ds</a></span></tt>)</span>
|
1942
|
+
|
1943
|
+
|
1944
|
+
|
1945
|
+
</li>
|
1946
|
+
|
1947
|
+
</ul>
|
1948
|
+
|
1949
|
+
</div><table class="source_code">
|
1950
|
+
<tr>
|
1951
|
+
<td>
|
1952
|
+
<pre class="lines">
|
1953
|
+
|
1954
|
+
|
1955
|
+
58
|
1956
|
+
59
|
1957
|
+
60
|
1958
|
+
61
|
1959
|
+
62
|
1960
|
+
63
|
1961
|
+
64
|
1962
|
+
65
|
1963
|
+
66
|
1964
|
+
67
|
1965
|
+
68
|
1966
|
+
69
|
1967
|
+
70
|
1968
|
+
71
|
1969
|
+
72
|
1970
|
+
73
|
1971
|
+
74
|
1972
|
+
75
|
1973
|
+
76
|
1974
|
+
77
|
1975
|
+
78
|
1976
|
+
79
|
1977
|
+
80
|
1978
|
+
81
|
1979
|
+
82
|
1980
|
+
83
|
1981
|
+
84
|
1982
|
+
85
|
1983
|
+
86
|
1984
|
+
87
|
1985
|
+
88
|
1986
|
+
89
|
1987
|
+
90
|
1988
|
+
91
|
1989
|
+
92
|
1990
|
+
93
|
1991
|
+
94
|
1992
|
+
95
|
1993
|
+
96
|
1994
|
+
97
|
1995
|
+
98
|
1996
|
+
99
|
1997
|
+
100
|
1998
|
+
101
|
1999
|
+
102
|
2000
|
+
103
|
2001
|
+
104
|
2002
|
+
105
|
2003
|
+
106
|
2004
|
+
107
|
2005
|
+
108
|
2006
|
+
109
|
2007
|
+
110
|
2008
|
+
111
|
2009
|
+
112
|
2010
|
+
113
|
2011
|
+
114
|
2012
|
+
115
|
2013
|
+
116
|
2014
|
+
117
|
2015
|
+
118
|
2016
|
+
119
|
2017
|
+
120
|
2018
|
+
121
|
2019
|
+
122
|
2020
|
+
123
|
2021
|
+
124
|
2022
|
+
125
|
2023
|
+
126
|
2024
|
+
127
|
2025
|
+
128
|
2026
|
+
129
|
2027
|
+
130
|
2028
|
+
131
|
2029
|
+
132
|
2030
|
+
133
|
2031
|
+
134
|
2032
|
+
135
|
2033
|
+
136
|
2034
|
+
137
|
2035
|
+
138
|
2036
|
+
139
|
2037
|
+
140
|
2038
|
+
141
|
2039
|
+
142
|
2040
|
+
143
|
2041
|
+
144
|
2042
|
+
145
|
2043
|
+
146
|
2044
|
+
147
|
2045
|
+
148
|
2046
|
+
149
|
2047
|
+
150
|
2048
|
+
151
|
2049
|
+
152
|
2050
|
+
153
|
2051
|
+
154
|
2052
|
+
155
|
2053
|
+
156
|
2054
|
+
157</pre>
|
2055
|
+
</td>
|
2056
|
+
<td>
|
2057
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 58</span>
|
2058
|
+
|
2059
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='op'>=</span><span class='kw'>nil</span><span class='rparen'>)</span>
|
2060
|
+
|
2061
|
+
<span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_clear'>clear</span> <span class='comment'># Needed if you parse multiple times
|
2062
|
+
</span> <span class='ivar'>@messages</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
2063
|
+
<span class='ivar'>@valid</span> <span class='op'>=</span> <span class='kw'>false</span>
|
2064
|
+
|
2065
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_filename'>filename</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
2066
|
+
<span class='id identifier rubyid_filename'>filename</span> <span class='op'>=</span> <span class='ivar'>@filename</span>
|
2067
|
+
<span class='kw'>end</span>
|
2068
|
+
|
2069
|
+
|
2070
|
+
<span class='id identifier rubyid_filename'>filename</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_realpath'>realpath</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span>
|
2071
|
+
<span class='ivar'>@filename</span> <span class='op'>=</span> <span class='id identifier rubyid_filename'>filename</span>
|
2072
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_filename'>filename</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>or</span> <span class='kw'>not</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_exists?'>exists?</span> <span class='id identifier rubyid_filename'>filename</span>
|
2073
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Missing ARGOS DS file: \"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_content'>\"</span><span class='tstring_end'>"</span></span>
|
2074
|
+
<span class='kw'>end</span>
|
2075
|
+
<span class='ivar'>@sha1</span> <span class='op'>=</span> <span class='const'>Digest</span><span class='op'>::</span><span class='const'>SHA1</span><span class='period'>.</span><span class='id identifier rubyid_file'>file</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_hexdigest'>hexdigest</span>
|
2076
|
+
|
2077
|
+
<span class='id identifier rubyid_contact'>contact</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
2078
|
+
<span class='id identifier rubyid_file'>file</span> <span class='op'>=</span> <span class='const'>File</span><span class='period'>.</span><span class='id identifier rubyid_open'>open</span><span class='lparen'>(</span><span class='id identifier rubyid_filename'>filename</span><span class='rparen'>)</span>
|
2079
|
+
<span class='ivar'>@filesize</span> <span class='op'>=</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
|
2080
|
+
<span class='ivar'>@updated</span> <span class='op'>=</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_mtime'>mtime</span><span class='period'>.</span><span class='id identifier rubyid_utc'>utc</span>
|
2081
|
+
|
2082
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Parsing ARGOS DS file </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_content'> source:</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sha1'>sha1</span><span class='embexpr_end'>}</span><span class='tstring_content'> (</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filesize'>filesize</span><span class='embexpr_end'>}</span><span class='tstring_content'> bytes)</span><span class='tstring_end'>"</span></span>
|
2083
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_filter?'>filter?</span>
|
2084
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Using filter: </span><span class='embexpr_beg'>#{</span><span class='ivar'>@filtername</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='op'>?</span> <span class='id identifier rubyid_filter'>filter</span> <span class='op'>:</span> <span class='ivar'>@filtername</span> <span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2085
|
+
<span class='kw'>end</span>
|
2086
|
+
|
2087
|
+
<span class='id identifier rubyid_firstline'>firstline</span> <span class='op'>=</span> <span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_readline'>readline</span>
|
2088
|
+
<span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_rewind'>rewind</span>
|
2089
|
+
|
2090
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_firstline'>firstline</span> <span class='op'>=~</span> <span class='const'>START_REGEX_LEGACY</span>
|
2091
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_parse_legacy'>parse_legacy</span><span class='lparen'>(</span><span class='id identifier rubyid_file'>file</span><span class='rparen'>)</span>
|
2092
|
+
<span class='kw'>end</span>
|
2093
|
+
|
2094
|
+
<span class='id identifier rubyid_file'>file</span><span class='period'>.</span><span class='id identifier rubyid_each_with_index'>each_with_index</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_line'>line</span><span class='comma'>,</span> <span class='id identifier rubyid_c'>c</span><span class='op'>|</span>
|
2095
|
+
<span class='id identifier rubyid_line'>line</span> <span class='op'>=</span> <span class='id identifier rubyid_line'>line</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span>
|
2096
|
+
|
2097
|
+
<span class='comment'>#if (c+1) % 1000 == 0
|
2098
|
+
</span> <span class='comment'># log.debug "Line: #{c+1}"
|
2099
|
+
</span> <span class='comment'>#end
|
2100
|
+
</span>
|
2101
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_line'>line</span> <span class='op'>=~</span> <span class='const'>START_REGEX</span>
|
2102
|
+
|
2103
|
+
<span class='ivar'>@valid</span> <span class='op'>=</span> <span class='kw'>true</span>
|
2104
|
+
|
2105
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_contact'>contact</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
2106
|
+
<span class='id identifier rubyid_item'>item</span> <span class='op'>=</span> <span class='id identifier rubyid_parse_message'>parse_message</span><span class='lparen'>(</span><span class='id identifier rubyid_contact'>contact</span><span class='rparen'>)</span>
|
2107
|
+
|
2108
|
+
<span class='kw'>if</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_valid_item?'>valid_item?</span> <span class='id identifier rubyid_item'>item</span>
|
2109
|
+
|
2110
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_filter?'>filter?</span> <span class='kw'>or</span> <span class='id identifier rubyid_filter'>filter</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_item'>item</span><span class='rparen'>)</span>
|
2111
|
+
<span class='ivar'>@messages</span> <span class='op'><<</span> <span class='id identifier rubyid_item'>item</span>
|
2112
|
+
<span class='kw'>end</span>
|
2113
|
+
|
2114
|
+
<span class='kw'>else</span>
|
2115
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Argos DS message </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_content'>:</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_c'>c</span><span class='embexpr_end'>}</span><span class='tstring_content'> lacks required program and/or platform</span><span class='tstring_end'>"</span></span>
|
2116
|
+
<span class='kw'>end</span>
|
2117
|
+
<span class='kw'>end</span>
|
2118
|
+
|
2119
|
+
<span class='id identifier rubyid_contact'>contact</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='id identifier rubyid_line'>line</span><span class='rbracket'>]</span>
|
2120
|
+
|
2121
|
+
<span class='kw'>else</span>
|
2122
|
+
<span class='comment'># 2010-12-14 15:11:34 1 00 37 01 52
|
2123
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_contact'>contact</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span> <span class='kw'>and</span> <span class='id identifier rubyid_line'>line</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span>
|
2124
|
+
<span class='id identifier rubyid_contact'>contact</span> <span class='op'><<</span> <span class='id identifier rubyid_line'>line</span>
|
2125
|
+
<span class='kw'>end</span>
|
2126
|
+
<span class='kw'>end</span>
|
2127
|
+
<span class='kw'>end</span>
|
2128
|
+
|
2129
|
+
<span class='kw'>if</span> <span class='kw'>false</span> <span class='op'>==</span> <span class='ivar'>@valid</span>
|
2130
|
+
<span class='comment'>#log.debug file.read
|
2131
|
+
</span> <span class='id identifier rubyid_message'>message</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Cannot parse file: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2132
|
+
<span class='id identifier rubyid_raise'>raise</span> <span class='const'>ArgumentError</span><span class='comma'>,</span> <span class='id identifier rubyid_message'>message</span>
|
2133
|
+
<span class='kw'>end</span>
|
2134
|
+
|
2135
|
+
<span class='id identifier rubyid_last'>last</span> <span class='op'>=</span> <span class='id identifier rubyid_parse_message'>parse_message</span><span class='lparen'>(</span><span class='id identifier rubyid_contact'>contact</span><span class='rparen'>)</span>
|
2136
|
+
|
2137
|
+
<span class='comment'># The last message
|
2138
|
+
</span> <span class='kw'>if</span> <span class='id identifier rubyid_last'>last</span>
|
2139
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_filter?'>filter?</span> <span class='kw'>or</span> <span class='id identifier rubyid_filter'>filter</span><span class='period'>.</span><span class='id identifier rubyid_call'>call</span><span class='lparen'>(</span><span class='id identifier rubyid_last'>last</span><span class='rparen'>)</span>
|
2140
|
+
<span class='ivar'>@messages</span> <span class='op'><<</span> <span class='id identifier rubyid_last'>last</span>
|
2141
|
+
<span class='kw'>end</span>
|
2142
|
+
<span class='kw'>end</span>
|
2143
|
+
|
2144
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Parsed </span><span class='embexpr_beg'>#{</span><span class='ivar'>@messages</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> Argos DS messages into </span><span class='embexpr_beg'>#{</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_class'>class</span><span class='period'>.</span><span class='id identifier rubyid_name'>name</span><span class='embexpr_end'>}</span><span class='tstring_content'> Array</span><span class='tstring_end'>"</span></span>
|
2145
|
+
<span class='ivar'>@segments</span> <span class='op'>=</span> <span class='ivar'>@messages</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span>
|
2146
|
+
<span class='id identifier rubyid_unfold'>unfold</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_d'>d</span><span class='op'>|</span>
|
2147
|
+
<span class='kw'>self</span> <span class='op'><<</span> <span class='id identifier rubyid_d'>d</span>
|
2148
|
+
<span class='kw'>end</span>
|
2149
|
+
|
2150
|
+
<span class='ivar'>@multiplicates</span> <span class='op'>=</span> <span class='id identifier rubyid_group_by'>group_by</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_e'>e</span><span class='op'>|</span> <span class='id identifier rubyid_e'>e</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_select'>select</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>></span> <span class='int'>1</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span><span class='lparen'>(</span><span class='op'>&</span><span class='symbol'>:first</span><span class='rparen'>)</span>
|
2151
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_multiplicates'>multiplicates</span><span class='period'>.</span><span class='id identifier rubyid_any?'>any?</span>
|
2152
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_warn'>warn</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_multiplicates'>multiplicates</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> multiplicates in source sha1 </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sha1'>sha1</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_content'>): </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_multiplicates'>multiplicates</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_a'>a</span><span class='op'>|</span><span class='id identifier rubyid_a'>a</span><span class='lbracket'>[</span><span class='symbol'>:id</span><span class='rbracket'>]</span><span class='rbrace'>}</span> <span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2153
|
+
<span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_uniq!'>uniq!</span>
|
2154
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Unique DS messages: </span><span class='embexpr_beg'>#{</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> sha1: </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sha1'>sha1</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2155
|
+
<span class='kw'>end</span>
|
2156
|
+
<span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_sort_by!'>sort_by!</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:measured</span><span class='rbracket'>]</span><span class='rbrace'>}</span>
|
2157
|
+
<span class='kw'>self</span>
|
2158
|
+
<span class='kw'>end</span></pre>
|
2159
|
+
</td>
|
2160
|
+
</tr>
|
2161
|
+
</table>
|
2162
|
+
</div>
|
2163
|
+
|
2164
|
+
<div class="method_details ">
|
2165
|
+
<h3 class="signature " id="parse_message-instance_method">
|
2166
|
+
|
2167
|
+
- (<tt>Object</tt>) <strong>parse_message</strong>(contact)
|
2168
|
+
|
2169
|
+
|
2170
|
+
|
2171
|
+
|
2172
|
+
|
2173
|
+
</h3><div class="docstring">
|
2174
|
+
<div class="discussion">
|
2175
|
+
|
2176
|
+
<p>Pare one DS segment</p>
|
2177
|
+
|
2178
|
+
|
2179
|
+
</div>
|
2180
|
+
</div>
|
2181
|
+
<div class="tags">
|
2182
|
+
|
2183
|
+
|
2184
|
+
</div><table class="source_code">
|
2185
|
+
<tr>
|
2186
|
+
<td>
|
2187
|
+
<pre class="lines">
|
2188
|
+
|
2189
|
+
|
2190
|
+
160
|
2191
|
+
161
|
2192
|
+
162
|
2193
|
+
163
|
2194
|
+
164
|
2195
|
+
165</pre>
|
2196
|
+
</td>
|
2197
|
+
<td>
|
2198
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 160</span>
|
2199
|
+
|
2200
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_parse_message'>parse_message</span><span class='lparen'>(</span><span class='id identifier rubyid_contact'>contact</span><span class='rparen'>)</span>
|
2201
|
+
<span class='id identifier rubyid_header'>header</span> <span class='op'>=</span> <span class='id identifier rubyid_contact'>contact</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span>
|
2202
|
+
<span class='id identifier rubyid_body'>body</span> <span class='op'>=</span> <span class='id identifier rubyid_contact'>contact</span><span class='lbracket'>[</span><span class='int'>1</span><span class='comma'>,</span><span class='id identifier rubyid_contact'>contact</span><span class='period'>.</span><span class='id identifier rubyid_count'>count</span><span class='rbracket'>]</span>
|
2203
|
+
<span class='id identifier rubyid_items'>items</span> <span class='op'>=</span> <span class='id identifier rubyid_process_item_body'>process_item_body</span><span class='lparen'>(</span><span class='id identifier rubyid_body'>body</span><span class='rparen'>)</span>
|
2204
|
+
<span class='id identifier rubyid_combine_header_with_transmission'>combine_header_with_transmission</span><span class='lparen'>(</span><span class='id identifier rubyid_items'>items</span><span class='comma'>,</span> <span class='id identifier rubyid_header'>header</span><span class='rparen'>)</span>
|
2205
|
+
<span class='kw'>end</span></pre>
|
2206
|
+
</td>
|
2207
|
+
</tr>
|
2208
|
+
</table>
|
2209
|
+
</div>
|
2210
|
+
|
2211
|
+
<div class="method_details ">
|
2212
|
+
<h3 class="signature " id="process_item_body-instance_method">
|
2213
|
+
|
2214
|
+
- (<tt>Object</tt>) <strong>process_item_body</strong>(body_arr)
|
2215
|
+
|
2216
|
+
|
2217
|
+
|
2218
|
+
|
2219
|
+
|
2220
|
+
</h3><table class="source_code">
|
2221
|
+
<tr>
|
2222
|
+
<td>
|
2223
|
+
<pre class="lines">
|
2224
|
+
|
2225
|
+
|
2226
|
+
365
|
2227
|
+
366
|
2228
|
+
367
|
2229
|
+
368
|
2230
|
+
369</pre>
|
2231
|
+
</td>
|
2232
|
+
<td>
|
2233
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 365</span>
|
2234
|
+
|
2235
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_process_item_body'>process_item_body</span><span class='lparen'>(</span><span class='id identifier rubyid_body_arr'>body_arr</span><span class='rparen'>)</span>
|
2236
|
+
<span class='ivar'>@buf</span> <span class='op'>=</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span>
|
2237
|
+
<span class='ivar'>@transmission_arr</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
2238
|
+
<span class='ivar'>@transmission_arr</span> <span class='op'>=</span> <span class='id identifier rubyid_recursive_transmission_parse'>recursive_transmission_parse</span><span class='lparen'>(</span><span class='id identifier rubyid_body_arr'>body_arr</span><span class='rparen'>)</span>
|
2239
|
+
<span class='kw'>end</span></pre>
|
2240
|
+
</td>
|
2241
|
+
</tr>
|
2242
|
+
</table>
|
2243
|
+
</div>
|
2244
|
+
|
2245
|
+
<div class="method_details ">
|
2246
|
+
<h3 class="signature " id="recursive_transmission_parse-instance_method">
|
2247
|
+
|
2248
|
+
- (<tt>Aray</tt>) <strong>recursive_transmission_parse</strong>(body_arr)
|
2249
|
+
|
2250
|
+
|
2251
|
+
|
2252
|
+
|
2253
|
+
|
2254
|
+
</h3><div class="docstring">
|
2255
|
+
<div class="discussion">
|
2256
|
+
|
2257
|
+
<p> @param [Array] body_arr</p>
|
2258
|
+
|
2259
|
+
|
2260
|
+
</div>
|
2261
|
+
</div>
|
2262
|
+
<div class="tags">
|
2263
|
+
|
2264
|
+
<p class="tag_title">Returns:</p>
|
2265
|
+
<ul class="return">
|
2266
|
+
|
2267
|
+
<li>
|
2268
|
+
|
2269
|
+
|
2270
|
+
<span class='type'>(<tt>Aray</tt>)</span>
|
2271
|
+
|
2272
|
+
|
2273
|
+
|
2274
|
+
</li>
|
2275
|
+
|
2276
|
+
</ul>
|
2277
|
+
|
2278
|
+
</div><table class="source_code">
|
2279
|
+
<tr>
|
2280
|
+
<td>
|
2281
|
+
<pre class="lines">
|
2282
|
+
|
2283
|
+
|
2284
|
+
374
|
2285
|
+
375
|
2286
|
+
376
|
2287
|
+
377
|
2288
|
+
378
|
2289
|
+
379
|
2290
|
+
380
|
2291
|
+
381
|
2292
|
+
382
|
2293
|
+
383
|
2294
|
+
384
|
2295
|
+
385
|
2296
|
+
386</pre>
|
2297
|
+
</td>
|
2298
|
+
<td>
|
2299
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 374</span>
|
2300
|
+
|
2301
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_recursive_transmission_parse'>recursive_transmission_parse</span><span class='lparen'>(</span><span class='id identifier rubyid_body_arr'>body_arr</span><span class='rparen'>)</span>
|
2302
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_body_arr'>body_arr</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='kw'>or</span> <span class='id identifier rubyid_body_arr'>body_arr</span><span class='period'>.</span><span class='id identifier rubyid_empty?'>empty?</span>
|
2303
|
+
<span class='kw'>return</span>
|
2304
|
+
<span class='kw'>end</span>
|
2305
|
+
<span class='ivar'>@buf</span> <span class='op'>=</span><span class='ivar'>@buf</span> <span class='op'>+</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='tstring_end'>"</span></span> <span class='op'>+</span> <span class='id identifier rubyid_body_arr'>body_arr</span><span class='lbracket'>[</span><span class='int'>0</span><span class='rbracket'>]</span>
|
2306
|
+
|
2307
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_body_arr'>body_arr</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span> <span class='op'>=~</span> <span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2}</span><span class='regexp_end'>/</span></span> <span class='kw'>or</span> <span class='id identifier rubyid_body_arr'>body_arr</span><span class='lbracket'>[</span><span class='int'>1</span><span class='rbracket'>]</span><span class='op'>==</span><span class='kw'>nil</span>
|
2308
|
+
<span class='ivar'>@transmission_arr</span> <span class='op'><<</span> <span class='id identifier rubyid_transmission_package'>transmission_package</span><span class='lparen'>(</span><span class='ivar'>@buf</span><span class='rparen'>)</span>
|
2309
|
+
<span class='ivar'>@buf</span><span class='op'>=</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_end'>"</span></span>
|
2310
|
+
<span class='kw'>end</span>
|
2311
|
+
<span class='id identifier rubyid_recursive_transmission_parse'>recursive_transmission_parse</span><span class='lparen'>(</span><span class='id identifier rubyid_body_arr'>body_arr</span><span class='lbracket'>[</span><span class='int'>1</span><span class='comma'>,</span><span class='id identifier rubyid_body_arr'>body_arr</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
2312
|
+
<span class='ivar'>@transmission_arr</span>
|
2313
|
+
<span class='kw'>end</span></pre>
|
2314
|
+
</td>
|
2315
|
+
</tr>
|
2316
|
+
</table>
|
2317
|
+
</div>
|
2318
|
+
|
2319
|
+
<div class="method_details ">
|
2320
|
+
<h3 class="signature " id="source-instance_method">
|
2321
|
+
|
2322
|
+
- (<tt>Object</tt>) <strong>source</strong>
|
2323
|
+
|
2324
|
+
|
2325
|
+
|
2326
|
+
|
2327
|
+
|
2328
|
+
</h3><table class="source_code">
|
2329
|
+
<tr>
|
2330
|
+
<td>
|
2331
|
+
<pre class="lines">
|
2332
|
+
|
2333
|
+
|
2334
|
+
412
|
2335
|
+
413
|
2336
|
+
414</pre>
|
2337
|
+
</td>
|
2338
|
+
<td>
|
2339
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 412</span>
|
2340
|
+
|
2341
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_source'>source</span>
|
2342
|
+
<span class='ivar'>@sha1</span>
|
2343
|
+
<span class='kw'>end</span></pre>
|
2344
|
+
</td>
|
2345
|
+
</tr>
|
2346
|
+
</table>
|
2347
|
+
</div>
|
2348
|
+
|
2349
|
+
<div class="method_details ">
|
2350
|
+
<h3 class="signature " id="start-instance_method">
|
2351
|
+
|
2352
|
+
- (<tt>Object</tt>) <strong>start</strong>
|
2353
|
+
|
2354
|
+
|
2355
|
+
|
2356
|
+
|
2357
|
+
|
2358
|
+
</h3><table class="source_code">
|
2359
|
+
<tr>
|
2360
|
+
<td>
|
2361
|
+
<pre class="lines">
|
2362
|
+
|
2363
|
+
|
2364
|
+
404
|
2365
|
+
405
|
2366
|
+
406</pre>
|
2367
|
+
</td>
|
2368
|
+
<td>
|
2369
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 404</span>
|
2370
|
+
|
2371
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_start'>start</span>
|
2372
|
+
<span class='id identifier rubyid_positioned'>positioned</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span> <span class='id identifier rubyid_ds'>ds</span> <span class='lbracket'>[</span><span class='symbol'>:positioned</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_first'>first</span>
|
2373
|
+
<span class='kw'>end</span></pre>
|
2374
|
+
</td>
|
2375
|
+
</tr>
|
2376
|
+
</table>
|
2377
|
+
</div>
|
2378
|
+
|
2379
|
+
<div class="method_details ">
|
2380
|
+
<h3 class="signature " id="stop-instance_method">
|
2381
|
+
|
2382
|
+
- (<tt>Object</tt>) <strong>stop</strong>
|
2383
|
+
|
2384
|
+
|
2385
|
+
|
2386
|
+
|
2387
|
+
|
2388
|
+
</h3><table class="source_code">
|
2389
|
+
<tr>
|
2390
|
+
<td>
|
2391
|
+
<pre class="lines">
|
2392
|
+
|
2393
|
+
|
2394
|
+
408
|
2395
|
+
409
|
2396
|
+
410</pre>
|
2397
|
+
</td>
|
2398
|
+
<td>
|
2399
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 408</span>
|
2400
|
+
|
2401
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_stop'>stop</span>
|
2402
|
+
<span class='id identifier rubyid_positioned'>positioned</span><span class='period'>.</span><span class='id identifier rubyid_map'>map</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span> <span class='id identifier rubyid_ds'>ds</span> <span class='lbracket'>[</span><span class='symbol'>:positioned</span><span class='rbracket'>]</span> <span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_last'>last</span>
|
2403
|
+
<span class='kw'>end</span></pre>
|
2404
|
+
</td>
|
2405
|
+
</tr>
|
2406
|
+
</table>
|
2407
|
+
</div>
|
2408
|
+
|
2409
|
+
<div class="method_details ">
|
2410
|
+
<h3 class="signature " id="transmission_package-instance_method">
|
2411
|
+
|
2412
|
+
- (<tt>Object</tt>) <strong>transmission_package</strong>(data)
|
2413
|
+
|
2414
|
+
|
2415
|
+
|
2416
|
+
|
2417
|
+
|
2418
|
+
</h3><table class="source_code">
|
2419
|
+
<tr>
|
2420
|
+
<td>
|
2421
|
+
<pre class="lines">
|
2422
|
+
|
2423
|
+
|
2424
|
+
388
|
2425
|
+
389
|
2426
|
+
390
|
2427
|
+
391
|
2428
|
+
392
|
2429
|
+
393
|
2430
|
+
394
|
2431
|
+
395
|
2432
|
+
396
|
2433
|
+
397
|
2434
|
+
398
|
2435
|
+
399
|
2436
|
+
400
|
2437
|
+
401
|
2438
|
+
402</pre>
|
2439
|
+
</td>
|
2440
|
+
<td>
|
2441
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 388</span>
|
2442
|
+
|
2443
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_transmission_package'>transmission_package</span><span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='rparen'>)</span>
|
2444
|
+
<span class='id identifier rubyid_transmission_time'>transmission_time</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='lbracket'>[</span><span class='tstring'><span class='regexp_beg'>/</span><span class='tstring_content'>(\d{4}-\d{2}-\d{2} \d{2}:\d{2}:\d{2})</span><span class='regexp_end'>/</span></span><span class='comma'>,</span><span class='int'>1</span><span class='rbracket'>]</span>
|
2445
|
+
<span class='id identifier rubyid_transmission_time'>transmission_time</span> <span class='op'>=</span> <span class='id identifier rubyid_convert_datetime'>convert_datetime</span><span class='lparen'>(</span><span class='id identifier rubyid_transmission_time'>transmission_time</span><span class='rparen'>)</span>
|
2446
|
+
|
2447
|
+
<span class='id identifier rubyid_identical'>identical</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='tstring_end'>"</span></span><span class='rparen'>)</span><span class='lbracket'>[</span><span class='int'>2</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span>
|
2448
|
+
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_strip'>strip</span><span class='lbracket'>[</span><span class='int'>23</span><span class='comma'>,</span><span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_length'>length</span><span class='rbracket'>]</span>
|
2449
|
+
|
2450
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
2451
|
+
<span class='id identifier rubyid_sensor_data'>sensor_data</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_split'>split</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'> </span><span class='tstring_end'>"</span></span><span class='rparen'>)</span>
|
2452
|
+
<span class='kw'>end</span>
|
2453
|
+
<span class='lbrace'>{</span> <span class='label'>measured:</span> <span class='id identifier rubyid_transmission_time'>transmission_time</span><span class='comma'>,</span>
|
2454
|
+
<span class='label'>identical:</span> <span class='id identifier rubyid_identical'>identical</span><span class='comma'>,</span>
|
2455
|
+
<span class='label'>sensor_data:</span> <span class='id identifier rubyid_sensor_data'>sensor_data</span>
|
2456
|
+
<span class='rbrace'>}</span>
|
2457
|
+
<span class='kw'>end</span></pre>
|
2458
|
+
</td>
|
2459
|
+
</tr>
|
2460
|
+
</table>
|
2461
|
+
</div>
|
2462
|
+
|
2463
|
+
<div class="method_details ">
|
2464
|
+
<h3 class="signature " id="type-instance_method">
|
2465
|
+
|
2466
|
+
- (<tt>Object</tt>) <strong>type</strong>
|
2467
|
+
|
2468
|
+
|
2469
|
+
|
2470
|
+
|
2471
|
+
|
2472
|
+
</h3><table class="source_code">
|
2473
|
+
<tr>
|
2474
|
+
<td>
|
2475
|
+
<pre class="lines">
|
2476
|
+
|
2477
|
+
|
2478
|
+
167
|
2479
|
+
168
|
2480
|
+
169</pre>
|
2481
|
+
</td>
|
2482
|
+
<td>
|
2483
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 167</span>
|
2484
|
+
|
2485
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_type'>type</span>
|
2486
|
+
<span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>ds</span><span class='tstring_end'>"</span></span>
|
2487
|
+
<span class='kw'>end</span></pre>
|
2488
|
+
</td>
|
2489
|
+
</tr>
|
2490
|
+
</table>
|
2491
|
+
</div>
|
2492
|
+
|
2493
|
+
<div class="method_details ">
|
2494
|
+
<h3 class="signature " id="unfold-instance_method">
|
2495
|
+
|
2496
|
+
- (<tt>Object</tt>) <strong>unfold</strong>
|
2497
|
+
|
2498
|
+
|
2499
|
+
|
2500
|
+
|
2501
|
+
|
2502
|
+
</h3><div class="docstring">
|
2503
|
+
<div class="discussion">
|
2504
|
+
|
2505
|
+
<p>Merge position and all other top-level DS fields with each measurement line
|
2506
|
+
(containing sensor data) The 3 lines below will unfold to
|
2507
|
+
<strong>2</strong> documents, each with “positioned”:2010-03-05T14:19:06Z,
|
2508
|
+
“platform”: “23695”, “latitude”:“79.989”, etc. 23695 074772 3 4 M B
|
2509
|
+
2010-03-05 14:19:06 79.989 12.644 0.036 401639707</p>
|
2510
|
+
|
2511
|
+
<pre class="code ruby"><code class="ruby">2010-03-05 14:17:35 1 01 25 37630 36
|
2512
|
+
2010-03-05 14:20:38 1 00 28 00 65</code></pre>
|
2513
|
+
|
2514
|
+
|
2515
|
+
</div>
|
2516
|
+
</div>
|
2517
|
+
<div class="tags">
|
2518
|
+
|
2519
|
+
|
2520
|
+
</div><table class="source_code">
|
2521
|
+
<tr>
|
2522
|
+
<td>
|
2523
|
+
<pre class="lines">
|
2524
|
+
|
2525
|
+
|
2526
|
+
275
|
2527
|
+
276
|
2528
|
+
277
|
2529
|
+
278
|
2530
|
+
279
|
2531
|
+
280
|
2532
|
+
281
|
2533
|
+
282
|
2534
|
+
283
|
2535
|
+
284
|
2536
|
+
285
|
2537
|
+
286
|
2538
|
+
287
|
2539
|
+
288
|
2540
|
+
289
|
2541
|
+
290
|
2542
|
+
291
|
2543
|
+
292
|
2544
|
+
293
|
2545
|
+
294
|
2546
|
+
295
|
2547
|
+
296
|
2548
|
+
297
|
2549
|
+
298
|
2550
|
+
299
|
2551
|
+
300
|
2552
|
+
301
|
2553
|
+
302
|
2554
|
+
303</pre>
|
2555
|
+
</td>
|
2556
|
+
<td>
|
2557
|
+
<pre class="code"><span class="info file"># File 'lib/argos/ds.rb', line 275</span>
|
2558
|
+
|
2559
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_unfold'>unfold</span>
|
2560
|
+
|
2561
|
+
<span class='comment'># First, grab all segments *without* measurements (if any)
|
2562
|
+
</span> <span class='id identifier rubyid_unfolded'>unfolded</span> <span class='op'>=</span> <span class='id identifier rubyid_messages'>messages</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span> <span class='id identifier rubyid_ds'>ds</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span><span class='lparen'>(</span><span class='symbol'>:measurements</span><span class='rparen'>)</span> <span class='kw'>or</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:measurements</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span> <span class='rbrace'>}</span>
|
2563
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_debug'>debug</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_messages'>messages</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span> <span class='op'>-</span> <span class='id identifier rubyid_unfolded'>unfolded</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> / </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_messages'>messages</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> messages contained measurements</span><span class='tstring_end'>"</span></span>
|
2564
|
+
|
2565
|
+
<span class='id identifier rubyid_messages'>messages</span><span class='period'>.</span><span class='id identifier rubyid_select'>select</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span>
|
2566
|
+
<span class='id identifier rubyid_ds'>ds</span><span class='period'>.</span><span class='id identifier rubyid_key?'>key?</span><span class='lparen'>(</span><span class='symbol'>:measurements</span><span class='rparen'>)</span> <span class='kw'>and</span> <span class='kw'>not</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:measurements</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
2567
|
+
<span class='rbrace'>}</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span>
|
2568
|
+
|
2569
|
+
<span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:measurements</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_measurement'>measurement</span><span class='op'>|</span>
|
2570
|
+
<span class='id identifier rubyid_unfolded'>unfolded</span> <span class='op'><<</span> <span class='id identifier rubyid_merge'>merge</span><span class='lparen'>(</span><span class='id identifier rubyid_ds'>ds</span><span class='comma'>,</span><span class='id identifier rubyid_measurement'>measurement</span><span class='rparen'>)</span>
|
2571
|
+
<span class='kw'>end</span>
|
2572
|
+
<span class='kw'>end</span>
|
2573
|
+
|
2574
|
+
<span class='id identifier rubyid_unfolded'>unfolded</span> <span class='op'>=</span> <span class='id identifier rubyid_unfolded'>unfolded</span><span class='period'>.</span><span class='id identifier rubyid_sort_by'>sort_by</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_ds'>ds</span><span class='op'>|</span>
|
2575
|
+
<span class='kw'>if</span> <span class='kw'>not</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:measured</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
2576
|
+
<span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:measured</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
2577
|
+
<span class='kw'>elsif</span> <span class='kw'>not</span> <span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:positioned</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_nil?'>nil?</span>
|
2578
|
+
<span class='const'>DateTime</span><span class='period'>.</span><span class='id identifier rubyid_parse'>parse</span><span class='lparen'>(</span><span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:positioned</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
2579
|
+
<span class='kw'>else</span>
|
2580
|
+
<span class='id identifier rubyid_ds'>ds</span><span class='lbracket'>[</span><span class='symbol'>:program</span><span class='rbracket'>]</span>
|
2581
|
+
<span class='kw'>end</span>
|
2582
|
+
<span class='rbrace'>}</span>
|
2583
|
+
|
2584
|
+
<span class='id identifier rubyid_log'>log</span><span class='period'>.</span><span class='id identifier rubyid_info'>info</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>Unfolded </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_messages'>messages</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> ARGOS DS position and sensor messages into </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_unfolded'>unfolded</span><span class='period'>.</span><span class='id identifier rubyid_size'>size</span><span class='embexpr_end'>}</span><span class='tstring_content'> new documents source:</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_sha1'>sha1</span><span class='embexpr_end'>}</span><span class='tstring_content'> </span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_filename'>filename</span><span class='embexpr_end'>}</span><span class='tstring_end'>"</span></span>
|
2585
|
+
|
2586
|
+
<span class='id identifier rubyid_unfolded'>unfolded</span>
|
2587
|
+
<span class='kw'>end</span></pre>
|
2588
|
+
</td>
|
2589
|
+
</tr>
|
2590
|
+
</table>
|
2591
|
+
</div>
|
2592
|
+
|
2593
|
+
</div>
|
2594
|
+
|
2595
|
+
</div>
|
2596
|
+
|
2597
|
+
<div id="footer">
|
2598
|
+
Generated on Wed Nov 26 17:02:38 2014 by
|
2599
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
2600
|
+
0.8.7.6 (ruby-2.1.1).
|
2601
|
+
</div>
|
2602
|
+
|
2603
|
+
</body>
|
2604
|
+
</html>
|