edfcore 0.6.121 → 0.6.123
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.
- package/dist/constants.d.ts +1 -1
- package/dist/constants.js +1 -1
- package/dist/decode/digital.d.ts +22 -0
- package/dist/decode/digital.d.ts.map +1 -1
- package/dist/decode/digital.js +26 -0
- package/dist/decode/digital.js.map +1 -1
- package/dist/tal/annotations.d.ts.map +1 -1
- package/dist/tal/annotations.js +2 -0
- package/dist/tal/annotations.js.map +1 -1
- package/dist/time/window.d.ts.map +1 -1
- package/dist/time/window.js +23 -0
- package/dist/time/window.js.map +1 -1
- package/docs/CHANGELOG.md +28 -0
- package/package.json +1 -1
- package/src/constants.ts +1 -1
- package/src/decode/digital.ts +31 -0
- package/src/tal/annotations.ts +2 -0
- package/src/time/window.ts +27 -0
package/dist/constants.d.ts
CHANGED
|
@@ -109,5 +109,5 @@ export declare const SIGNAL_FIELD_BLOCK_OFFSETS: {
|
|
|
109
109
|
readonly reserved: 224;
|
|
110
110
|
};
|
|
111
111
|
/** Published package version. Kept in sync with package.json by a test. */
|
|
112
|
-
export declare const VERSION = "0.6.
|
|
112
|
+
export declare const VERSION = "0.6.123";
|
|
113
113
|
//# sourceMappingURL=constants.d.ts.map
|
package/dist/constants.js
CHANGED
package/dist/decode/digital.d.ts
CHANGED
|
@@ -33,6 +33,28 @@ export interface DecodedDigital {
|
|
|
33
33
|
*/
|
|
34
34
|
readonly outOfDigitalRangeCount: number;
|
|
35
35
|
}
|
|
36
|
+
/**
|
|
37
|
+
* `recordBytes` must be exactly the requested records and nothing else.
|
|
38
|
+
*
|
|
39
|
+
* Both halves matter. The range check catches a caller asking for records the file does not
|
|
40
|
+
* have; the length check catches a buffer that does not start where `records.start` says it
|
|
41
|
+
* does — which is unrecoverable rather than merely wrong, because nothing in the bytes
|
|
42
|
+
* identifies which record they came from.
|
|
43
|
+
*/
|
|
44
|
+
/**
|
|
45
|
+
* The header and the record buffer, before either is measured against the other.
|
|
46
|
+
*
|
|
47
|
+
* Both decoders answer a size mismatch by stating the file's own geometry — "1 records of 716 bytes
|
|
48
|
+
* each are exactly 716" — which is the right message and the wrong one to compute from an argument
|
|
49
|
+
* nobody checked. A recording where the header belongs made it read "of this file is exactly NaN
|
|
50
|
+
* bytes (1 x undefined)", and an `ArrayBuffer` where the bytes belong made it "recordBytes is
|
|
51
|
+
* undefined bytes — NaN whole records". Both are sentences about the FILE with arithmetic nonsense
|
|
52
|
+
* in them, from a caller's wrong argument (fixed in 0.6.122).
|
|
53
|
+
*
|
|
54
|
+
* Shared by `decodeAnnotations`, which is the other function that measures a record buffer against a
|
|
55
|
+
* header and must refuse the same pair in the same words.
|
|
56
|
+
*/
|
|
57
|
+
export declare function assertDecodable(header: EdfHeader, recordBytes: Uint8Array, call: string): void;
|
|
36
58
|
/**
|
|
37
59
|
* Decode one signal out of a record range, with the out-of-declared-range tally.
|
|
38
60
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digital.d.ts","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;
|
|
1
|
+
{"version":3,"file":"digital.d.ts","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAOH,OAAO,KAAK,EAAE,SAAS,EAAa,WAAW,EAAE,MAAM,aAAa,CAAC;AAIrE;;;;;GAKG;AACH,MAAM,WAAW,kBAAkB;IACjC,QAAQ,CAAC,mBAAmB,CAAC,EAAE,MAAM,CAAC;CACvC;AAED;;;;GAIG;AACH,MAAM,WAAW,cAAc;IAC7B,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAC7B;;;;OAIG;IACH,QAAQ,CAAC,sBAAsB,EAAE,MAAM,CAAC;CACzC;AA8CD;;;;;;;GAOG;AACH;;;;;;;;;;;;GAYG;AACH,wBAAgB,eAAe,CAAC,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,UAAU,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAa9F;AAkID;;;;;;;GAOG;AACH,wBAAgB,oBAAoB,CAClC,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,cAAc,CA2BhB;AAED;;;;;;;GAOG;AACH,wBAAgB,aAAa,CAC3B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,WAAW,EACpB,WAAW,EAAE,MAAM,EACnB,GAAG,CAAC,EAAE,UAAU,EAChB,OAAO,CAAC,EAAE,kBAAkB,GAC3B,UAAU,CAEZ"}
|
package/dist/decode/digital.js
CHANGED
|
@@ -9,9 +9,11 @@
|
|
|
9
9
|
* multi-gigabyte BDF routinely exceeds 2^31, where every bitwise operator silently wraps it
|
|
10
10
|
* negative. Every offset below is plain arithmetic, exact to 2^53.
|
|
11
11
|
*/
|
|
12
|
+
import { isByteArray } from '../bytes/latin1.js';
|
|
12
13
|
import { EdfBudgetError, EdfChannelNotFoundError, EdfRangeError } from '../errors.js';
|
|
13
14
|
import { resolveMaterializeBudget } from '../options.js';
|
|
14
15
|
import { pluralise } from '../text/counted.js';
|
|
16
|
+
import { describeValue } from '../text/describe.js';
|
|
15
17
|
const BYTES_PER_INT32 = 4;
|
|
16
18
|
function assertWithinBudget(requiredBytes, what, bytesPerSample, options) {
|
|
17
19
|
const budgetBytes = resolveMaterializeBudget(options?.maxMaterializeBytes);
|
|
@@ -43,6 +45,29 @@ function signalAt(header, signalIndex) {
|
|
|
43
45
|
* does — which is unrecoverable rather than merely wrong, because nothing in the bytes
|
|
44
46
|
* identifies which record they came from.
|
|
45
47
|
*/
|
|
48
|
+
/**
|
|
49
|
+
* The header and the record buffer, before either is measured against the other.
|
|
50
|
+
*
|
|
51
|
+
* Both decoders answer a size mismatch by stating the file's own geometry — "1 records of 716 bytes
|
|
52
|
+
* each are exactly 716" — which is the right message and the wrong one to compute from an argument
|
|
53
|
+
* nobody checked. A recording where the header belongs made it read "of this file is exactly NaN
|
|
54
|
+
* bytes (1 x undefined)", and an `ArrayBuffer` where the bytes belong made it "recordBytes is
|
|
55
|
+
* undefined bytes — NaN whole records". Both are sentences about the FILE with arithmetic nonsense
|
|
56
|
+
* in them, from a caller's wrong argument (fixed in 0.6.122).
|
|
57
|
+
*
|
|
58
|
+
* Shared by `decodeAnnotations`, which is the other function that measures a record buffer against a
|
|
59
|
+
* header and must refuse the same pair in the same words.
|
|
60
|
+
*/
|
|
61
|
+
export function assertDecodable(header, recordBytes, call) {
|
|
62
|
+
if (!Number.isSafeInteger(header?.recordByteLength)) {
|
|
63
|
+
throw new RangeError(`${call}(): that is not a header — it has no recordByteLength, so there is no record size ` +
|
|
64
|
+
'to measure the buffer against. Next: pass recording.header.');
|
|
65
|
+
}
|
|
66
|
+
if (!isByteArray(recordBytes)) {
|
|
67
|
+
throw new RangeError(`${call}(): the record bytes are ${describeValue(recordBytes)}, not a Uint8Array. Next: ` +
|
|
68
|
+
'pass what readRecordBytes(source, header, records) resolved to, unsliced.');
|
|
69
|
+
}
|
|
70
|
+
}
|
|
46
71
|
function assertRecordRange(header, recordBytes, records) {
|
|
47
72
|
const available = { start: 0, count: header.recordCount };
|
|
48
73
|
const startValid = Number.isSafeInteger(records.start) && records.start >= 0;
|
|
@@ -161,6 +186,7 @@ function decodeInt24(bytes, out, plan) {
|
|
|
161
186
|
* nothing about the samples.
|
|
162
187
|
*/
|
|
163
188
|
export function decodeDigitalCounted(header, recordBytes, records, signalIndex, out, options) {
|
|
189
|
+
assertDecodable(header, recordBytes, 'decodeDigital');
|
|
164
190
|
const signal = signalAt(header, signalIndex);
|
|
165
191
|
assertRecordRange(header, recordBytes, records);
|
|
166
192
|
const bytesPerSample = header.bytesPerSample;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"digital.js","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"digital.js","sourceRoot":"","sources":["../../src/decode/digital.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAE,cAAc,EAAE,uBAAuB,EAAE,aAAa,EAAE,MAAM,cAAc,CAAC;AACtF,OAAO,EAAE,wBAAwB,EAAE,MAAM,eAAe,CAAC;AACzD,OAAO,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAC;AAC/C,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAGpD,MAAM,eAAe,GAAG,CAAC,CAAC;AAqC1B,SAAS,kBAAkB,CACzB,aAAqB,EACrB,IAAY,EACZ,cAAsB,EACtB,OAAuC;IAEvC,MAAM,WAAW,GAAG,wBAAwB,CAAC,OAAO,EAAE,mBAAmB,CAAC,CAAC;IAC3E,IAAI,aAAa,IAAI,WAAW;QAAE,OAAO;IACzC,8FAA8F;IAC9F,6CAA6C;IAC7C,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,GAAG,cAAc,CAAC,CAAC;IACtD,MAAM,MAAM,GACV,IAAI,GAAG,CAAC;QACN,CAAC,CAAC,kBAAkB,IAAI,kFAAkF;QAC1G,CAAC,CAAC,mGAAmG,CAAC;IAC1G,MAAM,IAAI,cAAc,CACtB,YAAY,IAAI,YAAY,aAAa,0BAA0B,WAAW,QAAQ;QACpF,qFAAqF;QACrF,SAAS,MAAM,EAAE,EACnB,EAAE,aAAa,EAAE,WAAW,EAAE,CAC/B,CAAC;AACJ,CAAC;AAED,SAAS,QAAQ,CAAC,MAAiB,EAAE,WAAmB;IACtD,MAAM,MAAM,GAAG,MAAM,CAAC,OAAO,CAAC,WAAW,CAAC,CAAC;IAC3C,IAAI,MAAM,KAAK,SAAS;QAAE,OAAO,MAAM,CAAC;IACxC,MAAM,IAAI,uBAAuB,CAC/B,eAAe,WAAW,sBAAsB,MAAM,CAAC,OAAO,CAAC,MAAM,mBAAmB;QACtF,6EAA6E;QAC7E,2BAA2B,EAC7B,EAAE,QAAQ,EAAE,WAAW,EAAE,eAAe,EAAE,MAAM,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,KAAK,CAAC,EAAE,CAC/E,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH;;;;;;;;;;;;GAYG;AACH,MAAM,UAAU,eAAe,CAAC,MAAiB,EAAE,WAAuB,EAAE,IAAY;IACtF,IAAI,CAAC,MAAM,CAAC,aAAa,CAAE,MAAgD,EAAE,gBAAgB,CAAC,EAAE,CAAC;QAC/F,MAAM,IAAI,UAAU,CAClB,GAAG,IAAI,oFAAoF;YACzF,6DAA6D,CAChE,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,WAAW,CAAC,WAAW,CAAC,EAAE,CAAC;QAC9B,MAAM,IAAI,UAAU,CAClB,GAAG,IAAI,4BAA4B,aAAa,CAAC,WAAW,CAAC,4BAA4B;YACvF,2EAA2E,CAC9E,CAAC;IACJ,CAAC;AACH,CAAC;AAED,SAAS,iBAAiB,CAAC,MAAiB,EAAE,WAAuB,EAAE,OAAoB;IACzF,MAAM,SAAS,GAAgB,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,MAAM,CAAC,WAAW,EAAE,CAAC;IACvE,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;IAC7E,MAAM,UAAU,GAAG,MAAM,CAAC,aAAa,CAAC,OAAO,CAAC,KAAK,CAAC,IAAI,OAAO,CAAC,KAAK,IAAI,CAAC,CAAC;IAC7E,IAAI,CAAC,UAAU,IAAI,CAAC,UAAU,IAAI,OAAO,CAAC,KAAK,GAAG,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,WAAW,EAAE,CAAC;QACrF,MAAM,IAAI,aAAa,CACrB,oBAAoB,OAAO,CAAC,KAAK,YAAY,OAAO,CAAC,KAAK,uBAAuB;YAC/E,GAAG,MAAM,CAAC,WAAW,kEAAkE;YACvF,qCAAqC,EACvC,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAClC,CAAC;IACJ,CAAC;IAED,MAAM,aAAa,GAAG,OAAO,CAAC,KAAK,GAAG,MAAM,CAAC,gBAAgB,CAAC;IAC9D,IAAI,WAAW,CAAC,MAAM,KAAK,aAAa;QAAE,OAAO;IACjD,MAAM,YAAY,GAChB,MAAM,CAAC,gBAAgB,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,CAAC,WAAW,CAAC,MAAM,GAAG,MAAM,CAAC,gBAAgB,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC7F,MAAM,IAAI,aAAa,CACrB,kBAAkB,SAAS,CAAC,WAAW,CAAC,MAAM,EAAE,MAAM,CAAC,KAAK;QAC1D,GAAG,SAAS,CAAC,YAAY,EAAE,cAAc,CAAC,SAAS;QACnD,GAAG,OAAO,CAAC,KAAK,eAAe,MAAM,CAAC,gBAAgB,0BAA0B;QAChF,GAAG,aAAa,sEAAsE;QACtF,mCAAmC;QACnC,wFAAwF;IAC1F,6FAA6F;IAC7F,2FAA2F;IAC3F,+FAA+F;IAC/F,4FAA4F;IAC5F,0FAA0F;IAC1F,qCAAqC;IACrC,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,CAClC,CAAC;AACJ,CAAC;AAED;;;;GAIG;AACH,SAAS,sBAAsB,CAAC,MAAiB,EAAE,MAAiB,EAAE,UAAkB;IACtF,IAAI,MAAM,CAAC,gBAAgB,GAAG,UAAU,IAAI,MAAM,CAAC,gBAAgB;QAAE,OAAO;IAC5E,MAAM,IAAI,UAAU,CAClB,UAAU,MAAM,CAAC,KAAK,oBAAoB,MAAM,CAAC,gBAAgB,IAAI;QACnE,GAAG,MAAM,CAAC,gBAAgB,GAAG,UAAU,UAAU,MAAM,CAAC,gBAAgB,gBAAgB;QACxF,2FAA2F;QAC3F,iFAAiF,CACpF,CAAC;AACJ,CAAC;AAED;;;;;;;GAOG;AACH,SAAS,UAAU,CACjB,GAA2B,EAC3B,WAAmB,EACnB,OAAuC;IAEvC,IAAI,GAAG,KAAK,SAAS,EAAE,CAAC;QACtB,kBAAkB,CAChB,WAAW,GAAG,eAAe,EAC7B,GAAG,WAAW,kBAAkB,EAChC,eAAe,EACf,OAAO,CACR,CAAC;QACF,OAAO,IAAI,UAAU,CAAC,WAAW,CAAC,CAAC;IACrC,CAAC;IACD,IAAI,GAAG,CAAC,MAAM,GAAG,WAAW,EAAE,CAAC;QAC7B,MAAM,IAAI,UAAU,CAClB,aAAa,GAAG,CAAC,MAAM,qCAAqC,WAAW,mBAAmB;YACxF,8EAA8E;YAC9E,yBAAyB,CAC5B,CAAC;IACJ,CAAC;IACD,OAAO,GAAG,CAAC,MAAM,KAAK,WAAW,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,QAAQ,CAAC,CAAC,EAAE,WAAW,CAAC,CAAC;AACzE,CAAC;AAED,2FAA2F;AAC3F,SAAS,WAAW,CAAC,KAAiB,EAAE,GAAe,EAAE,IAAsB;IAC7E,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IACnF,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;IAC9B,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,CAAC,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;QACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,sEAAsE;YACtE,wFAAwF;YACxF,+EAA+E;YAC/E,4EAA4E;YAC5E,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,IAAI,CAAC,CAAC,CAAC;YAC7C,IAAI,KAAK,GAAG,MAAM;gBAAE,KAAK,IAAI,OAAO,CAAC;YACrC,IAAI,KAAK,GAAG,GAAG,IAAI,KAAK,GAAG,IAAI;gBAAE,UAAU,EAAE,CAAC;YAC9C,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YACnB,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED,6EAA6E;AAC7E,SAAS,WAAW,CAAC,KAAiB,EAAE,GAAe,EAAE,IAAsB;IAC7E,MAAM,EAAE,WAAW,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,GAAG,IAAI,CAAC;IACnF,MAAM,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC;IAC5B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,CAAC;IAC9B,IAAI,UAAU,GAAG,CAAC,CAAC;IACnB,IAAI,KAAK,GAAG,CAAC,CAAC;IACd,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,WAAW,EAAE,CAAC,EAAE,EAAE,CAAC;QACrC,MAAM,IAAI,GAAG,CAAC,GAAG,gBAAgB,GAAG,gBAAgB,CAAC;QACrD,KAAK,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC,GAAG,gBAAgB,EAAE,CAAC,EAAE,EAAE,CAAC;YAC1C,MAAM,CAAC,GAAG,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC;YACvB,+DAA+D;YAC/D,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAE,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,IAAI,CAAC,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,GAAG,CAAC,CAAE,IAAI,EAAE,CAAC,CAAC;YACrE,IAAI,KAAK,GAAG,QAAQ;gBAAE,KAAK,IAAI,SAAS,CAAC;YACzC,IAAI,KAAK,GAAG,GAAG,IAAI,KAAK,GAAG,IAAI;gBAAE,UAAU,EAAE,CAAC;YAC9C,GAAG,CAAC,KAAK,CAAC,GAAG,KAAK,CAAC;YACnB,KAAK,EAAE,CAAC;QACV,CAAC;IACH,CAAC;IACD,OAAO,UAAU,CAAC;AACpB,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,oBAAoB,CAClC,MAAiB,EACjB,WAAuB,EACvB,OAAoB,EACpB,WAAmB,EACnB,GAAgB,EAChB,OAA4B;IAE5B,eAAe,CAAC,MAAM,EAAE,WAAW,EAAE,eAAe,CAAC,CAAC;IACtD,MAAM,MAAM,GAAG,QAAQ,CAAC,MAAM,EAAE,WAAW,CAAC,CAAC;IAC7C,iBAAiB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IAEhD,MAAM,cAAc,GAAG,MAAM,CAAC,cAAc,CAAC;IAC7C,MAAM,gBAAgB,GAAG,MAAM,CAAC,gBAAgB,CAAC;IACjD,sBAAsB,CAAC,MAAM,EAAE,MAAM,EAAE,gBAAgB,GAAG,cAAc,CAAC,CAAC;IAE1E,MAAM,WAAW,GAAG,OAAO,CAAC,KAAK,GAAG,gBAAgB,CAAC;IACrD,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE,WAAW,EAAE,OAAO,CAAC,CAAC;IACtD,MAAM,IAAI,GAAqB;QAC7B,WAAW,EAAE,OAAO,CAAC,KAAK;QAC1B,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,gFAAgF;QAChF,gBAAgB,EAAE,MAAM,CAAC,gBAAgB;QACzC,gBAAgB;QAChB,UAAU,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC;QAClE,WAAW,EAAE,IAAI,CAAC,GAAG,CAAC,MAAM,CAAC,cAAc,EAAE,MAAM,CAAC,cAAc,CAAC;KACpE,CAAC;IAEF,MAAM,sBAAsB,GAC1B,cAAc,KAAK,CAAC;QAClB,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC;QACzC,CAAC,CAAC,WAAW,CAAC,WAAW,EAAE,OAAO,EAAE,IAAI,CAAC,CAAC;IAE9C,OAAO,EAAE,OAAO,EAAE,sBAAsB,EAAE,CAAC;AAC7C,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,aAAa,CAC3B,MAAiB,EACjB,WAAuB,EACvB,OAAoB,EACpB,WAAmB,EACnB,GAAgB,EAChB,OAA4B;IAE5B,OAAO,oBAAoB,CAAC,MAAM,EAAE,WAAW,EAAE,OAAO,EAAE,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,CAAC,OAAO,CAAC;AAC/F,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/tal/annotations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;
|
|
1
|
+
{"version":3,"file":"annotations.d.ts","sourceRoot":"","sources":["../../src/tal/annotations.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAqCG;AAOH,OAAO,KAAK,EACV,wBAAwB,EAExB,oBAAoB,EACpB,SAAS,EAET,WAAW,EACZ,MAAM,aAAa,CAAC;AAqYrB;;;;GAIG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,UAAU,EACvB,OAAO,EAAE,WAAW,EACpB,OAAO,CAAC,EAAE,wBAAwB,GACjC,oBAAoB,CAuLtB"}
|
package/dist/tal/annotations.js
CHANGED
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
*/
|
|
39
39
|
import { sliceBytes } from '../bytes/view.js';
|
|
40
40
|
import { TICKS_PER_SECOND } from '../constants.js';
|
|
41
|
+
import { assertDecodable } from '../decode/digital.js';
|
|
41
42
|
import { DiagnosticSink } from '../diagnostics/collector.js';
|
|
42
43
|
import { EdfChannelNotFoundError, EdfRangeError } from '../errors.js';
|
|
43
44
|
import { escapeControls, parseTalRegion, previewBytes, rawBytesText, splitChannelLabel, TAL_PREVIEW_MAX_BYTES, } from './grammar.js';
|
|
@@ -304,6 +305,7 @@ function compareAnnotations(a, b) {
|
|
|
304
305
|
* read, and is what most callers want.
|
|
305
306
|
*/
|
|
306
307
|
export function decodeAnnotations(header, recordBytes, records, options) {
|
|
308
|
+
assertDecodable(header, recordBytes, 'decodeAnnotations');
|
|
307
309
|
assertRecordRange(header, recordBytes, records);
|
|
308
310
|
const sink = new DiagnosticSink(options);
|
|
309
311
|
const signals = resolveSignals(header, options?.signalIndices);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/tal/annotations.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"annotations.js","sourceRoot":"","sources":["../../src/tal/annotations.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../src/time/window.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,cAAc,EAEd,WAAW,EACX,WAAW,EACZ,MAAM,aAAa,CAAC;AAcrB;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAU/F;AAaD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,WAAW,EACrB,KAAK,EAAE,cAAc,EACrB,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,GACtB,SAAS,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"window.d.ts","sourceRoot":"","sources":["../../src/time/window.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,KAAK,EACV,cAAc,EACd,SAAS,EACT,cAAc,EAEd,WAAW,EACX,WAAW,EACZ,MAAM,aAAa,CAAC;AAcrB;;;;;;;;;GASG;AACH,wBAAgB,iBAAiB,CAAC,WAAW,EAAE,cAAc,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,IAAI,CAU/F;AAaD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,iBAAiB,CAC/B,QAAQ,EAAE,WAAW,EACrB,KAAK,EAAE,cAAc,EACrB,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,GACtB,SAAS,WAAW,EAAE,CAyHxB;AA6ED;;;;;;;;;;;;;;;;;;;;;GAqBG;AACH,wBAAgB,YAAY,CAC1B,MAAM,EAAE,SAAS,EACjB,WAAW,EAAE,cAAc,EAC3B,YAAY,EAAE,MAAM,EACpB,eAAe,EAAE,MAAM,GACtB,cAAc,CA6EhB"}
|
package/dist/time/window.js
CHANGED
|
@@ -73,6 +73,29 @@ function signalAt(header, signalIndex) {
|
|
|
73
73
|
* on onsets nobody has read, and this function refuses rather than guessing them.
|
|
74
74
|
*/
|
|
75
75
|
export function resolveTimeWindow(timeline, index, startSeconds, durationSeconds) {
|
|
76
|
+
/*
|
|
77
|
+
* The timeline, and the index, before either decides anything.
|
|
78
|
+
*
|
|
79
|
+
* `resolveTimeWindow(header, index, …)` returned an answer. The header carries `recordCount` and
|
|
80
|
+
* `recordDurationTicks` under the same names with the same meanings, so every branch below ran —
|
|
81
|
+
* except the one that needs `spanTicks` and `coveredTicks`, which are the timeline's alone.
|
|
82
|
+
* `undefined !== undefined` is false, so the discontinuity check simply did not fire, and a
|
|
83
|
+
* window over an EDF+D file with a five-second hole came back as `[{ start: 0, count: 4 }]`: every
|
|
84
|
+
* record, mapped onto the nominal grid, as if the file were continuous. The correct call throws.
|
|
85
|
+
*
|
|
86
|
+
* That is the exact failure this function exists to prevent — "the records a window maps to depend
|
|
87
|
+
* on onsets nobody has read, and this function refuses rather than guessing them" — reachable by
|
|
88
|
+
* passing the wrong first argument (fixed in 0.6.123).
|
|
89
|
+
*/
|
|
90
|
+
if (typeof timeline?.spanTicks !== 'bigint') {
|
|
91
|
+
throw new RangeError('resolveTimeWindow(): that is not a timeline — it has no spanTicks, and the check that ' +
|
|
92
|
+
'refuses to map a window onto a file with an unseen gap is the one that reads it. Next: ' +
|
|
93
|
+
'pass recording.timeline.');
|
|
94
|
+
}
|
|
95
|
+
if (typeof index?.coverage !== 'string') {
|
|
96
|
+
throw new RangeError('resolveTimeWindow(): the second argument is not a record index — it has no coverage. ' +
|
|
97
|
+
'Next: pass recording.index, or the index buildRecordIndex(recording) returns.');
|
|
98
|
+
}
|
|
76
99
|
const recordCount = timeline.recordCount;
|
|
77
100
|
if (recordCount <= 0)
|
|
78
101
|
return NO_RANGES;
|
package/dist/time/window.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"window.js","sourceRoot":"","sources":["../../src/time/window.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"window.js","sourceRoot":"","sources":["../../src/time/window.ts"],"names":[],"mappings":"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"}
|
package/docs/CHANGELOG.md
CHANGED
|
@@ -6,6 +6,34 @@ alone does not tell you whether you were affected.
|
|
|
6
6
|
edfcore is pre-1.0. Patch releases have carried behaviour changes where the old behaviour was a
|
|
7
7
|
defect; those are called out below.
|
|
8
8
|
|
|
9
|
+
## 0.6.123
|
|
10
|
+
|
|
11
|
+
- **Fixed** `resolveTimeWindow` mapping a window onto a discontinuous file when handed the header
|
|
12
|
+
instead of the timeline.
|
|
13
|
+
- The header carries `recordCount` and `recordDurationTicks` under the same names with the same
|
|
14
|
+
meanings, so every branch of the function ran on one — except the branch that needs `spanTicks`
|
|
15
|
+
and `coveredTicks`, which are the timeline's alone. `undefined !== undefined` is false, so the
|
|
16
|
+
discontinuity check did not fire.
|
|
17
|
+
- A window over an EDF+D file with a five-second hole came back as `[{ start: 0, count: 4 }]`: every
|
|
18
|
+
record, on the nominal grid, as if the file were continuous. The correct call throws — "the records
|
|
19
|
+
a window maps to depend on onsets nobody has read, and this function refuses rather than guessing
|
|
20
|
+
them." The one failure this function exists to prevent was reachable by passing the wrong first
|
|
21
|
+
argument, and it was silent.
|
|
22
|
+
- Both arguments are checked now, and the index is named as the second.
|
|
23
|
+
|
|
24
|
+
## 0.6.122
|
|
25
|
+
|
|
26
|
+
- **Fixed** `decodeDigital` and `decodeAnnotations` describing the file's geometry with arithmetic
|
|
27
|
+
computed from a wrong argument.
|
|
28
|
+
- Both answer a size mismatch by stating what the file actually is — "1 records of 716 bytes each are
|
|
29
|
+
exactly 716" — which is the right message and the wrong thing to compute from an argument nobody
|
|
30
|
+
checked. The recording where the header belongs made `decodeAnnotations` say "of this file is
|
|
31
|
+
exactly NaN bytes (1 x undefined)"; an `ArrayBuffer` where the bytes belong made `decodeDigital`
|
|
32
|
+
say "recordBytes is undefined bytes — NaN whole records".
|
|
33
|
+
- Both are sentences about the FILE with nonsense in them, from a caller's wrong argument, which is
|
|
34
|
+
the one confusion `byteSource` says this package works hardest to avoid. Both now check the header
|
|
35
|
+
and the buffer first, in one guard the two decoders share.
|
|
36
|
+
|
|
9
37
|
## 0.6.121
|
|
10
38
|
|
|
11
39
|
- **Fixed** `parseHeader` accepting an `ArrayBuffer` and failing several checks later with
|
package/package.json
CHANGED
package/src/constants.ts
CHANGED
package/src/decode/digital.ts
CHANGED
|
@@ -10,9 +10,11 @@
|
|
|
10
10
|
* negative. Every offset below is plain arithmetic, exact to 2^53.
|
|
11
11
|
*/
|
|
12
12
|
|
|
13
|
+
import { isByteArray } from '../bytes/latin1.js';
|
|
13
14
|
import { EdfBudgetError, EdfChannelNotFoundError, EdfRangeError } from '../errors.js';
|
|
14
15
|
import { resolveMaterializeBudget } from '../options.js';
|
|
15
16
|
import { pluralise } from '../text/counted.js';
|
|
17
|
+
import { describeValue } from '../text/describe.js';
|
|
16
18
|
import type { EdfHeader, EdfSignal, RecordRange } from '../types.js';
|
|
17
19
|
|
|
18
20
|
const BYTES_PER_INT32 = 4;
|
|
@@ -94,6 +96,34 @@ function signalAt(header: EdfHeader, signalIndex: number): EdfSignal {
|
|
|
94
96
|
* does — which is unrecoverable rather than merely wrong, because nothing in the bytes
|
|
95
97
|
* identifies which record they came from.
|
|
96
98
|
*/
|
|
99
|
+
/**
|
|
100
|
+
* The header and the record buffer, before either is measured against the other.
|
|
101
|
+
*
|
|
102
|
+
* Both decoders answer a size mismatch by stating the file's own geometry — "1 records of 716 bytes
|
|
103
|
+
* each are exactly 716" — which is the right message and the wrong one to compute from an argument
|
|
104
|
+
* nobody checked. A recording where the header belongs made it read "of this file is exactly NaN
|
|
105
|
+
* bytes (1 x undefined)", and an `ArrayBuffer` where the bytes belong made it "recordBytes is
|
|
106
|
+
* undefined bytes — NaN whole records". Both are sentences about the FILE with arithmetic nonsense
|
|
107
|
+
* in them, from a caller's wrong argument (fixed in 0.6.122).
|
|
108
|
+
*
|
|
109
|
+
* Shared by `decodeAnnotations`, which is the other function that measures a record buffer against a
|
|
110
|
+
* header and must refuse the same pair in the same words.
|
|
111
|
+
*/
|
|
112
|
+
export function assertDecodable(header: EdfHeader, recordBytes: Uint8Array, call: string): void {
|
|
113
|
+
if (!Number.isSafeInteger((header as { recordByteLength?: unknown } | null)?.recordByteLength)) {
|
|
114
|
+
throw new RangeError(
|
|
115
|
+
`${call}(): that is not a header — it has no recordByteLength, so there is no record size ` +
|
|
116
|
+
'to measure the buffer against. Next: pass recording.header.',
|
|
117
|
+
);
|
|
118
|
+
}
|
|
119
|
+
if (!isByteArray(recordBytes)) {
|
|
120
|
+
throw new RangeError(
|
|
121
|
+
`${call}(): the record bytes are ${describeValue(recordBytes)}, not a Uint8Array. Next: ` +
|
|
122
|
+
'pass what readRecordBytes(source, header, records) resolved to, unsliced.',
|
|
123
|
+
);
|
|
124
|
+
}
|
|
125
|
+
}
|
|
126
|
+
|
|
97
127
|
function assertRecordRange(header: EdfHeader, recordBytes: Uint8Array, records: RecordRange): void {
|
|
98
128
|
const available: RecordRange = { start: 0, count: header.recordCount };
|
|
99
129
|
const startValid = Number.isSafeInteger(records.start) && records.start >= 0;
|
|
@@ -238,6 +268,7 @@ export function decodeDigitalCounted(
|
|
|
238
268
|
out?: Int32Array,
|
|
239
269
|
options?: MaterializeOptions,
|
|
240
270
|
): DecodedDigital {
|
|
271
|
+
assertDecodable(header, recordBytes, 'decodeDigital');
|
|
241
272
|
const signal = signalAt(header, signalIndex);
|
|
242
273
|
assertRecordRange(header, recordBytes, records);
|
|
243
274
|
|
package/src/tal/annotations.ts
CHANGED
|
@@ -39,6 +39,7 @@
|
|
|
39
39
|
|
|
40
40
|
import { sliceBytes } from '../bytes/view.js';
|
|
41
41
|
import { TICKS_PER_SECOND } from '../constants.js';
|
|
42
|
+
import { assertDecodable } from '../decode/digital.js';
|
|
42
43
|
import { DiagnosticSink } from '../diagnostics/collector.js';
|
|
43
44
|
import { EdfChannelNotFoundError, EdfRangeError } from '../errors.js';
|
|
44
45
|
import type {
|
|
@@ -448,6 +449,7 @@ export function decodeAnnotations(
|
|
|
448
449
|
records: RecordRange,
|
|
449
450
|
options?: DecodeAnnotationsOptions,
|
|
450
451
|
): EdfAnnotationsResult {
|
|
452
|
+
assertDecodable(header, recordBytes, 'decodeAnnotations');
|
|
451
453
|
assertRecordRange(header, recordBytes, records);
|
|
452
454
|
|
|
453
455
|
const sink = new DiagnosticSink(options);
|
package/src/time/window.ts
CHANGED
|
@@ -96,6 +96,33 @@ export function resolveTimeWindow(
|
|
|
96
96
|
startSeconds: number,
|
|
97
97
|
durationSeconds: number,
|
|
98
98
|
): readonly RecordRange[] {
|
|
99
|
+
/*
|
|
100
|
+
* The timeline, and the index, before either decides anything.
|
|
101
|
+
*
|
|
102
|
+
* `resolveTimeWindow(header, index, …)` returned an answer. The header carries `recordCount` and
|
|
103
|
+
* `recordDurationTicks` under the same names with the same meanings, so every branch below ran —
|
|
104
|
+
* except the one that needs `spanTicks` and `coveredTicks`, which are the timeline's alone.
|
|
105
|
+
* `undefined !== undefined` is false, so the discontinuity check simply did not fire, and a
|
|
106
|
+
* window over an EDF+D file with a five-second hole came back as `[{ start: 0, count: 4 }]`: every
|
|
107
|
+
* record, mapped onto the nominal grid, as if the file were continuous. The correct call throws.
|
|
108
|
+
*
|
|
109
|
+
* That is the exact failure this function exists to prevent — "the records a window maps to depend
|
|
110
|
+
* on onsets nobody has read, and this function refuses rather than guessing them" — reachable by
|
|
111
|
+
* passing the wrong first argument (fixed in 0.6.123).
|
|
112
|
+
*/
|
|
113
|
+
if (typeof (timeline as { spanTicks?: unknown } | null | undefined)?.spanTicks !== 'bigint') {
|
|
114
|
+
throw new RangeError(
|
|
115
|
+
'resolveTimeWindow(): that is not a timeline — it has no spanTicks, and the check that ' +
|
|
116
|
+
'refuses to map a window onto a file with an unseen gap is the one that reads it. Next: ' +
|
|
117
|
+
'pass recording.timeline.',
|
|
118
|
+
);
|
|
119
|
+
}
|
|
120
|
+
if (typeof (index as { coverage?: unknown } | null | undefined)?.coverage !== 'string') {
|
|
121
|
+
throw new RangeError(
|
|
122
|
+
'resolveTimeWindow(): the second argument is not a record index — it has no coverage. ' +
|
|
123
|
+
'Next: pass recording.index, or the index buildRecordIndex(recording) returns.',
|
|
124
|
+
);
|
|
125
|
+
}
|
|
99
126
|
const recordCount = timeline.recordCount;
|
|
100
127
|
if (recordCount <= 0) return NO_RANGES;
|
|
101
128
|
|