@neurodevs/node-lsl 10.2.1 → 11.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +17 -38
- package/build/__tests__/{AbstractNodeLslTest.d.ts → AbstractLslTest.d.ts} +7 -6
- package/build/__tests__/{AbstractNodeLslTest.js → AbstractLslTest.js} +30 -24
- package/build/__tests__/AbstractLslTest.js.map +1 -0
- package/build/__tests__/{TimeMarkerOutlet.test.d.ts → EventMarkerOutlet.test.d.ts} +9 -8
- package/build/__tests__/{TimeMarkerOutlet.test.js → EventMarkerOutlet.test.js} +53 -48
- package/build/__tests__/EventMarkerOutlet.test.js.map +1 -0
- package/build/__tests__/{Liblsl.test.d.ts → LiblslAdapter.test.d.ts} +2 -2
- package/build/__tests__/{Liblsl.test.js → LiblslAdapter.test.js} +43 -75
- package/build/__tests__/LiblslAdapter.test.js.map +1 -0
- package/build/__tests__/LslStreamInfo.test.d.ts +3 -3
- package/build/__tests__/LslStreamInfo.test.js +3 -3
- package/build/__tests__/LslStreamInfo.test.js.map +1 -1
- package/build/__tests__/{LslInlet.test.d.ts → LslStreamInlet.test.d.ts} +4 -4
- package/build/__tests__/{LslInlet.test.js → LslStreamInlet.test.js} +19 -19
- package/build/__tests__/LslStreamInlet.test.js.map +1 -0
- package/build/__tests__/{LslOutlet.test.d.ts → LslStreamOutlet.test.d.ts} +3 -3
- package/build/__tests__/{LslOutlet.test.js → LslStreamOutlet.test.js} +45 -41
- package/build/__tests__/LslStreamOutlet.test.js.map +1 -0
- package/build/components/EventMarkerOutlet.d.ts +20 -0
- package/build/components/{TimeMarkerOutlet.js → EventMarkerOutlet.js} +11 -10
- package/build/components/EventMarkerOutlet.js.map +1 -0
- package/build/components/{Liblsl.d.ts → LiblslAdapter.d.ts} +1 -1
- package/build/components/{Liblsl.js → LiblslAdapter.js} +7 -7
- package/build/components/LiblslAdapter.js.map +1 -0
- package/build/components/LslStreamInfo.js +2 -2
- package/build/components/LslStreamInfo.js.map +1 -1
- package/build/components/{LslInlet.d.ts → LslStreamInlet.d.ts} +4 -4
- package/build/components/{LslInlet.js → LslStreamInlet.js} +5 -5
- package/build/components/LslStreamInlet.js.map +1 -0
- package/build/components/{LslOutlet.d.ts → LslStreamOutlet.d.ts} +1 -1
- package/build/components/{LslOutlet.js → LslStreamOutlet.js} +5 -5
- package/build/components/LslStreamOutlet.js.map +1 -0
- package/build/index.d.ts +20 -19
- package/build/index.js +33 -28
- package/build/index.js.map +1 -1
- package/build/nodeLsl.types.d.ts +3 -3
- package/build/testDoubles/{FakeLiblsl.d.ts → Liblsl/FakeLiblsl.d.ts} +1 -1
- package/build/testDoubles/Liblsl/FakeLiblsl.js.map +1 -0
- package/build/testDoubles/LslInlet/SpyLslInlet.d.ts +7 -0
- package/build/testDoubles/{SpyLslInlet.js → LslInlet/SpyLslInlet.js} +2 -2
- package/build/testDoubles/LslInlet/SpyLslInlet.js.map +1 -0
- package/build/testDoubles/{FakeLslOutlet.d.ts → LslOutlet/FakeLslOutlet.d.ts} +3 -5
- package/build/testDoubles/{FakeLslOutlet.js → LslOutlet/FakeLslOutlet.js} +0 -4
- package/build/testDoubles/LslOutlet/FakeLslOutlet.js.map +1 -0
- package/build/testDoubles/{FakeTimeMarkerOutlet.d.ts → MarkerOutlet/FakeMarkerOutlet.d.ts} +4 -4
- package/build/testDoubles/{FakeTimeMarkerOutlet.js → MarkerOutlet/FakeMarkerOutlet.js} +4 -4
- package/build/testDoubles/MarkerOutlet/FakeMarkerOutlet.js.map +1 -0
- package/build/testDoubles/{MockTimeMarkerOutlet.d.ts → MarkerOutlet/MockMarkerOutlet.d.ts} +3 -2
- package/build/testDoubles/{MockTimeMarkerOutlet.js → MarkerOutlet/MockMarkerOutlet.js} +3 -3
- package/build/testDoubles/MarkerOutlet/MockMarkerOutlet.js.map +1 -0
- package/build/testDoubles/MarkerOutlet/SpyMarkerOutlet.d.ts +9 -0
- package/build/testDoubles/MarkerOutlet/SpyMarkerOutlet.js +24 -0
- package/build/testDoubles/MarkerOutlet/SpyMarkerOutlet.js.map +1 -0
- package/build/testDoubles/{FakeStreamInfo.d.ts → StreamInfo/FakeStreamInfo.d.ts} +2 -2
- package/build/testDoubles/StreamInfo/FakeStreamInfo.js.map +1 -0
- package/build/testDoubles/StreamInfo/SpyStreamInfo.d.ts +9 -0
- package/build/testDoubles/{SpyLslStreamInfo.js → StreamInfo/SpyStreamInfo.js} +4 -4
- package/build/testDoubles/StreamInfo/SpyStreamInfo.js.map +1 -0
- package/build/testDoubles/generateRandomOutletOptions.d.ts +1 -1
- package/package.json +1 -1
- package/src/__tests__/AbstractLslTest.ts +58 -0
- package/src/__tests__/EventMarkerOutlet.test.ts +165 -0
- package/src/__tests__/{Liblsl.test.ts → LiblslAdapter.test.ts} +18 -22
- package/src/__tests__/LslStreamInfo.test.ts +12 -12
- package/src/__tests__/{LslInlet.test.ts → LslStreamInlet.test.ts} +13 -13
- package/src/__tests__/{LslOutlet.test.ts → LslStreamOutlet.test.ts} +28 -22
- package/src/components/{TimeMarkerOutlet.ts → EventMarkerOutlet.ts} +17 -17
- package/src/components/{Liblsl.ts → LiblslAdapter.ts} +3 -3
- package/src/components/LslStreamInfo.ts +2 -2
- package/src/components/{LslInlet.ts → LslStreamInlet.ts} +5 -5
- package/src/components/{LslOutlet.ts → LslStreamOutlet.ts} +3 -3
- package/src/index.ts +28 -19
- package/src/nodeLsl.types.ts +3 -3
- package/src/testDoubles/{FakeLiblsl.ts → Liblsl/FakeLiblsl.ts} +1 -1
- package/src/testDoubles/{SpyLslInlet.ts → LslInlet/SpyLslInlet.ts} +5 -3
- package/src/testDoubles/{FakeLslOutlet.ts → LslOutlet/FakeLslOutlet.ts} +3 -9
- package/src/testDoubles/{FakeTimeMarkerOutlet.ts → MarkerOutlet/FakeMarkerOutlet.ts} +4 -4
- package/src/testDoubles/{MockTimeMarkerOutlet.ts → MarkerOutlet/MockMarkerOutlet.ts} +3 -2
- package/src/testDoubles/MarkerOutlet/SpyMarkerOutlet.ts +24 -0
- package/src/testDoubles/{FakeStreamInfo.ts → StreamInfo/FakeStreamInfo.ts} +2 -2
- package/src/testDoubles/{SpyLslStreamInfo.ts → StreamInfo/SpyStreamInfo.ts} +4 -2
- package/src/testDoubles/generateRandomOutletOptions.ts +1 -1
- package/build/__tests__/AbstractNodeLslTest.js.map +0 -1
- package/build/__tests__/Liblsl.test.js.map +0 -1
- package/build/__tests__/LslInlet.test.js.map +0 -1
- package/build/__tests__/LslOutlet.test.js.map +0 -1
- package/build/__tests__/SpyLslStreamInfo.d.ts +0 -5
- package/build/__tests__/SpyLslStreamInfo.js +0 -17
- package/build/__tests__/SpyLslStreamInfo.js.map +0 -1
- package/build/__tests__/TimeMarkerOutlet.test.js.map +0 -1
- package/build/components/Liblsl.js.map +0 -1
- package/build/components/LslInlet.js.map +0 -1
- package/build/components/LslOutlet.js.map +0 -1
- package/build/components/TimeMarkerOutlet.d.ts +0 -19
- package/build/components/TimeMarkerOutlet.js.map +0 -1
- package/build/demo.d.ts +0 -1
- package/build/demo.js +0 -42
- package/build/demo.js.map +0 -1
- package/build/testDoubles/FakeLiblsl.js.map +0 -1
- package/build/testDoubles/FakeLslOutlet.js.map +0 -1
- package/build/testDoubles/FakeLslStreamInfo.d.ts +0 -5
- package/build/testDoubles/FakeLslStreamInfo.js +0 -10
- package/build/testDoubles/FakeLslStreamInfo.js.map +0 -1
- package/build/testDoubles/FakeStreamInfo.js.map +0 -1
- package/build/testDoubles/FakeTimeMarkerOutlet.js.map +0 -1
- package/build/testDoubles/MockTimeMarkerOutlet.js.map +0 -1
- package/build/testDoubles/SpyLslInlet.d.ts +0 -7
- package/build/testDoubles/SpyLslInlet.js.map +0 -1
- package/build/testDoubles/SpyLslStreamInfo.d.ts +0 -9
- package/build/testDoubles/SpyLslStreamInfo.js.map +0 -1
- package/build/testDoubles/SpyTimeMarkerOutlet.d.ts +0 -9
- package/build/testDoubles/SpyTimeMarkerOutlet.js +0 -19
- package/build/testDoubles/SpyTimeMarkerOutlet.js.map +0 -1
- package/src/__tests__/AbstractNodeLslTest.ts +0 -50
- package/src/__tests__/TimeMarkerOutlet.test.ts +0 -151
- package/src/demo.ts +0 -43
- package/src/testDoubles/SpyTimeMarkerOutlet.ts +0 -19
- /package/build/testDoubles/{FakeLiblsl.js → Liblsl/FakeLiblsl.js} +0 -0
- /package/build/testDoubles/{FakeStreamInfo.js → StreamInfo/FakeStreamInfo.js} +0 -0
|
@@ -10,15 +10,15 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
10
10
|
};
|
|
11
11
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
12
|
const test_utils_1 = require("@sprucelabs/test-utils");
|
|
13
|
-
const
|
|
13
|
+
const LslStreamOutlet_1 = __importDefault(require("../components/LslStreamOutlet"));
|
|
14
14
|
const consts_1 = require("../testDoubles/consts");
|
|
15
|
-
const FakeStreamInfo_1 = __importDefault(require("../testDoubles/FakeStreamInfo"));
|
|
16
15
|
const generateRandomOutletOptions_1 = __importDefault(require("../testDoubles/generateRandomOutletOptions"));
|
|
17
|
-
const
|
|
18
|
-
|
|
16
|
+
const FakeStreamInfo_1 = __importDefault(require("../testDoubles/StreamInfo/FakeStreamInfo"));
|
|
17
|
+
const AbstractLslTest_1 = __importDefault(require("./AbstractLslTest"));
|
|
18
|
+
class LslStreamOutletTest extends AbstractLslTest_1.default {
|
|
19
19
|
static async beforeEach() {
|
|
20
20
|
await super.beforeEach();
|
|
21
|
-
delete
|
|
21
|
+
delete LslStreamOutlet_1.default.Class;
|
|
22
22
|
this.randomOutletOptions = (0, generateRandomOutletOptions_1.default)();
|
|
23
23
|
this.setFakeLiblsl();
|
|
24
24
|
this.setFakeStreamInfo();
|
|
@@ -26,7 +26,7 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
26
26
|
static async throwsWithMissingRequiredParams() {
|
|
27
27
|
const err = await test_utils_1.assert.doesThrowAsync(
|
|
28
28
|
//@ts-ignore
|
|
29
|
-
async () => await
|
|
29
|
+
async () => await LslStreamOutlet_1.default.Create());
|
|
30
30
|
test_utils_1.errorAssert.assertError(err, 'MISSING_PARAMETERS', {
|
|
31
31
|
parameters: [
|
|
32
32
|
'name',
|
|
@@ -46,7 +46,7 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
46
46
|
await this.assertThrowsInvalidChannelNames(0);
|
|
47
47
|
}
|
|
48
48
|
static async allowsZeroSampleRate() {
|
|
49
|
-
await this.
|
|
49
|
+
await this.LslStreamOutlet({ sampleRate: 0 });
|
|
50
50
|
}
|
|
51
51
|
static async throwsWithInvalidSampleRate() {
|
|
52
52
|
await this.assertThrowsInvalidSampleRate(-1);
|
|
@@ -58,25 +58,29 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
58
58
|
{ channelFormat: (0, test_utils_1.generateId)() }, ['channelFormat']);
|
|
59
59
|
}
|
|
60
60
|
static async throwsWithInvalidChunkSize() {
|
|
61
|
-
await this.
|
|
61
|
+
await this.LslStreamOutlet({ chunkSize: 0 });
|
|
62
62
|
await this.assertThrowsInvalidChunkSize(-1);
|
|
63
63
|
await this.assertThrowsInvalidChunkSize(-1.5);
|
|
64
64
|
await this.assertThrowsInvalidChunkSize(1.5);
|
|
65
65
|
}
|
|
66
66
|
static async throwsWithInvalidMaxBuffered() {
|
|
67
|
-
await this.
|
|
67
|
+
await this.LslStreamOutlet({ maxBuffered: 0 });
|
|
68
68
|
await this.assertThrowsInvalidMaxBuffered(-1);
|
|
69
69
|
await this.assertThrowsInvalidMaxBuffered(-1.5);
|
|
70
70
|
await this.assertThrowsInvalidMaxBuffered(1.5);
|
|
71
71
|
}
|
|
72
72
|
static async throwsWithUnsupportedType() {
|
|
73
73
|
for (let unsupportedType of consts_1.TEST_UNSUPPORTED_CHANNEL_FORMATS) {
|
|
74
|
-
await test_utils_1.assert.doesThrowAsync(async () => await this.
|
|
74
|
+
await test_utils_1.assert.doesThrowAsync(async () => await this.LslStreamOutlet({
|
|
75
|
+
channelFormat: unsupportedType,
|
|
76
|
+
}), `This method currently does not support the ${unsupportedType} type! Please implement it.`);
|
|
75
77
|
}
|
|
76
78
|
}
|
|
77
79
|
static async supportsAllKnownChannelFormats() {
|
|
78
80
|
for (const format of consts_1.TEST_SUPPORTED_CHANNEL_FORMATS) {
|
|
79
|
-
await this.
|
|
81
|
+
await this.LslStreamOutlet({
|
|
82
|
+
channelFormat: format,
|
|
83
|
+
});
|
|
80
84
|
}
|
|
81
85
|
}
|
|
82
86
|
static async canPushFloatSampleToLsl(sample) {
|
|
@@ -111,7 +115,7 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
111
115
|
test_utils_1.assert.isEqual(this.fakeLiblsl.localClockHitCount, 2);
|
|
112
116
|
}
|
|
113
117
|
static async constructionCreatesStreamInfo() {
|
|
114
|
-
await this.
|
|
118
|
+
await this.LslStreamOutlet();
|
|
115
119
|
test_utils_1.assert.isEqualDeep(FakeStreamInfo_1.default.callsToConstructor[0], {
|
|
116
120
|
channelNames: this.randomOutletOptions.channelNames,
|
|
117
121
|
channelFormat: this.randomOutletOptions.channelFormat,
|
|
@@ -123,12 +127,12 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
123
127
|
});
|
|
124
128
|
}
|
|
125
129
|
static async canOverrideClassInstantiatedInFactory() {
|
|
126
|
-
|
|
127
|
-
const instance = await this.
|
|
130
|
+
LslStreamOutlet_1.default.Class = CheckingOutlet;
|
|
131
|
+
const instance = await this.LslStreamOutlet();
|
|
128
132
|
test_utils_1.assert.isInstanceOf(instance, CheckingOutlet);
|
|
129
133
|
}
|
|
130
134
|
static async canDestroyOutlet() {
|
|
131
|
-
const outlet = await this.
|
|
135
|
+
const outlet = await this.LslStreamOutlet();
|
|
132
136
|
outlet.destroy();
|
|
133
137
|
test_utils_1.assert.isEqual(this.fakeLiblsl.destroyOutletHitCount, 1);
|
|
134
138
|
}
|
|
@@ -141,7 +145,7 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
141
145
|
}
|
|
142
146
|
static async waitsForTenMsAfterConstructionBeforeReturning() {
|
|
143
147
|
const startMs = Date.now();
|
|
144
|
-
await this.
|
|
148
|
+
await this.LslStreamOutlet({ waitAfterConstructionMs: 10 });
|
|
145
149
|
const endMs = Date.now();
|
|
146
150
|
test_utils_1.assert.isAbove(endMs - startMs, 10);
|
|
147
151
|
}
|
|
@@ -164,80 +168,80 @@ class LslOutletTest extends AbstractNodeLslTest_1.default {
|
|
|
164
168
|
await this.assertDoesThrowInvalidParameters({ channelNames: new Array(count).fill((0, test_utils_1.generateId)()) }, ['channelNames']);
|
|
165
169
|
}
|
|
166
170
|
static async assertDoesThrowInvalidParameters(options, parameters) {
|
|
167
|
-
const err = await test_utils_1.assert.doesThrowAsync(async () => await this.
|
|
171
|
+
const err = await test_utils_1.assert.doesThrowAsync(async () => await this.LslStreamOutlet(options));
|
|
168
172
|
test_utils_1.errorAssert.assertError(err, 'INVALID_PARAMETERS', {
|
|
169
173
|
parameters,
|
|
170
174
|
});
|
|
171
175
|
}
|
|
172
176
|
static async StringOutlet() {
|
|
173
|
-
return await this.
|
|
177
|
+
return await this.LslStreamOutlet({ channelFormat: 'string' });
|
|
174
178
|
}
|
|
175
179
|
static async FloatOutlet() {
|
|
176
|
-
return await this.
|
|
180
|
+
return await this.LslStreamOutlet({ channelFormat: 'float32' });
|
|
177
181
|
}
|
|
178
|
-
static async
|
|
179
|
-
return await
|
|
182
|
+
static async LslStreamOutlet(options) {
|
|
183
|
+
return await LslStreamOutlet_1.default.Create({
|
|
180
184
|
...this.randomOutletOptions,
|
|
181
185
|
...options,
|
|
182
186
|
});
|
|
183
187
|
}
|
|
184
188
|
}
|
|
185
|
-
exports.default =
|
|
189
|
+
exports.default = LslStreamOutletTest;
|
|
186
190
|
__decorate([
|
|
187
191
|
(0, test_utils_1.test)()
|
|
188
|
-
],
|
|
192
|
+
], LslStreamOutletTest, "throwsWithMissingRequiredParams", null);
|
|
189
193
|
__decorate([
|
|
190
194
|
(0, test_utils_1.test)()
|
|
191
|
-
],
|
|
195
|
+
], LslStreamOutletTest, "throwsWithInvalidChannelNames", null);
|
|
192
196
|
__decorate([
|
|
193
197
|
(0, test_utils_1.test)()
|
|
194
|
-
],
|
|
198
|
+
], LslStreamOutletTest, "allowsZeroSampleRate", null);
|
|
195
199
|
__decorate([
|
|
196
200
|
(0, test_utils_1.test)()
|
|
197
|
-
],
|
|
201
|
+
], LslStreamOutletTest, "throwsWithInvalidSampleRate", null);
|
|
198
202
|
__decorate([
|
|
199
203
|
(0, test_utils_1.test)()
|
|
200
|
-
],
|
|
204
|
+
], LslStreamOutletTest, "throwsWithInvalidChannelFormat", null);
|
|
201
205
|
__decorate([
|
|
202
206
|
(0, test_utils_1.test)()
|
|
203
|
-
],
|
|
207
|
+
], LslStreamOutletTest, "throwsWithInvalidChunkSize", null);
|
|
204
208
|
__decorate([
|
|
205
209
|
(0, test_utils_1.test)()
|
|
206
|
-
],
|
|
210
|
+
], LslStreamOutletTest, "throwsWithInvalidMaxBuffered", null);
|
|
207
211
|
__decorate([
|
|
208
212
|
(0, test_utils_1.test)()
|
|
209
|
-
],
|
|
213
|
+
], LslStreamOutletTest, "throwsWithUnsupportedType", null);
|
|
210
214
|
__decorate([
|
|
211
215
|
(0, test_utils_1.test)()
|
|
212
|
-
],
|
|
216
|
+
], LslStreamOutletTest, "supportsAllKnownChannelFormats", null);
|
|
213
217
|
__decorate([
|
|
214
218
|
(0, test_utils_1.test)('pushing [1, 2] sample sends to LSL', [1.0, 2.0]),
|
|
215
219
|
(0, test_utils_1.test)('pushing [1] sample sends to LSL', [1.0])
|
|
216
|
-
],
|
|
220
|
+
], LslStreamOutletTest, "canPushFloatSampleToLsl", null);
|
|
217
221
|
__decorate([
|
|
218
222
|
(0, test_utils_1.test)()
|
|
219
|
-
],
|
|
223
|
+
], LslStreamOutletTest, "canPushStringSampleToLsl", null);
|
|
220
224
|
__decorate([
|
|
221
225
|
(0, test_utils_1.test)()
|
|
222
|
-
],
|
|
226
|
+
], LslStreamOutletTest, "pushingStringTwiceGivesDifferentTimestamps", null);
|
|
223
227
|
__decorate([
|
|
224
228
|
(0, test_utils_1.test)()
|
|
225
|
-
],
|
|
229
|
+
], LslStreamOutletTest, "constructionCreatesStreamInfo", null);
|
|
226
230
|
__decorate([
|
|
227
231
|
(0, test_utils_1.test)()
|
|
228
|
-
],
|
|
232
|
+
], LslStreamOutletTest, "canOverrideClassInstantiatedInFactory", null);
|
|
229
233
|
__decorate([
|
|
230
234
|
(0, test_utils_1.test)()
|
|
231
|
-
],
|
|
235
|
+
], LslStreamOutletTest, "canDestroyOutlet", null);
|
|
232
236
|
__decorate([
|
|
233
237
|
(0, test_utils_1.test)()
|
|
234
|
-
],
|
|
238
|
+
], LslStreamOutletTest, "pushSampleShouldNotCreateMultipleOutlets", null);
|
|
235
239
|
__decorate([
|
|
236
240
|
(0, test_utils_1.test)()
|
|
237
|
-
],
|
|
238
|
-
class CheckingOutlet extends
|
|
241
|
+
], LslStreamOutletTest, "waitsForTenMsAfterConstructionBeforeReturning", null);
|
|
242
|
+
class CheckingOutlet extends LslStreamOutlet_1.default {
|
|
239
243
|
constructor(info, options) {
|
|
240
244
|
super(info, options);
|
|
241
245
|
}
|
|
242
246
|
}
|
|
243
|
-
//# sourceMappingURL=
|
|
247
|
+
//# sourceMappingURL=LslStreamOutlet.test.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LslStreamOutlet.test.js","sourceRoot":"","sources":["../../src/__tests__/LslStreamOutlet.test.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
import { DurationMarker } from '../nodeLsl.types';
|
|
2
|
+
import { LslOutletOptions, LslOutlet } from './LslStreamOutlet';
|
|
3
|
+
export default class EventMarkerOutlet implements MarkerOutlet {
|
|
4
|
+
static Class?: MarkerOutletConstructor;
|
|
5
|
+
protected lslOutlet: LslOutlet;
|
|
6
|
+
private isPlaying;
|
|
7
|
+
private waitResolve?;
|
|
8
|
+
private timeout?;
|
|
9
|
+
protected constructor(lslOutlet: LslOutlet);
|
|
10
|
+
static Create(options?: Partial<LslOutletOptions>): Promise<MarkerOutlet>;
|
|
11
|
+
pushMarkers(markers: DurationMarker[]): Promise<void>;
|
|
12
|
+
protected wait(durationMs: number): Promise<unknown>;
|
|
13
|
+
private setTimeout;
|
|
14
|
+
stop(): void;
|
|
15
|
+
}
|
|
16
|
+
export interface MarkerOutlet {
|
|
17
|
+
pushMarkers(markers: DurationMarker[]): Promise<void>;
|
|
18
|
+
stop(): void;
|
|
19
|
+
}
|
|
20
|
+
export type MarkerOutletConstructor = new (lslOutlet: LslOutlet) => MarkerOutlet;
|
|
@@ -3,34 +3,35 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
3
3
|
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
4
|
};
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
-
const
|
|
7
|
-
class
|
|
8
|
-
constructor() {
|
|
9
|
-
super(...arguments);
|
|
6
|
+
const LslStreamOutlet_1 = __importDefault(require("./LslStreamOutlet"));
|
|
7
|
+
class EventMarkerOutlet {
|
|
8
|
+
constructor(lslOutlet) {
|
|
10
9
|
this.isPlaying = false;
|
|
10
|
+
this.lslOutlet = lslOutlet;
|
|
11
11
|
}
|
|
12
12
|
static async Create(options) {
|
|
13
13
|
const defaultOptions = {
|
|
14
|
-
name: '
|
|
14
|
+
name: 'Event markers',
|
|
15
15
|
type: 'Markers',
|
|
16
16
|
channelNames: ['Markers'],
|
|
17
17
|
sampleRate: 0,
|
|
18
18
|
channelFormat: 'string',
|
|
19
|
-
sourceId: '
|
|
19
|
+
sourceId: 'event-markers',
|
|
20
20
|
manufacturer: 'N/A',
|
|
21
21
|
unit: 'N/A',
|
|
22
22
|
chunkSize: 0,
|
|
23
23
|
maxBuffered: 0,
|
|
24
24
|
};
|
|
25
|
-
|
|
25
|
+
const outlet = await LslStreamOutlet_1.default.Create({
|
|
26
26
|
...defaultOptions,
|
|
27
27
|
...options,
|
|
28
28
|
});
|
|
29
|
+
return new (this.Class ?? this)(outlet);
|
|
29
30
|
}
|
|
30
31
|
async pushMarkers(markers) {
|
|
31
32
|
this.isPlaying = true;
|
|
32
33
|
for (let marker of markers) {
|
|
33
|
-
this.pushSample([marker.name]);
|
|
34
|
+
this.lslOutlet.pushSample([marker.name]);
|
|
34
35
|
await this.wait(marker.durationMs);
|
|
35
36
|
if (!this.isPlaying) {
|
|
36
37
|
return;
|
|
@@ -50,5 +51,5 @@ class TimeMarkerOutletImpl extends LslOutlet_1.default {
|
|
|
50
51
|
this.isPlaying = false;
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
|
-
exports.default =
|
|
54
|
-
//# sourceMappingURL=
|
|
54
|
+
exports.default = EventMarkerOutlet;
|
|
55
|
+
//# sourceMappingURL=EventMarkerOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"EventMarkerOutlet.js","sourceRoot":"","sources":["../../src/components/EventMarkerOutlet.ts"],"names":[],"mappings":";;;;;AACA,wEAAgF;AAEhF,MAAqB,iBAAiB;IAQlC,YAAsB,SAAoB;QAJlC,cAAS,GAAG,KAAK,CAAA;QAKrB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;IAC9B,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAmC;QAC1D,MAAM,cAAc,GAAG;YACnB,IAAI,EAAE,eAAe;YACrB,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,CAAC,SAAS,CAAC;YACzB,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,QAAQ;YACvB,QAAQ,EAAE,eAAe;YACzB,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;SACG,CAAA;QAErB,MAAM,MAAM,GAAG,MAAM,yBAAe,CAAC,MAAM,CAAC;YACxC,GAAG,cAAc;YACjB,GAAG,OAAO;SACb,CAAC,CAAA;QAEF,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,MAAM,CAAC,CAAA;IAC3C,CAAC;IAEM,KAAK,CAAC,WAAW,CAAC,OAAyB;QAC9C,IAAI,CAAC,SAAS,GAAG,IAAI,CAAA;QAErB,KAAK,IAAI,MAAM,IAAI,OAAO,EAAE,CAAC;YACzB,IAAI,CAAC,SAAS,CAAC,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;YAExC,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,CAAA;YAElC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;gBAClB,OAAM;YACV,CAAC;QACL,CAAC;IACL,CAAC;IAES,KAAK,CAAC,IAAI,CAAC,UAAkB;QACnC,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,IAAI,CAAC,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAC,CAAA;IACzE,CAAC;IAEO,UAAU,CAAC,OAAiC,EAAE,UAAkB;QACpE,IAAI,CAAC,WAAW,GAAG,OAAc,CAAA;QACjC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,OAAO,EAAE,UAAU,CAAC,CAAA;IAClD,CAAC;IAEM,IAAI;QACP,IAAI,CAAC,WAAW,EAAE,EAAE,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;CACJ;AA9DD,oCA8DC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { define, open } from 'ffi-rs';
|
|
2
2
|
import { Liblsl, CreateStreamInfoOptions, AppendChannelsToStreamInfoOptions, CreateOutletOptions, DestroyOutletOptions, PushSampleFloatTimestampOptions, PushSampleStringTimestampOptions, CreateInletOptions, DestroyInletOptions } from '../nodeLsl.types';
|
|
3
|
-
export default class
|
|
3
|
+
export default class LiblslAdapter implements Liblsl {
|
|
4
4
|
private static instance?;
|
|
5
5
|
static ffiRsOpen: typeof open;
|
|
6
6
|
static ffiRsDefine: typeof define;
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const schema_1 = require("@sprucelabs/schema");
|
|
7
7
|
const ffi_rs_1 = require("ffi-rs");
|
|
8
8
|
const SpruceError_1 = __importDefault(require("../errors/SpruceError"));
|
|
9
|
-
class
|
|
9
|
+
class LiblslAdapter {
|
|
10
10
|
constructor() {
|
|
11
11
|
this.defaultMacOsPath = '/opt/homebrew/Cellar/lsl/1.16.2/lib/liblsl.1.16.2.dylib';
|
|
12
12
|
const path = process.env.LIBLSL_PATH ?? this.defaultMacOsPath;
|
|
@@ -37,11 +37,11 @@ class LiblslImpl {
|
|
|
37
37
|
delete this.instance;
|
|
38
38
|
}
|
|
39
39
|
loadBindings(liblslPath) {
|
|
40
|
-
|
|
40
|
+
LiblslAdapter.ffiRsOpen({
|
|
41
41
|
library: 'lsl',
|
|
42
42
|
path: liblslPath,
|
|
43
43
|
});
|
|
44
|
-
return
|
|
44
|
+
return LiblslAdapter.ffiRsDefine({
|
|
45
45
|
lsl_create_streaminfo: {
|
|
46
46
|
library: 'lsl',
|
|
47
47
|
retType: 11 /* DataType.External */,
|
|
@@ -192,7 +192,7 @@ class LiblslImpl {
|
|
|
192
192
|
return this.bindings.lsl_local_clock([]);
|
|
193
193
|
}
|
|
194
194
|
}
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
exports.default =
|
|
198
|
-
//# sourceMappingURL=
|
|
195
|
+
LiblslAdapter.ffiRsOpen = ffi_rs_1.open;
|
|
196
|
+
LiblslAdapter.ffiRsDefine = ffi_rs_1.define;
|
|
197
|
+
exports.default = LiblslAdapter;
|
|
198
|
+
//# sourceMappingURL=LiblslAdapter.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LiblslAdapter.js","sourceRoot":"","sources":["../../src/components/LiblslAdapter.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,7 +6,7 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
const schema_1 = require("@sprucelabs/schema");
|
|
7
7
|
const test_utils_1 = require("@sprucelabs/test-utils");
|
|
8
8
|
const consts_1 = require("../consts");
|
|
9
|
-
const
|
|
9
|
+
const LiblslAdapter_1 = __importDefault(require("./LiblslAdapter"));
|
|
10
10
|
class LslStreamInfo {
|
|
11
11
|
constructor(options) {
|
|
12
12
|
this.defaultName = `lsl-stream-info-${(0, test_utils_1.generateId)()}`;
|
|
@@ -58,7 +58,7 @@ class LslStreamInfo {
|
|
|
58
58
|
return consts_1.CHANNEL_FORMATS_MAP[this.channelFormat];
|
|
59
59
|
}
|
|
60
60
|
get lsl() {
|
|
61
|
-
return
|
|
61
|
+
return LiblslAdapter_1.default.getInstance();
|
|
62
62
|
}
|
|
63
63
|
}
|
|
64
64
|
exports.default = LslStreamInfo;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LslStreamInfo.js","sourceRoot":"","sources":["../../src/components/LslStreamInfo.ts"],"names":[],"mappings":";;;;;AAAA,+CAAkD;AAClD,uDAAmD;AACnD,sCAA+C;AAE/C,
|
|
1
|
+
{"version":3,"file":"LslStreamInfo.js","sourceRoot":"","sources":["../../src/components/LslStreamInfo.ts"],"names":[],"mappings":";;;;;AAAA,+CAAkD;AAClD,uDAAmD;AACnD,sCAA+C;AAE/C,oEAA2C;AAE3C,MAAqB,aAAa;IAY9B,YAAsB,OAA0B;QAkE/B,gBAAW,GAAG,mBAAmB,IAAA,uBAAU,GAAE,EAAE,CAAA;QAC/C,gBAAW,GAAG,IAAA,uBAAU,GAAE,CAAA;QAC1B,oBAAe,GAAG,IAAA,uBAAU,GAAE,CAAA;QAC9B,iBAAY,GAAG,KAAK,CAAA;QApEjC,MAAM,EACF,YAAY,EACZ,aAAa,EACb,UAAU,EACV,IAAI,GAAG,IAAI,CAAC,WAAW,EACvB,IAAI,GAAG,IAAI,CAAC,WAAW,EACvB,QAAQ,GAAG,IAAI,CAAC,eAAe,EAC/B,KAAK,GAAG,IAAI,CAAC,YAAY,GAC5B,GAAG,OAAO,CAAA;QAEX,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAA;QACxB,IAAI,CAAC,YAAY,GAAG,YAAY,CAAA;QAChC,IAAI,CAAC,aAAa,GAAG,aAAa,CAAA;QAClC,IAAI,CAAC,KAAK,GAAG,KAAK,CAAA;QAClB,IAAI,CAAC,UAAU,GAAG,UAAU,CAAA;QAE5B,IAAI,CAAC,gBAAgB,EAAE,CAAA;QACvB,IAAI,CAAC,0BAA0B,EAAE,CAAA;IACrC,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAA0B;QAC3C,IAAA,sBAAa,EAAC,OAAO,EAAE,CAAC,cAAc,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,CAAA;QACvE,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAA;IAC5C,CAAC;IAEO,gBAAgB;QACpB,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACxC,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,IAAI,EAAE,IAAI,CAAC,IAAI;YACf,QAAQ,EAAE,IAAI,CAAC,QAAQ;YACvB,YAAY,EAAE,IAAI,CAAC,YAAY;YAC/B,aAAa,EAAE,IAAI,CAAC,gBAAgB;YACpC,UAAU,EAAE,IAAI,CAAC,UAAU;SAC9B,CAAC,CAAA;IACN,CAAC;IAEO,0BAA0B;QAC9B,IAAI,CAAC,GAAG,CAAC,0BAA0B,CAAC;YAChC,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,QAAQ,EAAE,IAAI,CAAC,YAAY,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC;gBAChD,KAAK;gBACL,IAAI,EAAE,IAAI,CAAC,KAAK;gBAChB,IAAI,EAAE,IAAI,CAAC,IAAI;aAClB,CAAC,CAAC;SACN,CAAC,CAAA;IACN,CAAC;IAED,IAAW,eAAe;QACtB,OAAO,IAAI,CAAC,UAAU,CAAA;IAC1B,CAAC;IAED,IAAY,YAAY;QACpB,OAAO,IAAI,CAAC,YAAY,CAAC,MAAM,CAAA;IACnC,CAAC;IAED,IAAY,gBAAgB;QACxB,OAAO,4BAAmB,CAAC,IAAI,CAAC,aAAa,CAAC,CAAA;IAClD,CAAC;IAED,IAAY,GAAG;QACX,OAAO,uBAAa,CAAC,WAAW,EAAE,CAAA;IACtC,CAAC;CAMJ;AAlFD,gCAkFC"}
|
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
import { ChannelFormat } from '../nodeLsl.types';
|
|
2
2
|
import { StreamInfo } from './LslStreamInfo';
|
|
3
|
-
export default class
|
|
3
|
+
export default class LslStreamInlet implements LslInlet {
|
|
4
4
|
static Class?: LslInletConstructor;
|
|
5
5
|
protected name: string;
|
|
6
6
|
protected info: StreamInfo;
|
|
7
7
|
private chunkSize;
|
|
8
8
|
private maxBuffered;
|
|
9
9
|
protected constructor(info: StreamInfo, options: LslInletOptions);
|
|
10
|
-
static Create(options: LslInletOptions):
|
|
10
|
+
static Create(options: LslInletOptions): LslInlet;
|
|
11
11
|
private createLslInlet;
|
|
12
12
|
private get boundStreamInfo();
|
|
13
13
|
private get lsl();
|
|
14
14
|
private readonly defaultName;
|
|
15
15
|
private static LslStreamInfo;
|
|
16
16
|
}
|
|
17
|
-
export interface
|
|
17
|
+
export interface LslInlet {
|
|
18
18
|
}
|
|
19
|
-
export type LslInletConstructor = new (info: StreamInfo, options: LslInletOptions) =>
|
|
19
|
+
export type LslInletConstructor = new (info: StreamInfo, options: LslInletOptions) => LslInlet;
|
|
20
20
|
export interface LslInletOptions {
|
|
21
21
|
sampleRate: number;
|
|
22
22
|
channelNames: string[];
|
|
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const schema_1 = require("@sprucelabs/schema");
|
|
7
7
|
const test_utils_1 = require("@sprucelabs/test-utils");
|
|
8
|
-
const
|
|
8
|
+
const LiblslAdapter_1 = __importDefault(require("./LiblslAdapter"));
|
|
9
9
|
const LslStreamInfo_1 = __importDefault(require("./LslStreamInfo"));
|
|
10
|
-
class
|
|
10
|
+
class LslStreamInlet {
|
|
11
11
|
constructor(info, options) {
|
|
12
12
|
this.defaultName = `lsl-inlet-${(0, test_utils_1.generateId)()}`;
|
|
13
13
|
const { name = this.defaultName, chunkSize, maxBuffered, } = options ?? {};
|
|
@@ -41,11 +41,11 @@ class LslInlet {
|
|
|
41
41
|
return this.info.boundStreamInfo;
|
|
42
42
|
}
|
|
43
43
|
get lsl() {
|
|
44
|
-
return
|
|
44
|
+
return LiblslAdapter_1.default.getInstance();
|
|
45
45
|
}
|
|
46
46
|
static LslStreamInfo(options) {
|
|
47
47
|
return LslStreamInfo_1.default.Create(options);
|
|
48
48
|
}
|
|
49
49
|
}
|
|
50
|
-
exports.default =
|
|
51
|
-
//# sourceMappingURL=
|
|
50
|
+
exports.default = LslStreamInlet;
|
|
51
|
+
//# sourceMappingURL=LslStreamInlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LslStreamInlet.js","sourceRoot":"","sources":["../../src/components/LslStreamInlet.ts"],"names":[],"mappings":";;;;;AAAA,+CAAkD;AAClD,uDAAmD;AAEnD,oEAA2C;AAC3C,oEAA8E;AAE9E,MAAqB,cAAc;IAQ/B,YAAsB,IAAgB,EAAE,OAAwB;QA6C/C,gBAAW,GAAG,aAAa,IAAA,uBAAU,GAAE,EAAE,CAAA;QA5CtD,MAAM,EACF,IAAI,GAAG,IAAI,CAAC,WAAW,EACvB,SAAS,EACT,WAAW,GACd,GAAG,OAAO,IAAI,EAAE,CAAA;QAEjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAChB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAA;QAC1B,IAAI,CAAC,WAAW,GAAG,WAAW,CAAA;QAC9B,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;QAEhB,IAAI,CAAC,cAAc,EAAE,CAAA;IACzB,CAAC;IAEM,MAAM,CAAC,MAAM,CAAC,OAAwB;QACzC,IAAA,sBAAa,EAAC,OAAO,EAAE;YACnB,cAAc;YACd,eAAe;YACf,YAAY;YACZ,WAAW;YACX,aAAa;SAChB,CAAC,CAAA;QACF,6DAA6D;QAC7D,MAAM,EAAE,WAAW,EAAE,SAAS,EAAE,GAAG,iBAAiB,EAAE,GAAG,OAAO,CAAA;QAChE,MAAM,IAAI,GAAG,IAAI,CAAC,aAAa,CAAC,iBAAiB,CAAC,CAAA;QAClD,OAAO,IAAI,CAAC,IAAI,CAAC,KAAK,IAAI,IAAI,CAAC,CAAC,IAAI,EAAE,OAAO,CAAC,CAAA;IAClD,CAAC;IAEO,cAAc;QAClB,IAAI,CAAC,GAAG,CAAC,WAAW,CAAC;YACjB,IAAI,EAAE,IAAI,CAAC,eAAe;YAC1B,SAAS,EAAE,IAAI,CAAC,SAAS;YACzB,WAAW,EAAE,IAAI,CAAC,WAAW;SAChC,CAAC,CAAA;IACN,CAAC;IAED,IAAY,eAAe;QACvB,OAAO,IAAI,CAAC,IAAI,CAAC,eAAe,CAAA;IACpC,CAAC;IAED,IAAY,GAAG;QACX,OAAO,uBAAa,CAAC,WAAW,EAAE,CAAA;IACtC,CAAC;IAIO,MAAM,CAAC,aAAa,CAAC,OAA0B;QACnD,OAAO,uBAAa,CAAC,MAAM,CAAC,OAAO,CAAC,CAAA;IACxC,CAAC;CACJ;AA1DD,iCA0DC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { ChannelFormat, LslSample } from '../nodeLsl.types';
|
|
2
2
|
import { StreamInfo } from './LslStreamInfo';
|
|
3
|
-
export default class
|
|
3
|
+
export default class LslStreamOutlet implements LslOutlet {
|
|
4
4
|
static Class?: LslOutletConstructor;
|
|
5
5
|
private info;
|
|
6
6
|
private options;
|
|
@@ -5,9 +5,9 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
const schema_1 = require("@sprucelabs/schema");
|
|
7
7
|
const assertions_1 = require("../assertions");
|
|
8
|
-
const
|
|
8
|
+
const LiblslAdapter_1 = __importDefault(require("./LiblslAdapter"));
|
|
9
9
|
const LslStreamInfo_1 = __importDefault(require("./LslStreamInfo"));
|
|
10
|
-
class
|
|
10
|
+
class LslStreamOutlet {
|
|
11
11
|
constructor(info, options) {
|
|
12
12
|
this.info = info;
|
|
13
13
|
this.options = options;
|
|
@@ -105,7 +105,7 @@ class LslOutletImpl {
|
|
|
105
105
|
return this.info.boundStreamInfo;
|
|
106
106
|
}
|
|
107
107
|
get lsl() {
|
|
108
|
-
return
|
|
108
|
+
return LiblslAdapter_1.default.getInstance();
|
|
109
109
|
}
|
|
110
110
|
static async wait(waitMs) {
|
|
111
111
|
return new Promise((resolve) => setTimeout(resolve, waitMs));
|
|
@@ -114,5 +114,5 @@ class LslOutletImpl {
|
|
|
114
114
|
return LslStreamInfo_1.default.Create(options);
|
|
115
115
|
}
|
|
116
116
|
}
|
|
117
|
-
exports.default =
|
|
118
|
-
//# sourceMappingURL=
|
|
117
|
+
exports.default = LslStreamOutlet;
|
|
118
|
+
//# sourceMappingURL=LslStreamOutlet.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"LslStreamOutlet.js","sourceRoot":"","sources":["../../src/components/LslStreamOutlet.ts"],"names":[],"mappings":"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"}
|
package/build/index.d.ts
CHANGED
|
@@ -1,23 +1,24 @@
|
|
|
1
1
|
export * from './nodeLsl.types';
|
|
2
|
-
export { default as
|
|
3
|
-
export * from './components/
|
|
2
|
+
export { default as LiblslAdapter } from './components/LiblslAdapter';
|
|
3
|
+
export * from './components/LiblslAdapter';
|
|
4
|
+
export { default as FakeLiblsl } from './testDoubles/Liblsl/FakeLiblsl';
|
|
5
|
+
export * from './testDoubles/Liblsl/FakeLiblsl';
|
|
4
6
|
export { default as LslStreamInfo } from './components/LslStreamInfo';
|
|
5
7
|
export * from './components/LslStreamInfo';
|
|
6
|
-
export { default as
|
|
7
|
-
export * from './testDoubles/
|
|
8
|
-
export { default as FakeStreamInfo } from './testDoubles/FakeStreamInfo';
|
|
9
|
-
export
|
|
10
|
-
export
|
|
11
|
-
export
|
|
12
|
-
export
|
|
13
|
-
export
|
|
14
|
-
export
|
|
15
|
-
export
|
|
16
|
-
export
|
|
17
|
-
export
|
|
18
|
-
export
|
|
19
|
-
export
|
|
20
|
-
export
|
|
21
|
-
export
|
|
22
|
-
export * from './testDoubles/SpyTimeMarkerOutlet';
|
|
8
|
+
export { default as SpyStreamInfo } from './testDoubles/StreamInfo/SpyStreamInfo';
|
|
9
|
+
export * from './testDoubles/StreamInfo/SpyStreamInfo';
|
|
10
|
+
export { default as FakeStreamInfo } from './testDoubles/StreamInfo/FakeStreamInfo';
|
|
11
|
+
export * from './testDoubles/StreamInfo/FakeStreamInfo';
|
|
12
|
+
export { default as LslStreamOutlet } from './components/LslStreamOutlet';
|
|
13
|
+
export * from './components/LslStreamOutlet';
|
|
14
|
+
export { default as FakeLslOutlet } from './testDoubles/LslOutlet/FakeLslOutlet';
|
|
15
|
+
export * from './testDoubles/LslOutlet/FakeLslOutlet';
|
|
16
|
+
export { default as EventMarkerOutlet } from './components/EventMarkerOutlet';
|
|
17
|
+
export * from './components/EventMarkerOutlet';
|
|
18
|
+
export { default as FakeMarkerOutlet } from './testDoubles/MarkerOutlet/FakeMarkerOutlet';
|
|
19
|
+
export * from './testDoubles/MarkerOutlet/FakeMarkerOutlet';
|
|
20
|
+
export { default as MockMarkerOutlet } from './testDoubles/MarkerOutlet/MockMarkerOutlet';
|
|
21
|
+
export * from './testDoubles/MarkerOutlet/MockMarkerOutlet';
|
|
22
|
+
export { default as SpyMarkerOutlet } from './testDoubles/MarkerOutlet/SpyMarkerOutlet';
|
|
23
|
+
export * from './testDoubles/MarkerOutlet/SpyMarkerOutlet';
|
|
23
24
|
export { default as generateRandomOutletOptions } from './testDoubles/generateRandomOutletOptions';
|