File tree Expand file tree Collapse file tree 3 files changed +16
-18
lines changed Expand file tree Collapse file tree 3 files changed +16
-18
lines changed Original file line number Diff line number Diff line change
1
+ # v0.3.0
2
+ ## Breaking Changes
3
+ - Flatten graphic header to an array of packets and omit page and length values
4
+
1
5
# v0.2.0
2
6
## Breaking Changes
3
7
- Parsers no longer return delimeters, block lengths, or IDs as these are internally evaluated and checked during the parsing process
Original file line number Diff line number Diff line change 1
1
{
2
2
"name" : " nexrad-level-3-data" ,
3
- "version" : " 0.2.1 " ,
3
+ "version" : " 0.3.0 " ,
4
4
"description" : " Parsing of NEXRAD level 3 data files" ,
5
5
"main" : " src/index.js" ,
6
6
"scripts" : {
Original file line number Diff line number Diff line change @@ -11,36 +11,30 @@ const parse = (raf) => {
11
11
if ( blockLength < 1 || blockLength > 65535 ) throw new Error ( `Invalid block length ${ blockLength } ` ) ;
12
12
if ( ( blockLength + raf . getPos ( ) - 8 ) > raf . getLength ( ) ) throw new Error ( `Block length ${ blockLength } overruns file length for block id: ${ blockId } ` ) ;
13
13
14
- const result = {
15
- numberPages : raf . readShort ( ) ,
16
- pages : [ ] ,
17
- } ;
14
+ const numberPages = raf . readShort ( ) ;
18
15
19
- if ( result . numberPages < 1 || result . numberPages > 48 - 1 ) throw new Error ( `Invalid graphic number of pages: ${ result . numberPages } ` ) ;
16
+ const packets = [ ] ;
17
+
18
+ if ( numberPages < 1 || numberPages > 48 - 1 ) throw new Error ( `Invalid graphic number of pages: ${ numberPages } ` ) ;
20
19
21
20
// read each page
22
- for ( let pageNum = 0 ; pageNum < result . numberPages ; pageNum += 1 ) {
23
- const page = {
24
- number : raf . readShort ( ) ,
25
- length : raf . readShort ( ) ,
26
- packets : [ ] ,
27
- } ;
21
+ for ( let pageNum = 0 ; pageNum < numberPages ; pageNum += 1 ) {
22
+ const pageNumber = raf . readShort ( ) ;
23
+ const pageLength = raf . readShort ( ) ;
28
24
29
25
// calculate end byte
30
- const endByte = raf . getPos ( ) + page . length ;
26
+ const endByte = raf . getPos ( ) + pageLength ;
31
27
32
28
// test page number
33
- if ( pageNum + 1 !== page . number ) throw new Error ( `Invalid page number: ${ page . number } ` ) ;
29
+ if ( pageNum + 1 !== pageNumber ) throw new Error ( `Invalid page number: ${ pageNumber } ` ) ;
34
30
35
31
// loop through all packets
36
32
while ( raf . getPos ( ) < endByte ) {
37
- page . packets . push ( parser ( raf ) ) ;
33
+ packets . push ( parser ( raf ) ) ;
38
34
}
39
-
40
- result . pages . push ( page ) ;
41
35
}
42
36
43
- return result ;
37
+ return packets ;
44
38
} ;
45
39
46
40
//
You can’t perform that action at this time.
0 commit comments