@neurodevs/node-lsl 8.0.11 → 10.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (34) hide show
  1. package/build/__tests__/behavioral/LslOutlet.test.d.ts +4 -2
  2. package/build/__tests__/behavioral/LslOutlet.test.js +66 -46
  3. package/build/__tests__/behavioral/LslOutlet.test.js.map +1 -1
  4. package/build/__tests__/behavioral/TimeMarkerOutlet.test.js +12 -12
  5. package/build/__tests__/behavioral/TimeMarkerOutlet.test.js.map +1 -1
  6. package/build/__tests__/support/generateRandomOutletOptions.d.ts +1 -1
  7. package/build/implementations/LslOutlet.d.ts +22 -3
  8. package/build/implementations/LslOutlet.js +10 -4
  9. package/build/implementations/LslOutlet.js.map +1 -1
  10. package/build/implementations/TimeMarkerOutlet.d.ts +8 -3
  11. package/build/implementations/TimeMarkerOutlet.js +1 -1
  12. package/build/implementations/TimeMarkerOutlet.js.map +1 -1
  13. package/build/index.d.ts +5 -5
  14. package/build/index.js +8 -8
  15. package/build/index.js.map +1 -1
  16. package/build/nodeLsl.types.d.ts +0 -21
  17. package/build/testDoubles/{SpyImplementsTimeMarkerOutlet.d.ts → FakeTimeMarkerOutlet.d.ts} +4 -3
  18. package/build/testDoubles/{SpyImplementsTimeMarkerOutlet.js → FakeTimeMarkerOutlet.js} +4 -4
  19. package/build/testDoubles/FakeTimeMarkerOutlet.js.map +1 -0
  20. package/build/testDoubles/{SpyExtendsTimeMarkerOutlet.d.ts → SpyTimeMarkerOutlet.d.ts} +3 -3
  21. package/build/testDoubles/{SpyExtendsTimeMarkerOutlet.js → SpyTimeMarkerOutlet.js} +4 -4
  22. package/build/testDoubles/SpyTimeMarkerOutlet.js.map +1 -0
  23. package/package.json +1 -1
  24. package/src/__tests__/behavioral/LslOutlet.test.ts +82 -54
  25. package/src/__tests__/behavioral/TimeMarkerOutlet.test.ts +15 -15
  26. package/src/__tests__/support/generateRandomOutletOptions.ts +1 -1
  27. package/src/implementations/LslOutlet.ts +34 -7
  28. package/src/implementations/TimeMarkerOutlet.ts +12 -8
  29. package/src/index.ts +6 -6
  30. package/src/nodeLsl.types.ts +0 -27
  31. package/src/testDoubles/{SpyImplementsTimeMarkerOutlet.ts → FakeTimeMarkerOutlet.ts} +4 -3
  32. package/src/testDoubles/{SpyExtendsTimeMarkerOutlet.ts → SpyTimeMarkerOutlet.ts} +4 -4
  33. package/build/testDoubles/SpyExtendsTimeMarkerOutlet.js.map +0 -1
  34. package/build/testDoubles/SpyImplementsTimeMarkerOutlet.js.map +0 -1
@@ -5,8 +5,9 @@ export default class LslOutletTest extends AbstractSpruceTest {
5
5
  private static randomOutletOptions;
6
6
  private static channelFormatIdx;
7
7
  protected static beforeEach(): Promise<void>;
8
- protected static throwsWhenMissingRequiredParams(): Promise<void>;
8
+ protected static throwsWithMissingRequiredParams(): Promise<void>;
9
9
  protected static throwsWithInvalidChannelNames(): Promise<void>;
10
+ protected static allowsZeroSampleRate(): Promise<void>;
10
11
  protected static throwsWithInvalidSampleRate(): Promise<void>;
11
12
  protected static throwsWithInvalidChannelFormat(): Promise<void>;
12
13
  protected static throwsWithInvalidChunkSize(): Promise<void>;
@@ -21,12 +22,13 @@ export default class LslOutletTest extends AbstractSpruceTest {
21
22
  protected static appendsChannelsBasedOnCount(labels: string[]): Promise<void>;
22
23
  protected static canDestroyOutlet(): Promise<void>;
23
24
  protected static pushSampleShouldNotCreateMultipleOutlets(): Promise<void>;
25
+ protected static waitsForTenMsAfterConstructionBeforeReturning(): Promise<void>;
24
26
  private static assertThrowsInvalidMaxBuffered;
25
27
  private static assertThrowsInvalidChunkSize;
26
28
  private static assertThrowsInvalidSampleRate;
27
29
  private static assertThrowsInvalidChannelNames;
28
30
  private static assertDoesThrowInvalidParameters;
29
- private static Outlet;
30
31
  private static StringOutlet;
31
32
  private static FloatOutlet;
33
+ private static Outlet;
32
34
  }
@@ -48,9 +48,10 @@ class LslOutletTest extends test_utils_1.default {
48
48
  this.fakeLiblsl = new FakeLiblsl_1.default();
49
49
  Liblsl_1.default.setInstance(this.fakeLiblsl);
50
50
  }
51
- static async throwsWhenMissingRequiredParams() {
51
+ static async throwsWithMissingRequiredParams() {
52
+ const err = await test_utils_1.assert.doesThrowAsync(
52
53
  //@ts-ignore
53
- const err = test_utils_1.assert.doesThrow(() => new LslOutlet_1.default());
54
+ async () => await LslOutlet_1.default.Create());
54
55
  test_utils_1.errorAssert.assertError(err, 'MISSING_PARAMETERS', {
55
56
  parameters: [
56
57
  'name',
@@ -67,44 +68,45 @@ class LslOutletTest extends test_utils_1.default {
67
68
  });
68
69
  }
69
70
  static async throwsWithInvalidChannelNames() {
70
- this.assertThrowsInvalidChannelNames(0);
71
+ await this.assertThrowsInvalidChannelNames(0);
72
+ }
73
+ static async allowsZeroSampleRate() {
74
+ await this.Outlet({ sampleRate: 0 });
71
75
  }
72
76
  static async throwsWithInvalidSampleRate() {
73
- this.Outlet({ sampleRate: 0 });
74
- this.assertThrowsInvalidSampleRate(-1);
75
- this.assertThrowsInvalidSampleRate(-1.5);
77
+ await this.assertThrowsInvalidSampleRate(-1);
78
+ await this.assertThrowsInvalidSampleRate(-1.5);
76
79
  }
77
80
  static async throwsWithInvalidChannelFormat() {
81
+ await this.assertDoesThrowInvalidParameters(
78
82
  //@ts-ignore
79
- this.assertDoesThrowInvalidParameters({ channelFormat: (0, test_utils_1.generateId)() }, [
80
- 'channelFormat',
81
- ]);
83
+ { channelFormat: (0, test_utils_1.generateId)() }, ['channelFormat']);
82
84
  }
83
85
  static async throwsWithInvalidChunkSize() {
84
- this.Outlet({ chunkSize: 0 });
85
- this.assertThrowsInvalidChunkSize(-1);
86
- this.assertThrowsInvalidChunkSize(-1.5);
87
- this.assertThrowsInvalidChunkSize(1.5);
86
+ await this.Outlet({ chunkSize: 0 });
87
+ await this.assertThrowsInvalidChunkSize(-1);
88
+ await this.assertThrowsInvalidChunkSize(-1.5);
89
+ await this.assertThrowsInvalidChunkSize(1.5);
88
90
  }
89
91
  static async throwsWithInvalidMaxBuffered() {
90
- this.Outlet({ maxBuffered: 0 });
91
- this.assertThrowsInvalidMaxBuffered(-1);
92
- this.assertThrowsInvalidMaxBuffered(-1.5);
93
- this.assertThrowsInvalidMaxBuffered(1.5);
92
+ await this.Outlet({ maxBuffered: 0 });
93
+ await this.assertThrowsInvalidMaxBuffered(-1);
94
+ await this.assertThrowsInvalidMaxBuffered(-1.5);
95
+ await this.assertThrowsInvalidMaxBuffered(1.5);
94
96
  }
95
97
  static async throwsWithUnsupportedType() {
96
98
  for (let unsupportedType of consts_1.TEST_UNSUPPORTED_CHANNEL_FORMATS) {
97
- test_utils_1.assert.doesThrow(() => this.Outlet({ channelFormat: unsupportedType }), `This method currently does not support the ${unsupportedType} type! Please implement it.`);
99
+ await test_utils_1.assert.doesThrowAsync(async () => await this.Outlet({ channelFormat: unsupportedType }), `This method currently does not support the ${unsupportedType} type! Please implement it.`);
98
100
  }
99
101
  }
100
102
  static async supportsAllKnownChannelFormats() {
101
103
  for (const format of consts_1.TEST_SUPPORTED_CHANNEL_FORMATS) {
102
- this.Outlet({ channelFormat: format });
104
+ await this.Outlet({ channelFormat: format });
103
105
  }
104
106
  }
105
107
  static async canPushFloatSampleToLsl(sample) {
106
108
  var _a, _b, _c;
107
- const outlet = this.FloatOutlet();
109
+ const outlet = await this.FloatOutlet();
108
110
  outlet.pushSample(sample);
109
111
  test_utils_1.assert.isEqual((_a = this.fakeLiblsl.lastPushSampleFloatTimestampOptions) === null || _a === void 0 ? void 0 : _a.outlet, this.fakeLiblsl.outlet);
110
112
  test_utils_1.assert.isEqualDeep((_b = this.fakeLiblsl.lastPushSampleFloatTimestampOptions) === null || _b === void 0 ? void 0 : _b.sample, sample);
@@ -118,7 +120,7 @@ class LslOutletTest extends test_utils_1.default {
118
120
  static async canPushStringSampleToLsl() {
119
121
  var _a, _b, _c;
120
122
  const sample = [(0, test_utils_1.generateId)()];
121
- const outlet = this.StringOutlet();
123
+ const outlet = await this.StringOutlet();
122
124
  outlet.pushSample(sample);
123
125
  test_utils_1.assert.isEqual((_a = this.fakeLiblsl.lastPushSampleStringTimestampOptions) === null || _a === void 0 ? void 0 : _a.outlet, this.fakeLiblsl.outlet);
124
126
  test_utils_1.assert.isEqualDeep((_b = this.fakeLiblsl.lastPushSampleStringTimestampOptions) === null || _b === void 0 ? void 0 : _b.sample, sample);
@@ -126,7 +128,7 @@ class LslOutletTest extends test_utils_1.default {
126
128
  }
127
129
  static async pushingStringTwiceGivesDifferentTimestamps() {
128
130
  var _a, _b;
129
- const outlet = this.StringOutlet();
131
+ const outlet = await this.StringOutlet();
130
132
  const sample = [(0, test_utils_1.generateId)()];
131
133
  outlet.pushSample(sample);
132
134
  const t1 = (_a = this.fakeLiblsl.lastPushSampleStringTimestampOptions) === null || _a === void 0 ? void 0 : _a.timestamp;
@@ -137,7 +139,7 @@ class LslOutletTest extends test_utils_1.default {
137
139
  test_utils_1.assert.isEqual(this.fakeLiblsl.localClockHitCount, 2);
138
140
  }
139
141
  static async constructionCreatesStreamInfo() {
140
- this.Outlet();
142
+ await this.Outlet();
141
143
  const { ...options } = this.randomOutletOptions;
142
144
  options.channelCount = options.channelNames.length;
143
145
  delete options.manufacturer;
@@ -152,13 +154,13 @@ class LslOutletTest extends test_utils_1.default {
152
154
  }
153
155
  static async canOverrideClassInstantiatedInFactory() {
154
156
  LslOutlet_1.default.Class = CheckingOutlet;
155
- const instance = this.Outlet();
157
+ const instance = await this.Outlet();
156
158
  test_utils_1.assert.isInstanceOf(instance, CheckingOutlet);
157
159
  }
158
160
  static async appendsChannelsBasedOnCount(labels) {
159
161
  const type = (0, test_utils_1.generateId)();
160
162
  const unit = (0, test_utils_1.generateId)();
161
- this.Outlet({ channelNames: labels, type, unit });
163
+ await this.Outlet({ channelNames: labels, type, unit });
162
164
  test_utils_1.assert.isEqualDeep(this.fakeLiblsl.lastAppendChannelsToStreamInfoOptions, {
163
165
  info: this.fakeLiblsl.streamInfo,
164
166
  channels: labels.map((label) => ({
@@ -169,55 +171,70 @@ class LslOutletTest extends test_utils_1.default {
169
171
  });
170
172
  }
171
173
  static async canDestroyOutlet() {
172
- const outlet = this.Outlet();
174
+ const outlet = await this.Outlet();
173
175
  outlet.destroy();
174
176
  test_utils_1.assert.isEqual(this.fakeLiblsl.destroyOutletHitCount, 1);
175
177
  }
176
178
  static async pushSampleShouldNotCreateMultipleOutlets() {
177
- const outlet = this.FloatOutlet();
179
+ const outlet = await this.FloatOutlet();
178
180
  outlet.pushSample([1.0]);
179
181
  outlet.pushSample([2.0]);
180
182
  outlet.pushSample([3.0]);
181
183
  test_utils_1.assert.isEqual(this.fakeLiblsl.createStreamInfoHitCount, 1);
182
184
  }
183
- static assertThrowsInvalidMaxBuffered(maxBuffered) {
184
- this.assertDoesThrowInvalidParameters({ maxBuffered }, ['maxBuffered']);
185
+ static async waitsForTenMsAfterConstructionBeforeReturning() {
186
+ const startMs = Date.now();
187
+ await this.Outlet({ waitAfterConstructionMs: 10 });
188
+ const endMs = Date.now();
189
+ test_utils_1.assert.isAbove(endMs - startMs, 10);
185
190
  }
186
- static assertThrowsInvalidChunkSize(chunkSize) {
187
- this.assertDoesThrowInvalidParameters({ chunkSize }, ['chunkSize']);
191
+ static async assertThrowsInvalidMaxBuffered(maxBuffered) {
192
+ await this.assertDoesThrowInvalidParameters({ maxBuffered }, [
193
+ 'maxBuffered',
194
+ ]);
188
195
  }
189
- static assertThrowsInvalidSampleRate(sampleRate) {
190
- this.assertDoesThrowInvalidParameters({ sampleRate }, ['sampleRate']);
196
+ static async assertThrowsInvalidChunkSize(chunkSize) {
197
+ await this.assertDoesThrowInvalidParameters({ chunkSize }, [
198
+ 'chunkSize',
199
+ ]);
191
200
  }
192
- static assertThrowsInvalidChannelNames(count) {
193
- this.assertDoesThrowInvalidParameters({ channelNames: new Array(count).fill((0, test_utils_1.generateId)()) }, ['channelNames']);
201
+ static async assertThrowsInvalidSampleRate(sampleRate) {
202
+ await this.assertDoesThrowInvalidParameters({ sampleRate }, [
203
+ 'sampleRate',
204
+ ]);
205
+ }
206
+ static async assertThrowsInvalidChannelNames(count) {
207
+ await this.assertDoesThrowInvalidParameters({ channelNames: new Array(count).fill((0, test_utils_1.generateId)()) }, ['channelNames']);
194
208
  }
195
- static assertDoesThrowInvalidParameters(options, parameters) {
196
- const err = test_utils_1.assert.doesThrow(() => this.Outlet(options));
209
+ static async assertDoesThrowInvalidParameters(options, parameters) {
210
+ const err = await test_utils_1.assert.doesThrowAsync(async () => await this.Outlet(options));
197
211
  test_utils_1.errorAssert.assertError(err, 'INVALID_PARAMETERS', {
198
212
  parameters,
199
213
  });
200
214
  }
201
- static Outlet(options) {
202
- return LslOutlet_1.default.Outlet({
215
+ static async StringOutlet() {
216
+ return await this.Outlet({ channelFormat: 'string' });
217
+ }
218
+ static async FloatOutlet() {
219
+ return await this.Outlet({ channelFormat: 'float32' });
220
+ }
221
+ static async Outlet(options) {
222
+ return await LslOutlet_1.default.Create({
203
223
  ...this.randomOutletOptions,
204
224
  ...options,
205
225
  });
206
226
  }
207
- static StringOutlet() {
208
- return this.Outlet({ channelFormat: 'string' });
209
- }
210
- static FloatOutlet() {
211
- return this.Outlet({ channelFormat: 'float32' });
212
- }
213
227
  }
214
228
  exports.default = LslOutletTest;
215
229
  __decorate([
216
230
  (0, test_utils_1.test)()
217
- ], LslOutletTest, "throwsWhenMissingRequiredParams", null);
231
+ ], LslOutletTest, "throwsWithMissingRequiredParams", null);
218
232
  __decorate([
219
233
  (0, test_utils_1.test)()
220
234
  ], LslOutletTest, "throwsWithInvalidChannelNames", null);
235
+ __decorate([
236
+ (0, test_utils_1.test)()
237
+ ], LslOutletTest, "allowsZeroSampleRate", null);
221
238
  __decorate([
222
239
  (0, test_utils_1.test)()
223
240
  ], LslOutletTest, "throwsWithInvalidSampleRate", null);
@@ -262,6 +279,9 @@ __decorate([
262
279
  __decorate([
263
280
  (0, test_utils_1.test)()
264
281
  ], LslOutletTest, "pushSampleShouldNotCreateMultipleOutlets", null);
282
+ __decorate([
283
+ (0, test_utils_1.test)()
284
+ ], LslOutletTest, "waitsForTenMsAfterConstructionBeforeReturning", null);
265
285
  class CheckingOutlet extends LslOutlet_1.default {
266
286
  constructor(options) {
267
287
  super(options);
@@ -1 +1 @@
1
- {"version":3,"file":"LslOutlet.test.js","sourceRoot":"","sources":["../../../src/__tests__/behavioral/LslOutlet.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LslOutlet.test.js","sourceRoot":"","sources":["../../../src/__tests__/behavioral/LslOutlet.test.ts"],"names":[],"mappings":"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"}
@@ -37,18 +37,18 @@ const test_utils_1 = __importStar(require("@sprucelabs/test-utils"));
37
37
  const Liblsl_1 = __importDefault(require("../../implementations/Liblsl"));
38
38
  const TimeMarkerOutlet_1 = __importDefault(require("../../implementations/TimeMarkerOutlet"));
39
39
  const FakeLiblsl_1 = __importDefault(require("../../testDoubles/FakeLiblsl"));
40
- const SpyExtendsTimeMarkerOutlet_1 = __importDefault(require("../../testDoubles/SpyExtendsTimeMarkerOutlet"));
40
+ const SpyTimeMarkerOutlet_1 = __importDefault(require("../../testDoubles/SpyTimeMarkerOutlet"));
41
41
  const generateRandomOutletOptions_1 = __importDefault(require("../support/generateRandomOutletOptions"));
42
42
  class TimeMarkerOutletTest extends test_utils_1.default {
43
43
  static async beforeEach() {
44
44
  await super.beforeEach();
45
- TimeMarkerOutlet_1.default.Class = SpyExtendsTimeMarkerOutlet_1.default;
45
+ TimeMarkerOutlet_1.default.Class = SpyTimeMarkerOutlet_1.default;
46
46
  this.fakeLiblsl = new FakeLiblsl_1.default();
47
47
  Liblsl_1.default.setInstance(this.fakeLiblsl);
48
- this.outlet = this.Outlet();
48
+ this.outlet = await this.Outlet();
49
49
  }
50
50
  static async loadsWithTimeMarkerSpecificOptions() {
51
- test_utils_1.assert.isEqualDeep(this.outlet.spyOptions, {
51
+ test_utils_1.assert.isEqualDeep(this.outlet.passedOptions, {
52
52
  name: 'Time markers',
53
53
  type: 'Markers',
54
54
  channelNames: ['Markers'],
@@ -63,8 +63,8 @@ class TimeMarkerOutletTest extends test_utils_1.default {
63
63
  }
64
64
  static async canOverrideDefaultOptions() {
65
65
  const options = (0, generateRandomOutletOptions_1.default)();
66
- const outlet = this.Outlet(options);
67
- test_utils_1.assert.isEqualDeep(outlet.spyOptions, options);
66
+ const outlet = await this.Outlet(options);
67
+ test_utils_1.assert.isEqualDeep(outlet.passedOptions, options);
68
68
  }
69
69
  static async pushingSingleMarkerIncrementsHitCountAndWaitTime() {
70
70
  const markers = [this.generateDurationMarkerValues()];
@@ -98,7 +98,7 @@ class TimeMarkerOutletTest extends test_utils_1.default {
98
98
  test_utils_1.assert.isEqual(hitCount, 10);
99
99
  }
100
100
  static async doesNotWaitIfStopped() {
101
- this.setupTimeMarkerImpl();
101
+ await this.setupTimeMarkerImpl();
102
102
  const startMs = Date.now();
103
103
  const promise = this.pushTotalMarkers(2, 1000);
104
104
  this.outlet.stop();
@@ -107,16 +107,16 @@ class TimeMarkerOutletTest extends test_utils_1.default {
107
107
  test_utils_1.assert.isBelow(endMs - startMs, 10);
108
108
  }
109
109
  static async clearsTheTimeoutOnStop() {
110
- this.setupTimeMarkerImpl();
110
+ await this.setupTimeMarkerImpl();
111
111
  const promise = this.pushTotalMarkers(2, 100);
112
112
  this.outlet.stop();
113
113
  this.outlet.pushSample = () => test_utils_1.assert.fail('Should not have been called');
114
114
  await promise;
115
115
  await this.wait(100);
116
116
  }
117
- static setupTimeMarkerImpl() {
117
+ static async setupTimeMarkerImpl() {
118
118
  TimeMarkerOutlet_1.default.Class = TimeMarkerOutlet_1.default;
119
- this.outlet = this.Outlet();
119
+ this.outlet = await this.Outlet();
120
120
  }
121
121
  static async pushTotalMarkers(total, durationMs) {
122
122
  const markers = new Array(total)
@@ -131,8 +131,8 @@ class TimeMarkerOutletTest extends test_utils_1.default {
131
131
  durationMs: durationMs !== null && durationMs !== void 0 ? durationMs : (0, crypto_1.randomInt)(100, 1000),
132
132
  };
133
133
  }
134
- static Outlet(options) {
135
- return TimeMarkerOutlet_1.default.Outlet(options);
134
+ static async Outlet(options) {
135
+ return (await TimeMarkerOutlet_1.default.Create(options));
136
136
  }
137
137
  }
138
138
  exports.default = TimeMarkerOutletTest;
@@ -1 +1 @@
1
- {"version":3,"file":"TimeMarkerOutlet.test.js","sourceRoot":"","sources":["../../../src/__tests__/behavioral/TimeMarkerOutlet.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"TimeMarkerOutlet.test.js","sourceRoot":"","sources":["../../../src/__tests__/behavioral/TimeMarkerOutlet.test.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,2 @@
1
- import { LslOutletOptions } from '../../nodeLsl.types';
1
+ import { LslOutletOptions } from '../../implementations/LslOutlet';
2
2
  export default function generateRandomOutletOptions(): LslOutletOptions;
@@ -1,15 +1,34 @@
1
- import { LslOutlet, LslOutletOptions, LslSample } from '../nodeLsl.types';
1
+ import { ChannelFormat, LslSample } from '../nodeLsl.types';
2
2
  export default class LslOutletImpl implements LslOutlet {
3
- static Class?: new (options: LslOutletOptions) => LslOutlet;
3
+ static Class?: LslOutletConstructor;
4
4
  private options;
5
5
  private streamInfo;
6
6
  private outlet;
7
7
  private pushSampleByType;
8
- static Outlet(options: LslOutletOptions): LslOutlet;
9
8
  protected constructor(options: LslOutletOptions);
9
+ static Create(options: LslOutletOptions): Promise<LslOutlet>;
10
+ private static wait;
10
11
  destroy(): void;
11
12
  pushSample(sample: LslSample): void;
12
13
  private getPushMethod;
13
14
  private lookupChannelFormat;
14
15
  private get lsl();
15
16
  }
17
+ export interface LslOutlet {
18
+ destroy(): void;
19
+ pushSample(sample: LslSample): void;
20
+ }
21
+ export type LslOutletConstructor = new (options: LslOutletOptions) => LslOutlet;
22
+ export interface LslOutletOptions {
23
+ name: string;
24
+ type: string;
25
+ channelNames: string[];
26
+ sampleRate: number;
27
+ channelFormat: ChannelFormat;
28
+ sourceId: string;
29
+ manufacturer: string;
30
+ unit: string;
31
+ chunkSize: number;
32
+ maxBuffered: number;
33
+ waitAfterConstructionMs?: number;
34
+ }
@@ -8,10 +8,6 @@ const assertions_1 = require("../assertions");
8
8
  const consts_1 = require("../consts");
9
9
  const Liblsl_1 = __importDefault(require("./Liblsl"));
10
10
  class LslOutletImpl {
11
- static Outlet(options) {
12
- var _a;
13
- return new ((_a = this.Class) !== null && _a !== void 0 ? _a : this)(options);
14
- }
15
11
  constructor(options) {
16
12
  const { sampleRate, channelFormat } = (0, schema_1.assertOptions)(options, [
17
13
  'name',
@@ -56,6 +52,16 @@ class LslOutletImpl {
56
52
  const pushMethod = this.getPushMethod();
57
53
  this.pushSampleByType = this.lsl[pushMethod].bind(this.lsl);
58
54
  }
55
+ static async Create(options) {
56
+ var _a;
57
+ const { waitAfterConstructionMs = 10 } = options !== null && options !== void 0 ? options : {};
58
+ const instance = new ((_a = this.Class) !== null && _a !== void 0 ? _a : this)(options);
59
+ await this.wait(waitAfterConstructionMs);
60
+ return instance;
61
+ }
62
+ static wait(waitMs) {
63
+ return new Promise((resolve) => setTimeout(resolve, waitMs));
64
+ }
59
65
  destroy() {
60
66
  this.lsl.destroyOutlet({ outlet: this.outlet });
61
67
  }
@@ -1 +1 @@
1
- {"version":3,"file":"LslOutlet.js","sourceRoot":"","sources":["../../src/implementations/LslOutlet.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LslOutlet.js","sourceRoot":"","sources":["../../src/implementations/LslOutlet.ts"],"names":[],"mappings":";;;;;AAAA,+CAAkD;AAClD,8CAMsB;AACtB,sCAA+C;AAQ/C,sDAAiC;AAEjC,MAAqB,aAAa;IAQ9B,YAAsB,OAAyB;QAC3C,MAAM,EAAE,UAAU,EAAE,aAAa,EAAE,GAAG,IAAA,sBAAa,EAAC,OAAO,EAAE;YACzD,MAAM;YACN,MAAM;YACN,cAAc;YACd,YAAY;YACZ,eAAe;YACf,UAAU;YACV,cAAc;YACd,MAAM;YACN,WAAW;YACX,aAAa;SAChB,CAAC,CAAA;QAEF,IAAI,CAAC,OAAO,GAAG,OAAO,CAAA;QAEtB,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY,EAAE,GAAG,iBAAiB,EAAE,GAChE,IAAI,CAAC,OAAc,CAAA;QAEvB,MAAM,YAAY,GAAG,YAAY,CAAC,MAAM,CAAA;QAExC,IAAA,oCAAuB,EAAC,YAAY,CAAC,CAAA;QACrC,IAAA,kCAAqB,EAAC,UAAU,CAAC,CAAA;QACjC,IAAA,qCAAwB,EAAC,aAAa,CAAC,CAAA;QACvC,IAAA,iCAAoB,EAAC,SAAS,CAAC,CAAA;QAC/B,IAAA,mCAAsB,EAAC,WAAW,CAAC,CAAA;QAEnC,OAAO,iBAAiB,CAAC,YAAY,CAAA;QACrC,OAAO,iBAAiB,CAAC,IAAI,CAAA;QAE7B,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,GAAG,CAAC,gBAAgB,CAAC;YACxC,GAAG,iBAAiB;YACpB,YAAY;YACZ,aAAa,EAAE,IAAI,CAAC,mBAAmB,CAAC,aAAa,CAAC;SACzD,CAAC,CAAA;QAEF,IAAI,CAAC,GAAG,CAAC,0BAA0B,CAAC;YAChC,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,QAAQ,EAAE,YAAY,CAAC,GAAG,CAAC,CAAC,KAAa,EAAE,EAAE,CAAC,CAAC;gBAC3C,KAAK;gBACL,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;gBACvB,IAAI,EAAE,IAAI,CAAC,OAAO,CAAC,IAAI;aAC1B,CAAC,CAAC;SACN,CAAC,CAAA;QAEF,IAAI,CAAC,MAAM,GAAG,IAAI,CAAC,GAAG,CAAC,YAAY,CAAC;YAChC,IAAI,EAAE,IAAI,CAAC,UAAU;YACrB,SAAS,EAAE,IAAI,CAAC,OAAO,CAAC,SAAS;YACjC,WAAW,EAAE,IAAI,CAAC,OAAO,CAAC,WAAW;SACxC,CAAC,CAAA;QAEF,MAAM,UAAU,GAAG,IAAI,CAAC,aAAa,EAAE,CAAA;QACvC,IAAI,CAAC,gBAAgB,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAA;IAC/D,CAAC;IAEM,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAyB;;QAChD,MAAM,EAAE,uBAAuB,GAAG,EAAE,EAAE,GAAG,OAAO,aAAP,OAAO,cAAP,OAAO,GAAI,EAAE,CAAA;QACtD,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAA,IAAI,CAAC,KAAK,mCAAI,IAAI,CAAC,CAAC,OAAO,CAAC,CAAA;QAClD,MAAM,IAAI,CAAC,IAAI,CAAC,uBAAuB,CAAC,CAAA;QACxC,OAAO,QAAQ,CAAA;IACnB,CAAC;IAEO,MAAM,CAAC,IAAI,CAAC,MAAc;QAC9B,OAAO,IAAI,OAAO,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,UAAU,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC,CAAA;IAChE,CAAC;IAEM,OAAO;QACV,IAAI,CAAC,GAAG,CAAC,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,MAAM,EAAE,CAAC,CAAA;IACnD,CAAC;IAEM,UAAU,CAAC,MAAiB;QAC/B,MAAM,SAAS,GAAG,IAAI,CAAC,GAAG,CAAC,UAAU,EAAE,CAAA;QAEvC,IAAI,CAAC,gBAAgB,CAAC;YAClB,MAAM,EAAE,IAAI,CAAC,MAAM;YACnB,MAAM;YACN,SAAS;SACZ,CAAC,CAAA;IACN,CAAC;IAEO,aAAa;QACjB,MAAM,aAAa,GAAG,IAAI,CAAC,OAAO,CAAC,aAAa,CAAA;QAEhD,MAAM,SAAS,GAAiC;YAC5C,OAAO,EAAE,0BAA0B;YACnC,MAAM,EAAE,2BAA2B;SACtC,CAAA;QAED,IAAI,CAAC,CAAC,aAAa,IAAI,SAAS,CAAC,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CACX,8CAA8C,aAAa,6BAA6B,CAC3F,CAAA;QACL,CAAC;QACD,OAAO,SAAS,CAAC,aAAa,CAAC,CAAA;IACnC,CAAC;IAEO,mBAAmB,CAAC,aAA4B;QACpD,OAAO,4BAAmB,CAAC,aAAa,CAAC,CAAA;IAC7C,CAAC;IAED,IAAY,GAAG;QACX,OAAO,gBAAU,CAAC,WAAW,EAAE,CAAA;IACnC,CAAC;CACJ;AA/GD,gCA+GC"}
@@ -1,13 +1,18 @@
1
- import { TimeMarkerOutlet, LslOutletOptions, DurationMarker, TimeMarkerOutletConstructor } from '../nodeLsl.types';
2
- import LslOutletImpl from './LslOutlet';
1
+ import { DurationMarker } from '../nodeLsl.types';
2
+ import LslOutletImpl, { LslOutlet, LslOutletOptions } from './LslOutlet';
3
3
  export default class TimeMarkerOutletImpl extends LslOutletImpl implements TimeMarkerOutlet {
4
4
  static Class?: TimeMarkerOutletConstructor;
5
5
  private isPlaying;
6
6
  private waitResolve?;
7
7
  private timeout?;
8
- static Outlet(options?: Partial<LslOutletOptions>): TimeMarkerOutlet;
8
+ static Create(options?: Partial<LslOutletOptions>): Promise<TimeMarkerOutlet>;
9
9
  pushMarkers(markers: DurationMarker[]): Promise<void>;
10
10
  protected wait(durationMs: number): Promise<unknown>;
11
11
  private setTimeout;
12
12
  stop(): void;
13
13
  }
14
+ export interface TimeMarkerOutlet extends LslOutlet {
15
+ pushMarkers(markers: DurationMarker[]): Promise<void>;
16
+ stop(): void;
17
+ }
18
+ export type TimeMarkerOutletConstructor = new (options: LslOutletOptions) => TimeMarkerOutlet;
@@ -9,7 +9,7 @@ class TimeMarkerOutletImpl extends LslOutlet_1.default {
9
9
  super(...arguments);
10
10
  this.isPlaying = false;
11
11
  }
12
- static Outlet(options) {
12
+ static async Create(options) {
13
13
  var _a;
14
14
  const defaultOptions = {
15
15
  name: 'Time markers',
@@ -1 +1 @@
1
- {"version":3,"file":"TimeMarkerOutlet.js","sourceRoot":"","sources":["../../src/implementations/TimeMarkerOutlet.ts"],"names":[],"mappings":";;;;;AAMA,4DAAuC;AAEvC,MAAqB,oBACjB,SAAQ,mBAAa;IADzB;;QAMY,cAAS,GAAG,KAAK,CAAA;IAoD7B,CAAC;IAhDU,MAAM,CAAC,MAAM,CAAC,OAAmC;;QACpD,MAAM,cAAc,GAAG;YACnB,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,CAAC,SAAS,CAAC;YACzB,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,QAAQ;YACvB,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;SACG,CAAA;QAErB,OAAO,IAAI,CAAC,MAAA,IAAI,CAAC,KAAK,mCAAI,IAAI,CAAC,CAAC;YAC5B,GAAG,cAAc;YACjB,GAAG,OAAO;SACb,CAAqB,CAAA;IAC1B,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,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;YAE9B,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,MAAA,IAAI,CAAC,WAAW,oDAAI,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;CACJ;AA1DD,uCA0DC"}
1
+ {"version":3,"file":"TimeMarkerOutlet.js","sourceRoot":"","sources":["../../src/implementations/TimeMarkerOutlet.ts"],"names":[],"mappings":";;;;;AACA,4DAAwE;AAExE,MAAqB,oBACjB,SAAQ,mBAAa;IADzB;;QAMY,cAAS,GAAG,KAAK,CAAA;IAoD7B,CAAC;IAhDU,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,OAAmC;;QAC1D,MAAM,cAAc,GAAG;YACnB,IAAI,EAAE,cAAc;YACpB,IAAI,EAAE,SAAS;YACf,YAAY,EAAE,CAAC,SAAS,CAAC;YACzB,UAAU,EAAE,CAAC;YACb,aAAa,EAAE,QAAQ;YACvB,QAAQ,EAAE,cAAc;YACxB,YAAY,EAAE,KAAK;YACnB,IAAI,EAAE,KAAK;YACX,SAAS,EAAE,CAAC;YACZ,WAAW,EAAE,CAAC;SACG,CAAA;QAErB,OAAO,IAAI,CAAC,MAAA,IAAI,CAAC,KAAK,mCAAI,IAAI,CAAC,CAAC;YAC5B,GAAG,cAAc;YACjB,GAAG,OAAO;SACb,CAAqB,CAAA;IAC1B,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,UAAU,CAAC,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAAA;YAE9B,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,MAAA,IAAI,CAAC,WAAW,oDAAI,CAAA;QACpB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAA;QAC1B,IAAI,CAAC,SAAS,GAAG,KAAK,CAAA;IAC1B,CAAC;CACJ;AA1DD,uCA0DC"}
package/build/index.d.ts CHANGED
@@ -1,3 +1,4 @@
1
+ export * from './nodeLsl.types';
1
2
  export { default as LiblslImpl } from './implementations/Liblsl';
2
3
  export * from './implementations/Liblsl';
3
4
  export { default as LslOutletImpl } from './implementations/LslOutlet';
@@ -6,11 +7,10 @@ export { default as TimeMarkerOutletImpl } from './implementations/TimeMarkerOut
6
7
  export * from './implementations/TimeMarkerOutlet';
7
8
  export { default as FakeLiblsl } from './testDoubles/FakeLiblsl';
8
9
  export * from './testDoubles/FakeLiblsl';
9
- export { default as SpyExtendsTimeMarkerOutlet } from './testDoubles/SpyExtendsTimeMarkerOutlet';
10
- export * from './testDoubles/SpyExtendsTimeMarkerOutlet';
11
- export { default as SpyImplementsTimeMarkerOutlet } from './testDoubles/SpyImplementsTimeMarkerOutlet';
12
- export * from './testDoubles/SpyImplementsTimeMarkerOutlet';
10
+ export { default as FakeTimeMarkerOutlet } from './testDoubles/FakeTimeMarkerOutlet';
11
+ export * from './testDoubles/FakeTimeMarkerOutlet';
13
12
  export { default as MockTimeMarkerOutlet } from './testDoubles/MockTimeMarkerOutlet';
14
13
  export * from './testDoubles/MockTimeMarkerOutlet';
15
- export * from './nodeLsl.types';
14
+ export { default as SpyTimeMarkerOutlet } from './testDoubles/SpyTimeMarkerOutlet';
15
+ export * from './testDoubles/SpyTimeMarkerOutlet';
16
16
  export { default as generateRandomOutletOptions } from './__tests__/support/generateRandomOutletOptions';
package/build/index.js CHANGED
@@ -17,7 +17,8 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
17
17
  return (mod && mod.__esModule) ? mod : { "default": mod };
18
18
  };
19
19
  Object.defineProperty(exports, "__esModule", { value: true });
20
- exports.generateRandomOutletOptions = exports.MockTimeMarkerOutlet = exports.SpyImplementsTimeMarkerOutlet = exports.SpyExtendsTimeMarkerOutlet = exports.FakeLiblsl = exports.TimeMarkerOutletImpl = exports.LslOutletImpl = exports.LiblslImpl = void 0;
20
+ exports.generateRandomOutletOptions = exports.SpyTimeMarkerOutlet = exports.MockTimeMarkerOutlet = exports.FakeTimeMarkerOutlet = exports.FakeLiblsl = exports.TimeMarkerOutletImpl = exports.LslOutletImpl = exports.LiblslImpl = void 0;
21
+ __exportStar(require("./nodeLsl.types"), exports);
21
22
  var Liblsl_1 = require("./implementations/Liblsl");
22
23
  Object.defineProperty(exports, "LiblslImpl", { enumerable: true, get: function () { return __importDefault(Liblsl_1).default; } });
23
24
  __exportStar(require("./implementations/Liblsl"), exports);
@@ -30,16 +31,15 @@ __exportStar(require("./implementations/TimeMarkerOutlet"), exports);
30
31
  var FakeLiblsl_1 = require("./testDoubles/FakeLiblsl");
31
32
  Object.defineProperty(exports, "FakeLiblsl", { enumerable: true, get: function () { return __importDefault(FakeLiblsl_1).default; } });
32
33
  __exportStar(require("./testDoubles/FakeLiblsl"), exports);
33
- var SpyExtendsTimeMarkerOutlet_1 = require("./testDoubles/SpyExtendsTimeMarkerOutlet");
34
- Object.defineProperty(exports, "SpyExtendsTimeMarkerOutlet", { enumerable: true, get: function () { return __importDefault(SpyExtendsTimeMarkerOutlet_1).default; } });
35
- __exportStar(require("./testDoubles/SpyExtendsTimeMarkerOutlet"), exports);
36
- var SpyImplementsTimeMarkerOutlet_1 = require("./testDoubles/SpyImplementsTimeMarkerOutlet");
37
- Object.defineProperty(exports, "SpyImplementsTimeMarkerOutlet", { enumerable: true, get: function () { return __importDefault(SpyImplementsTimeMarkerOutlet_1).default; } });
38
- __exportStar(require("./testDoubles/SpyImplementsTimeMarkerOutlet"), exports);
34
+ var FakeTimeMarkerOutlet_1 = require("./testDoubles/FakeTimeMarkerOutlet");
35
+ Object.defineProperty(exports, "FakeTimeMarkerOutlet", { enumerable: true, get: function () { return __importDefault(FakeTimeMarkerOutlet_1).default; } });
36
+ __exportStar(require("./testDoubles/FakeTimeMarkerOutlet"), exports);
39
37
  var MockTimeMarkerOutlet_1 = require("./testDoubles/MockTimeMarkerOutlet");
40
38
  Object.defineProperty(exports, "MockTimeMarkerOutlet", { enumerable: true, get: function () { return __importDefault(MockTimeMarkerOutlet_1).default; } });
41
39
  __exportStar(require("./testDoubles/MockTimeMarkerOutlet"), exports);
42
- __exportStar(require("./nodeLsl.types"), exports);
40
+ var SpyTimeMarkerOutlet_1 = require("./testDoubles/SpyTimeMarkerOutlet");
41
+ Object.defineProperty(exports, "SpyTimeMarkerOutlet", { enumerable: true, get: function () { return __importDefault(SpyTimeMarkerOutlet_1).default; } });
42
+ __exportStar(require("./testDoubles/SpyTimeMarkerOutlet"), exports);
43
43
  var generateRandomOutletOptions_1 = require("./__tests__/support/generateRandomOutletOptions");
44
44
  Object.defineProperty(exports, "generateRandomOutletOptions", { enumerable: true, get: function () { return __importDefault(generateRandomOutletOptions_1).default; } });
45
45
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,mDAAgE;AAAvD,qHAAA,OAAO,OAAc;AAC9B,2DAAwC;AAExC,yDAAsE;AAA7D,2HAAA,OAAO,OAAiB;AACjC,8DAA2C;AAE3C,uEAAoF;AAA3E,yIAAA,OAAO,OAAwB;AACxC,qEAAkD;AAElD,uDAAgE;AAAvD,yHAAA,OAAO,OAAc;AAC9B,2DAAwC;AAExC,uFAAgG;AAAvF,yJAAA,OAAO,OAA8B;AAC9C,2EAAwD;AAExD,6FAAsG;AAA7F,+JAAA,OAAO,OAAiC;AACjD,8EAA2D;AAE3D,2EAAoF;AAA3E,6IAAA,OAAO,OAAwB;AACxC,qEAAkD;AAElD,kDAA+B;AAE/B,+FAAwG;AAA/F,2JAAA,OAAO,OAA+B"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;AAAA,kDAA+B;AAE/B,mDAAgE;AAAvD,qHAAA,OAAO,OAAc;AAC9B,2DAAwC;AAExC,yDAAsE;AAA7D,2HAAA,OAAO,OAAiB;AACjC,8DAA2C;AAE3C,uEAAoF;AAA3E,yIAAA,OAAO,OAAwB;AACxC,qEAAkD;AAElD,uDAAgE;AAAvD,yHAAA,OAAO,OAAc;AAC9B,2DAAwC;AAExC,2EAAoF;AAA3E,6IAAA,OAAO,OAAwB;AACxC,qEAAkD;AAElD,2EAAoF;AAA3E,6IAAA,OAAO,OAAwB;AACxC,qEAAkD;AAElD,yEAAkF;AAAzE,2IAAA,OAAO,OAAuB;AACvC,oEAAiD;AAEjD,+FAAwG;AAA/F,2JAAA,OAAO,OAA+B"}
@@ -1,27 +1,6 @@
1
1
  import { FuncObj, FieldType } from 'ffi-rs';
2
2
  import { CHANNEL_FORMATS } from './consts';
3
- export interface LslOutlet {
4
- destroy(): void;
5
- pushSample(sample: LslSample): void;
6
- }
7
- export interface LslOutletOptions {
8
- name: string;
9
- type: string;
10
- channelNames: string[];
11
- sampleRate: number;
12
- channelFormat: ChannelFormat;
13
- sourceId: string;
14
- manufacturer: string;
15
- unit: string;
16
- chunkSize: number;
17
- maxBuffered: number;
18
- }
19
3
  export type ChannelFormat = (typeof CHANNEL_FORMATS)[number];
20
- export interface TimeMarkerOutlet extends LslOutlet {
21
- pushMarkers(markers: DurationMarker[]): Promise<void>;
22
- stop(): void;
23
- }
24
- export type TimeMarkerOutletConstructor = new (options: LslOutletOptions) => TimeMarkerOutlet;
25
4
  export interface DurationMarker {
26
5
  name: string;
27
6
  durationMs: number;
@@ -1,5 +1,6 @@
1
- import { DurationMarker, TimeMarkerOutlet } from '../nodeLsl.types';
2
- export default class SpyImplementsTimeMarkerOutlet implements TimeMarkerOutlet {
1
+ import { TimeMarkerOutlet } from '../implementations/TimeMarkerOutlet';
2
+ import { DurationMarker } from '../nodeLsl.types';
3
+ export default class FakeTimeMarkerOutlet implements TimeMarkerOutlet {
3
4
  pushMarkersCalls: DurationMarker[][];
4
5
  pushSampleCalls: string[][];
5
6
  numStopCalls: number;
@@ -9,5 +10,5 @@ export default class SpyImplementsTimeMarkerOutlet implements TimeMarkerOutlet {
9
10
  pushSample(sample: string[]): void;
10
11
  stop(): void;
11
12
  destroy(): void;
12
- resetSpy(): void;
13
+ resetTestDouble(): void;
13
14
  }