@neurodevs/node-lsl 7.1.5 → 8.0.1

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.
@@ -12,6 +12,7 @@ export default class LiblslTest extends AbstractSpruceTest {
12
12
  private static appendChildParams;
13
13
  private static createOutletParams?;
14
14
  private static destroyOutletParams?;
15
+ private static localClockParams?;
15
16
  private static pushSampleFloatTimestampParams?;
16
17
  private static pushSampleStringTimestampParams?;
17
18
  private static appendChildValueParams;
@@ -24,7 +25,7 @@ export default class LiblslTest extends AbstractSpruceTest {
24
25
  protected static beforeEach(): Promise<void>;
25
26
  protected static throwsWithMissingEnv(): Promise<void>;
26
27
  protected static throwsWhenBindingsFailToLoad(): Promise<void>;
27
- protected static callsOpenOnFfRs(): Promise<void>;
28
+ protected static callsOpenOnFfiRs(): Promise<void>;
28
29
  protected static throwsWhenCreateStreamInfoIsMissingRequiredParams(): void;
29
30
  protected static throwsWhenAppendChannelsIsMissingRequiredParams(): Promise<void>;
30
31
  protected static throwsWhenCreateOutletIsMissingRequiredParams(): Promise<void>;
@@ -42,6 +43,7 @@ export default class LiblslTest extends AbstractSpruceTest {
42
43
  protected static addingMultpleChannelsAddsChildrenToChannelsChild(): Promise<void>;
43
44
  protected static canDestroyOutlet(): Promise<void>;
44
45
  protected static callingLocalClockTwiceReturnsDifferentTimestamps(): Promise<void>;
46
+ protected static localClockBindingReceivesEmptyArray(): Promise<void>;
45
47
  private static createRandomStreamInfo;
46
48
  private static createRandomOutlet;
47
49
  private static generateRandomChannelValues;
@@ -73,19 +73,21 @@ class LiblslTest extends test_utils_1.default {
73
73
  }
74
74
  static async throwsWithMissingEnv() {
75
75
  delete process.env.LIBLSL_PATH;
76
- const err = test_utils_1.assert.doesThrow(() => new Liblsl_1.default());
76
+ Liblsl_1.default.resetInstance();
77
+ const err = test_utils_1.assert.doesThrow(() => Liblsl_1.default.getInstance());
77
78
  test_utils_1.errorAssert.assertError(err, 'MISSING_PARAMETERS', {
78
79
  parameters: ['env.LIBLSL_PATH'],
79
80
  });
80
81
  }
81
82
  static async throwsWhenBindingsFailToLoad() {
82
83
  this.shouldThrowWhenCreatingBindings = true;
83
- const err = test_utils_1.assert.doesThrow(() => new Liblsl_1.default());
84
+ Liblsl_1.default.resetInstance();
85
+ const err = test_utils_1.assert.doesThrow(() => Liblsl_1.default.getInstance());
84
86
  test_utils_1.errorAssert.assertError(err, 'FAILED_TO_LOAD_LIBLSL', {
85
87
  liblslPath: process.env.LIBLSL_PATH,
86
88
  });
87
89
  }
88
- static async callsOpenOnFfRs() {
90
+ static async callsOpenOnFfiRs() {
89
91
  test_utils_1.assert.isEqualDeep(this.ffiRsOpenOptions, {
90
92
  library: 'lsl',
91
93
  path: process.env.LIBLSL_PATH,
@@ -135,6 +137,7 @@ class LiblslTest extends test_utils_1.default {
135
137
  }
136
138
  static async worksAsASingleton() {
137
139
  const liblsl = Liblsl_1.default.getInstance();
140
+ //@ts-ignore
138
141
  test_utils_1.assert.isInstanceOf(liblsl, Liblsl_1.default);
139
142
  }
140
143
  static async singletonIsTheSame() {
@@ -213,7 +216,6 @@ class LiblslTest extends test_utils_1.default {
213
216
  test_utils_1.assert.isEqual(outlet, this.fakeOutlet);
214
217
  }
215
218
  static async canPushFloatSample() {
216
- var _a, _b, _c;
217
219
  const expected = [1.0, 2.0, 3.0];
218
220
  const timestamp = (0, crypto_1.randomInt)(100);
219
221
  const options = {
@@ -222,9 +224,11 @@ class LiblslTest extends test_utils_1.default {
222
224
  timestamp,
223
225
  };
224
226
  this.lsl.pushSampleFloatTimestamp(options);
225
- test_utils_1.assert.isEqual((_a = this.pushSampleFloatTimestampParams) === null || _a === void 0 ? void 0 : _a[0], this.fakeOutlet);
226
- test_utils_1.assert.isEqual((_b = this.pushSampleFloatTimestampParams) === null || _b === void 0 ? void 0 : _b[1], expected);
227
- test_utils_1.assert.isEqual((_c = this.pushSampleFloatTimestampParams) === null || _c === void 0 ? void 0 : _c[2], timestamp);
227
+ test_utils_1.assert.isEqualDeep(this.pushSampleFloatTimestampParams, [
228
+ this.fakeOutlet,
229
+ expected,
230
+ timestamp,
231
+ ]);
228
232
  }
229
233
  static async canPushStringSample() {
230
234
  var _a, _b, _c;
@@ -248,7 +252,7 @@ class LiblslTest extends test_utils_1.default {
248
252
  info,
249
253
  channels: [channel],
250
254
  });
251
- test_utils_1.assert.isEqual((_a = this.getDescriptionParams) === null || _a === void 0 ? void 0 : _a[0], info);
255
+ test_utils_1.assert.isEqualDeep((_a = this.getDescriptionParams) === null || _a === void 0 ? void 0 : _a[0], [info]);
252
256
  test_utils_1.assert.isEqual((_b = this.appendChildParams) === null || _b === void 0 ? void 0 : _b[0][0], this.fakeDesc);
253
257
  test_utils_1.assert.isEqual((_c = this.appendChildParams) === null || _c === void 0 ? void 0 : _c[0][1], 'channels');
254
258
  test_utils_1.assert.isEqual((_d = this.appendChildParams) === null || _d === void 0 ? void 0 : _d[1][0], this.fakeChildNamedChannels);
@@ -292,6 +296,11 @@ class LiblslTest extends test_utils_1.default {
292
296
  const t2 = this.lsl.localClock();
293
297
  test_utils_1.assert.isNotEqual(t1, t2);
294
298
  }
299
+ static async localClockBindingReceivesEmptyArray() {
300
+ delete this.localClockParams;
301
+ this.lsl.localClock();
302
+ test_utils_1.assert.isEqualDeep(this.localClockParams, []);
303
+ }
295
304
  static createRandomStreamInfo() {
296
305
  return this.lsl.createStreamInfo(this.generateRandomCreateStreamInfoOptions());
297
306
  }
@@ -324,29 +333,32 @@ class LiblslTest extends test_utils_1.default {
324
333
  }
325
334
  static FakeBindings() {
326
335
  return {
327
- lsl_create_streaminfo: (...params) => {
336
+ lsl_create_streaminfo: (params) => {
328
337
  this.createStreamInfoParams = params;
329
338
  return this.fakeStreamInfo;
330
339
  },
331
- lsl_create_outlet: (...params) => {
340
+ lsl_create_outlet: (params) => {
332
341
  this.createOutletParams = params;
333
342
  return this.fakeOutlet;
334
343
  },
335
- lsl_destroy_outlet: (...params) => {
344
+ lsl_destroy_outlet: (params) => {
336
345
  this.destroyOutletParams = params;
337
346
  },
338
- lsl_push_sample_ft: (...params) => {
347
+ lsl_push_sample_ft: (params) => {
339
348
  this.pushSampleFloatTimestampParams = params;
340
349
  },
341
- lsl_push_sample_strt: (...params) => {
350
+ lsl_push_sample_strt: (params) => {
342
351
  this.pushSampleStringTimestampParams = params;
343
352
  },
344
- lsl_local_clock: () => new Date().getTime(),
353
+ lsl_local_clock: (params) => {
354
+ this.localClockParams = params;
355
+ return new Date().getTime();
356
+ },
345
357
  lsl_get_desc: (info) => {
346
358
  this.getDescriptionParams = [info];
347
359
  return this.fakeDesc;
348
360
  },
349
- lsl_append_child: (...params) => {
361
+ lsl_append_child: (params) => {
350
362
  this.appendChildParams.push(params);
351
363
  if (this.appendChildHitCount === 0) {
352
364
  this.appendChildHitCount++;
@@ -354,7 +366,7 @@ class LiblslTest extends test_utils_1.default {
354
366
  }
355
367
  return this.fakeChildNamedChannel;
356
368
  },
357
- lsl_append_child_value: (...params) => {
369
+ lsl_append_child_value: (params) => {
358
370
  this.appendChildValueParams.push(params);
359
371
  },
360
372
  };
@@ -370,7 +382,7 @@ __decorate([
370
382
  ], LiblslTest, "throwsWhenBindingsFailToLoad", null);
371
383
  __decorate([
372
384
  (0, test_utils_1.test)()
373
- ], LiblslTest, "callsOpenOnFfRs", null);
385
+ ], LiblslTest, "callsOpenOnFfiRs", null);
374
386
  __decorate([
375
387
  (0, test_utils_1.test)()
376
388
  ], LiblslTest, "throwsWhenCreateStreamInfoIsMissingRequiredParams", null);
@@ -422,4 +434,7 @@ __decorate([
422
434
  __decorate([
423
435
  (0, test_utils_1.test)()
424
436
  ], LiblslTest, "callingLocalClockTwiceReturnsDifferentTimestamps", null);
437
+ __decorate([
438
+ (0, test_utils_1.test)()
439
+ ], LiblslTest, "localClockBindingReceivesEmptyArray", null);
425
440
  //# sourceMappingURL=Liblsl.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"Liblsl.test.js","sourceRoot":"","sources":["../../../src/__tests__/implementation/Liblsl.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Liblsl.test.js","sourceRoot":"","sources":["../../../src/__tests__/implementation/Liblsl.test.ts"],"names":[],"mappings":"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"}
@@ -8,7 +8,7 @@ export default class LiblslImpl implements Liblsl {
8
8
  static getInstance(): Liblsl;
9
9
  static setInstance(instance: Liblsl): void;
10
10
  static resetInstance(): void;
11
- constructor();
11
+ protected constructor();
12
12
  private loadBindings;
13
13
  createStreamInfo(options: CreateStreamInfoOptions): import("../nodeLsl.types").BoundStreamInfo;
14
14
  appendChannelsToStreamInfo(options: AppendChannelsToStreamInfoOptions): void;
@@ -103,17 +103,24 @@ class LiblslImpl {
103
103
  'channelFormat',
104
104
  'sourceId',
105
105
  ]);
106
- return this.bindings.lsl_create_streaminfo(name, type, channelCount, sampleRate, channelFormat, sourceId);
106
+ return this.bindings.lsl_create_streaminfo([
107
+ name,
108
+ type,
109
+ channelCount,
110
+ sampleRate,
111
+ channelFormat,
112
+ sourceId,
113
+ ]);
107
114
  }
108
115
  appendChannelsToStreamInfo(options) {
109
116
  const { info, channels } = (0, schema_1.assertOptions)(options, ['info', 'channels']);
110
- const description = this.bindings.lsl_get_desc(info);
111
- const parent = this.bindings.lsl_append_child(description, 'channels');
117
+ const description = this.bindings.lsl_get_desc([info]);
118
+ const parent = this.bindings.lsl_append_child([description, 'channels']);
112
119
  for (const channel of channels) {
113
- const child = this.bindings.lsl_append_child(parent, 'channel');
114
- this.bindings.lsl_append_child_value(child, 'label', channel.label);
115
- this.bindings.lsl_append_child_value(child, 'unit', channel.unit);
116
- this.bindings.lsl_append_child_value(child, 'type', channel.type);
120
+ const child = this.bindings.lsl_append_child([parent, 'channel']);
121
+ this.bindings.lsl_append_child_value([child, 'label', channel.label]);
122
+ this.bindings.lsl_append_child_value([child, 'unit', channel.unit]);
123
+ this.bindings.lsl_append_child_value([child, 'type', channel.type]);
117
124
  }
118
125
  }
119
126
  createOutlet(options) {
@@ -122,11 +129,11 @@ class LiblslImpl {
122
129
  'chunkSize',
123
130
  'maxBuffered',
124
131
  ]);
125
- return this.bindings.lsl_create_outlet(info, chunkSize, maxBuffered);
132
+ return this.bindings.lsl_create_outlet([info, chunkSize, maxBuffered]);
126
133
  }
127
134
  destroyOutlet(options) {
128
135
  const { outlet } = (0, schema_1.assertOptions)(options, ['outlet']);
129
- this.bindings.lsl_destroy_outlet(outlet);
136
+ this.bindings.lsl_destroy_outlet([outlet]);
130
137
  }
131
138
  pushSampleFloatTimestamp(options) {
132
139
  const { outlet, sample, timestamp } = (0, schema_1.assertOptions)(options, [
@@ -134,7 +141,7 @@ class LiblslImpl {
134
141
  'sample',
135
142
  'timestamp',
136
143
  ]);
137
- this.bindings.lsl_push_sample_ft(outlet, sample, timestamp);
144
+ this.bindings.lsl_push_sample_ft([outlet, sample, timestamp]);
138
145
  }
139
146
  pushSampleStringTimestamp(options) {
140
147
  const { outlet, sample, timestamp } = (0, schema_1.assertOptions)(options, [
@@ -142,10 +149,10 @@ class LiblslImpl {
142
149
  'sample',
143
150
  'timestamp',
144
151
  ]);
145
- this.bindings.lsl_push_sample_strt(outlet, sample, timestamp);
152
+ this.bindings.lsl_push_sample_strt([outlet, sample, timestamp]);
146
153
  }
147
154
  localClock() {
148
- return this.bindings.lsl_local_clock();
155
+ return this.bindings.lsl_local_clock([]);
149
156
  }
150
157
  }
151
158
  LiblslImpl.ffiRsOpen = ffi_rs_1.open;
@@ -1 +1 @@
1
- {"version":3,"file":"Liblsl.js","sourceRoot":"","sources":["../../src/implementations/Liblsl.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Liblsl.js","sourceRoot":"","sources":["../../src/implementations/Liblsl.ts"],"names":[],"mappings":"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"}
@@ -74,15 +74,15 @@ export interface LslChannel {
74
74
  }
75
75
  export type LslSample = (number | string | undefined)[];
76
76
  export interface LiblslBindings {
77
- lsl_create_streaminfo(name: string, type: string, channelCount: number, sampleRate: number, channelFormat: number, sourceId: string): BoundStreamInfo;
78
- lsl_create_outlet(info: BoundStreamInfo, chunkSize: number, maxBuffered: number): BoundOutlet;
79
- lsl_destroy_outlet(outlet: BoundOutlet): void;
80
- lsl_push_sample_ft(outlet: BoundOutlet, sample: LslSample, timestamp: number): void;
81
- lsl_push_sample_strt(outlet: BoundOutlet, sample: LslSample, timestamp: number): void;
82
- lsl_local_clock(): number;
83
- lsl_get_desc(info: BoundStreamInfo): BoundDescription;
84
- lsl_append_child(desc: BoundDescription, name: string): BoundChild;
85
- lsl_append_child_value(child: BoundChild, name: string, value: string): void;
77
+ lsl_create_streaminfo(options: [string, string, number, number, number, string]): BoundStreamInfo;
78
+ lsl_create_outlet(options: [BoundStreamInfo, number, number]): BoundOutlet;
79
+ lsl_destroy_outlet(outlet: [BoundOutlet]): void;
80
+ lsl_push_sample_ft(options: [BoundOutlet, LslSample, number]): void;
81
+ lsl_push_sample_strt(options: [BoundOutlet, LslSample, number]): void;
82
+ lsl_local_clock(options: []): number;
83
+ lsl_get_desc(info: [BoundStreamInfo]): BoundDescription;
84
+ lsl_append_child(options: [BoundDescription, string]): BoundChild;
85
+ lsl_append_child_value(options: [BoundChild, string, string]): void;
86
86
  }
87
87
  export interface BoundStreamInfo {
88
88
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@neurodevs/node-lsl",
3
- "version": "7.1.5",
3
+ "version": "8.0.1",
4
4
  "main": "build/index.js",
5
5
  "repository": {
6
6
  "type": "git",
@@ -32,6 +32,7 @@ export default class LiblslTest extends AbstractSpruceTest {
32
32
  private static appendChildParams: any[] = []
33
33
  private static createOutletParams?: any[]
34
34
  private static destroyOutletParams?: any[]
35
+ private static localClockParams?: any[]
35
36
  private static pushSampleFloatTimestampParams?: any[]
36
37
  private static pushSampleStringTimestampParams?: any[]
37
38
  private static appendChildValueParams: any[]
@@ -88,7 +89,9 @@ export default class LiblslTest extends AbstractSpruceTest {
88
89
  @test()
89
90
  protected static async throwsWithMissingEnv() {
90
91
  delete process.env.LIBLSL_PATH
91
- const err = assert.doesThrow(() => new LiblslImpl())
92
+ LiblslImpl.resetInstance()
93
+
94
+ const err = assert.doesThrow(() => LiblslImpl.getInstance())
92
95
  errorAssert.assertError(err, 'MISSING_PARAMETERS', {
93
96
  parameters: ['env.LIBLSL_PATH'],
94
97
  })
@@ -97,14 +100,16 @@ export default class LiblslTest extends AbstractSpruceTest {
97
100
  @test()
98
101
  protected static async throwsWhenBindingsFailToLoad() {
99
102
  this.shouldThrowWhenCreatingBindings = true
100
- const err = assert.doesThrow(() => new LiblslImpl())
103
+ LiblslImpl.resetInstance()
104
+
105
+ const err = assert.doesThrow(() => LiblslImpl.getInstance())
101
106
  errorAssert.assertError(err, 'FAILED_TO_LOAD_LIBLSL', {
102
107
  liblslPath: process.env.LIBLSL_PATH,
103
108
  })
104
109
  }
105
110
 
106
111
  @test()
107
- protected static async callsOpenOnFfRs() {
112
+ protected static async callsOpenOnFfiRs() {
108
113
  assert.isEqualDeep(this.ffiRsOpenOptions, {
109
114
  library: 'lsl',
110
115
  path: process.env.LIBLSL_PATH,
@@ -166,6 +171,7 @@ export default class LiblslTest extends AbstractSpruceTest {
166
171
  @test()
167
172
  protected static async worksAsASingleton() {
168
173
  const liblsl = LiblslImpl.getInstance()
174
+ //@ts-ignore
169
175
  assert.isInstanceOf(liblsl, LiblslImpl)
170
176
  }
171
177
 
@@ -265,9 +271,12 @@ export default class LiblslTest extends AbstractSpruceTest {
265
271
  timestamp,
266
272
  }
267
273
  this.lsl.pushSampleFloatTimestamp(options)
268
- assert.isEqual(this.pushSampleFloatTimestampParams?.[0], this.fakeOutlet)
269
- assert.isEqual(this.pushSampleFloatTimestampParams?.[1], expected)
270
- assert.isEqual(this.pushSampleFloatTimestampParams?.[2], timestamp)
274
+
275
+ assert.isEqualDeep(this.pushSampleFloatTimestampParams, [
276
+ this.fakeOutlet,
277
+ expected,
278
+ timestamp,
279
+ ])
271
280
  }
272
281
 
273
282
  @test()
@@ -294,7 +303,7 @@ export default class LiblslTest extends AbstractSpruceTest {
294
303
  info,
295
304
  channels: [channel],
296
305
  })
297
- assert.isEqual(this.getDescriptionParams?.[0], info)
306
+ assert.isEqualDeep(this.getDescriptionParams?.[0], [info])
298
307
 
299
308
  assert.isEqual(this.appendChildParams?.[0][0], this.fakeDesc)
300
309
  assert.isEqual(this.appendChildParams?.[0][1], 'channels')
@@ -354,6 +363,13 @@ export default class LiblslTest extends AbstractSpruceTest {
354
363
  assert.isNotEqual(t1, t2)
355
364
  }
356
365
 
366
+ @test()
367
+ protected static async localClockBindingReceivesEmptyArray() {
368
+ delete this.localClockParams
369
+ this.lsl.localClock()
370
+ assert.isEqualDeep(this.localClockParams, [])
371
+ }
372
+
357
373
  private static createRandomStreamInfo() {
358
374
  return this.lsl.createStreamInfo(
359
375
  this.generateRandomCreateStreamInfoOptions()
@@ -392,29 +408,32 @@ export default class LiblslTest extends AbstractSpruceTest {
392
408
 
393
409
  private static FakeBindings() {
394
410
  return {
395
- lsl_create_streaminfo: (...params: any[]) => {
411
+ lsl_create_streaminfo: (params: any[]) => {
396
412
  this.createStreamInfoParams = params
397
413
  return this.fakeStreamInfo
398
414
  },
399
- lsl_create_outlet: (...params: any[]) => {
415
+ lsl_create_outlet: (params: any[]) => {
400
416
  this.createOutletParams = params
401
417
  return this.fakeOutlet
402
418
  },
403
- lsl_destroy_outlet: (...params: any[]) => {
419
+ lsl_destroy_outlet: (params: any[]) => {
404
420
  this.destroyOutletParams = params
405
421
  },
406
- lsl_push_sample_ft: (...params: any[]) => {
422
+ lsl_push_sample_ft: (params: any[]) => {
407
423
  this.pushSampleFloatTimestampParams = params
408
424
  },
409
- lsl_push_sample_strt: (...params: any[]) => {
425
+ lsl_push_sample_strt: (params: any[]) => {
410
426
  this.pushSampleStringTimestampParams = params
411
427
  },
412
- lsl_local_clock: () => new Date().getTime(),
428
+ lsl_local_clock: (params: []) => {
429
+ this.localClockParams = params
430
+ return new Date().getTime()
431
+ },
413
432
  lsl_get_desc: (info: BoundStreamInfo) => {
414
433
  this.getDescriptionParams = [info]
415
434
  return this.fakeDesc
416
435
  },
417
- lsl_append_child: (...params: any) => {
436
+ lsl_append_child: (params: any) => {
418
437
  this.appendChildParams.push(params)
419
438
  if (this.appendChildHitCount === 0) {
420
439
  this.appendChildHitCount++
@@ -422,7 +441,7 @@ export default class LiblslTest extends AbstractSpruceTest {
422
441
  }
423
442
  return this.fakeChildNamedChannel
424
443
  },
425
- lsl_append_child_value: (...params: any[]) => {
444
+ lsl_append_child_value: (params: any[]) => {
426
445
  this.appendChildValueParams.push(params)
427
446
  },
428
447
  }
@@ -34,7 +34,7 @@ export default class LiblslImpl implements Liblsl {
34
34
  delete this.instance
35
35
  }
36
36
 
37
- public constructor() {
37
+ protected constructor() {
38
38
  const path = process.env.LIBLSL_PATH!
39
39
 
40
40
  if (!path) {
@@ -124,14 +124,14 @@ export default class LiblslImpl implements Liblsl {
124
124
  'sourceId',
125
125
  ])
126
126
 
127
- return this.bindings.lsl_create_streaminfo(
127
+ return this.bindings.lsl_create_streaminfo([
128
128
  name,
129
129
  type,
130
130
  channelCount,
131
131
  sampleRate,
132
132
  channelFormat,
133
- sourceId
134
- )
133
+ sourceId,
134
+ ])
135
135
  }
136
136
 
137
137
  public appendChannelsToStreamInfo(
@@ -139,14 +139,14 @@ export default class LiblslImpl implements Liblsl {
139
139
  ) {
140
140
  const { info, channels } = assertOptions(options, ['info', 'channels'])
141
141
 
142
- const description = this.bindings.lsl_get_desc(info)
143
- const parent = this.bindings.lsl_append_child(description, 'channels')
142
+ const description = this.bindings.lsl_get_desc([info])
143
+ const parent = this.bindings.lsl_append_child([description, 'channels'])
144
144
 
145
145
  for (const channel of channels) {
146
- const child = this.bindings.lsl_append_child(parent, 'channel')
147
- this.bindings.lsl_append_child_value(child, 'label', channel.label)
148
- this.bindings.lsl_append_child_value(child, 'unit', channel.unit)
149
- this.bindings.lsl_append_child_value(child, 'type', channel.type)
146
+ const child = this.bindings.lsl_append_child([parent, 'channel'])
147
+ this.bindings.lsl_append_child_value([child, 'label', channel.label])
148
+ this.bindings.lsl_append_child_value([child, 'unit', channel.unit])
149
+ this.bindings.lsl_append_child_value([child, 'type', channel.type])
150
150
  }
151
151
  }
152
152
 
@@ -157,12 +157,12 @@ export default class LiblslImpl implements Liblsl {
157
157
  'maxBuffered',
158
158
  ])
159
159
 
160
- return this.bindings.lsl_create_outlet(info, chunkSize, maxBuffered)
160
+ return this.bindings.lsl_create_outlet([info, chunkSize, maxBuffered])
161
161
  }
162
162
 
163
163
  public destroyOutlet(options: DestroyOutletOptions) {
164
164
  const { outlet } = assertOptions(options, ['outlet'])
165
- this.bindings.lsl_destroy_outlet(outlet)
165
+ this.bindings.lsl_destroy_outlet([outlet])
166
166
  }
167
167
 
168
168
  public pushSampleFloatTimestamp(options: PushSampleFloatTimestampOptions) {
@@ -171,7 +171,7 @@ export default class LiblslImpl implements Liblsl {
171
171
  'sample',
172
172
  'timestamp',
173
173
  ])
174
- this.bindings.lsl_push_sample_ft(outlet, sample, timestamp)
174
+ this.bindings.lsl_push_sample_ft([outlet, sample, timestamp])
175
175
  }
176
176
 
177
177
  public pushSampleStringTimestamp(options: PushSampleStringTimestampOptions) {
@@ -180,10 +180,10 @@ export default class LiblslImpl implements Liblsl {
180
180
  'sample',
181
181
  'timestamp',
182
182
  ])
183
- this.bindings.lsl_push_sample_strt(outlet, sample, timestamp)
183
+ this.bindings.lsl_push_sample_strt([outlet, sample, timestamp])
184
184
  }
185
185
 
186
186
  public localClock() {
187
- return this.bindings.lsl_local_clock()
187
+ return this.bindings.lsl_local_clock([])
188
188
  }
189
189
  }
@@ -93,38 +93,21 @@ export type LslSample = (number | string | undefined)[]
93
93
 
94
94
  export interface LiblslBindings {
95
95
  lsl_create_streaminfo(
96
- name: string,
97
- type: string,
98
- channelCount: number,
99
- sampleRate: number,
100
- channelFormat: number,
101
- sourceId: string
96
+ options: [string, string, number, number, number, string]
102
97
  ): BoundStreamInfo
103
98
 
104
- lsl_create_outlet(
105
- info: BoundStreamInfo,
106
- chunkSize: number,
107
- maxBuffered: number
108
- ): BoundOutlet
109
-
110
- lsl_destroy_outlet(outlet: BoundOutlet): void
111
-
112
- lsl_push_sample_ft(
113
- outlet: BoundOutlet,
114
- sample: LslSample,
115
- timestamp: number
116
- ): void
117
-
118
- lsl_push_sample_strt(
119
- outlet: BoundOutlet,
120
- sample: LslSample,
121
- timestamp: number
122
- ): void
123
-
124
- lsl_local_clock(): number
125
- lsl_get_desc(info: BoundStreamInfo): BoundDescription
126
- lsl_append_child(desc: BoundDescription, name: string): BoundChild
127
- lsl_append_child_value(child: BoundChild, name: string, value: string): void
99
+ lsl_create_outlet(options: [BoundStreamInfo, number, number]): BoundOutlet
100
+
101
+ lsl_destroy_outlet(outlet: [BoundOutlet]): void
102
+
103
+ lsl_push_sample_ft(options: [BoundOutlet, LslSample, number]): void
104
+
105
+ lsl_push_sample_strt(options: [BoundOutlet, LslSample, number]): void
106
+
107
+ lsl_local_clock(options: []): number
108
+ lsl_get_desc(info: [BoundStreamInfo]): BoundDescription
109
+ lsl_append_child(options: [BoundDescription, string]): BoundChild
110
+ lsl_append_child_value(options: [BoundChild, string, string]): void
128
111
  }
129
112
 
130
113
  export interface BoundStreamInfo {}