@science-corporation/synapse 0.13.0 → 2.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 +4 -2
- package/dist/api/api.d.ts +711 -71
- package/dist/api/api.js +5532 -4083
- package/dist/api/api.js.map +1 -1
- package/dist/api/proto.json +122 -32
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +4 -2
- package/dist/config.js.map +1 -1
- package/dist/demo.js +125 -32
- package/dist/demo.js.map +1 -1
- package/dist/device.d.ts +6 -0
- package/dist/device.d.ts.map +1 -1
- package/dist/device.js +25 -0
- package/dist/device.js.map +1 -1
- package/dist/nodes/index.d.ts +2 -1
- package/dist/nodes/index.d.ts.map +1 -1
- package/dist/nodes/index.js +5 -3
- package/dist/nodes/index.js.map +1 -1
- package/dist/nodes/spike_binner.d.ts +11 -0
- package/dist/nodes/{spike_detect.d.ts.map → spike_binner.d.ts.map} +1 -1
- package/dist/nodes/spike_binner.js +28 -0
- package/dist/nodes/{spike_detect.js.map → spike_binner.js.map} +1 -1
- package/dist/nodes/spike_detector.d.ts +11 -0
- package/dist/nodes/spike_detector.d.ts.map +1 -0
- package/dist/nodes/{spike_detect.js → spike_detector.js} +9 -9
- package/dist/nodes/spike_detector.js.map +1 -0
- package/dist/nodes/stream_out.d.ts +12 -5
- package/dist/nodes/stream_out.d.ts.map +1 -1
- package/dist/nodes/stream_out.js +58 -40
- package/dist/nodes/stream_out.js.map +1 -1
- package/dist/utils/ip.d.ts +2 -0
- package/dist/utils/ip.d.ts.map +1 -0
- package/dist/utils/ip.js +52 -0
- package/dist/utils/ip.js.map +1 -0
- package/package.json +6 -5
- package/scripts/postinstall.sh +50 -10
- package/src/api/api.d.ts +711 -71
- package/src/api/api.js +5671 -4121
- package/src/api/proto.json +122 -32
- package/src/config.ts +4 -2
- package/src/demo.ts +20 -8
- package/src/device.ts +34 -1
- package/src/nodes/index.ts +2 -1
- package/src/nodes/spike_binner.ts +30 -0
- package/src/nodes/spike_detector.ts +30 -0
- package/src/nodes/stream_out.ts +67 -50
- package/src/utils/ip.ts +35 -0
- package/synapse-api/.github/pull_request_template.md +10 -0
- package/synapse-api/README.md +1 -1
- package/synapse-api/api/datatype.proto +1 -0
- package/synapse-api/api/node.proto +6 -3
- package/synapse-api/api/nodes/spike_binner.proto +7 -0
- package/synapse-api/api/nodes/spike_detector.proto +19 -0
- package/synapse-api/api/nodes/stream_out.proto +31 -1
- package/synapse-api/api/query.proto +19 -1
- package/synapse-api/api/synapse.proto +1 -0
- package/dist/api-science-device/api.d.ts +0 -3
- package/dist/api-science-device/api.d.ts.map +0 -1
- package/dist/api-science-device/api.js +0 -3822
- package/dist/api-science-device/api.js.map +0 -1
- package/dist/api-science-device/proto.json +0 -258
- package/dist/nodejs.d.ts +0 -8
- package/dist/nodejs.d.ts.map +0 -1
- package/dist/nodejs.js +0 -32
- package/dist/nodejs.js.map +0 -1
- package/dist/nodes/spike_detect.d.ts +0 -11
- package/dist/science-device-api/api.d.ts +0 -3
- package/dist/science-device-api/api.d.ts.map +0 -1
- package/dist/science-device-api/api.js +0 -3822
- package/dist/science-device-api/api.js.map +0 -1
- package/dist/types/index.d.ts +0 -3
- package/dist/types/index.d.ts.map +0 -1
- package/dist/types/index.js +0 -19
- package/dist/types/index.js.map +0 -1
- package/dist/types.d.ts +0 -5
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -19
- package/dist/types.js.map +0 -1
- package/dist/utils/device-management.d.ts +0 -37
- package/dist/utils/device-management.d.ts.map +0 -1
- package/dist/utils/device-management.js +0 -126
- package/dist/utils/device-management.js.map +0 -1
- package/dist/utils/ndtp.d.ts +0 -40
- package/dist/utils/ndtp.d.ts.map +0 -1
- package/dist/utils/ndtp.js +0 -140
- package/dist/utils/ndtp.js.map +0 -1
- package/src/nodes/spike_detect.ts +0 -30
- package/synapse-api/api/nodes/spike_detect.proto +0 -16
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/science-device-api/api.js"],"names":[],"mappings":"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"}
|
package/dist/types/index.d.ts
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B,cAAc,2BAA2B,CAAC"}
|
package/dist/types/index.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("../api/api"), exports);
|
|
18
|
-
__exportStar(require("../api-science-device/api"), exports);
|
|
19
|
-
//# sourceMappingURL=index.js.map
|
package/dist/types/index.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,6CAA2B;AAC3B,4DAA0C"}
|
package/dist/types.d.ts
DELETED
package/dist/types.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAAA,cAAc,WAAW,CAAC;AAC1B,cAAc,0BAA0B,CAAC;AACzC,YAAY,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAClD,YAAY,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,gBAAgB,CAAC"}
|
package/dist/types.js
DELETED
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
3
|
-
if (k2 === undefined) k2 = k;
|
|
4
|
-
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
5
|
-
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
6
|
-
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
7
|
-
}
|
|
8
|
-
Object.defineProperty(o, k2, desc);
|
|
9
|
-
}) : (function(o, m, k, k2) {
|
|
10
|
-
if (k2 === undefined) k2 = k;
|
|
11
|
-
o[k2] = m[k];
|
|
12
|
-
}));
|
|
13
|
-
var __exportStar = (this && this.__exportStar) || function(m, exports) {
|
|
14
|
-
for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
|
|
15
|
-
};
|
|
16
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
17
|
-
__exportStar(require("./api/api"), exports);
|
|
18
|
-
__exportStar(require("./api-science-device/api"), exports);
|
|
19
|
-
//# sourceMappingURL=types.js.map
|
package/dist/types.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;AAAA,4CAA0B;AAC1B,2DAAyC"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { Channel } from "@grpc/grpc-js";
|
|
2
|
-
import { science } from "../api-science-device/api";
|
|
3
|
-
import { CallOptions } from "./client";
|
|
4
|
-
import { Status } from "./status";
|
|
5
|
-
declare class DeviceManager {
|
|
6
|
-
uri: string;
|
|
7
|
-
rpc_auth: any | null;
|
|
8
|
-
rpc_update: any | null;
|
|
9
|
-
channel: Channel | null;
|
|
10
|
-
constructor(uri: string);
|
|
11
|
-
authenticateDevice(request: science.IDeviceAuthenticationRequest, options?: CallOptions): Promise<{
|
|
12
|
-
status: Status;
|
|
13
|
-
response?: science.DeviceAuthenticationResponse;
|
|
14
|
-
}>;
|
|
15
|
-
listKeys(request: science.IListKeysRequest, options?: CallOptions): Promise<{
|
|
16
|
-
status: Status;
|
|
17
|
-
response?: science.ListKeysResponse;
|
|
18
|
-
}>;
|
|
19
|
-
revokeKey(request: science.IRevokeKeyRequest, options?: CallOptions): Promise<{
|
|
20
|
-
status: Status;
|
|
21
|
-
response?: science.RevokeKeyResponse;
|
|
22
|
-
}>;
|
|
23
|
-
listPackages(request: science.IListPackagesRequest, options?: CallOptions): Promise<{
|
|
24
|
-
status: Status;
|
|
25
|
-
response?: science.ListPackagesResponse;
|
|
26
|
-
}>;
|
|
27
|
-
updatePackages(request: science.IUpdatePackagesRequest, options?: CallOptions): Promise<{
|
|
28
|
-
status: Status;
|
|
29
|
-
response?: science.UpdateResult;
|
|
30
|
-
}>;
|
|
31
|
-
uploadPackage(request: science.IUpdatePackageChunk, options?: CallOptions): Promise<{
|
|
32
|
-
status: Status;
|
|
33
|
-
response?: science.UpdateResult;
|
|
34
|
-
}>;
|
|
35
|
-
}
|
|
36
|
-
export default DeviceManager;
|
|
37
|
-
//# sourceMappingURL=device-management.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"device-management.d.ts","sourceRoot":"","sources":["../../src/utils/device-management.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAA6B,MAAM,eAAe,CAAC;AAEnE,OAAO,EAAE,OAAO,EAAE,MAAM,2BAA2B,CAAC;AAEpD,OAAO,EAAE,WAAW,EAAU,MAAM,UAAU,CAAC;AAC/C,OAAO,EAAE,MAAM,EAAE,MAAM,UAAU,CAAC;AAKlC,cAAM,aAAa;IAKE,GAAG,EAAE,MAAM;IAJ9B,QAAQ,EAAE,GAAG,GAAG,IAAI,CAAQ;IAC5B,UAAU,EAAE,GAAG,GAAG,IAAI,CAAQ;IAC9B,OAAO,EAAE,OAAO,GAAG,IAAI,CAAQ;gBAEZ,GAAG,EAAE,MAAM;IAsBxB,kBAAkB,CACtB,OAAO,EAAE,OAAO,CAAC,4BAA4B,EAC7C,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,4BAA4B,CAAA;KAAE,CAAC;IAgBzE,QAAQ,CACZ,OAAO,EAAE,OAAO,CAAC,gBAAgB,EACjC,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,gBAAgB,CAAA;KAAE,CAAC;IAY7D,SAAS,CACb,OAAO,EAAE,OAAO,CAAC,iBAAiB,EAClC,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,iBAAiB,CAAA;KAAE,CAAC;IAc9D,YAAY,CAChB,OAAO,EAAE,OAAO,CAAC,oBAAoB,EACrC,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,oBAAoB,CAAA;KAAE,CAAC;IAYjE,cAAc,CAClB,OAAO,EAAE,OAAO,CAAC,sBAAsB,EACvC,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAA;KAAE,CAAC;IAYzD,aAAa,CACjB,OAAO,EAAE,OAAO,CAAC,mBAAmB,EACpC,OAAO,CAAC,EAAE,WAAW,GACpB,OAAO,CAAC;QAAE,MAAM,EAAE,MAAM,CAAC;QAAC,QAAQ,CAAC,EAAE,OAAO,CAAC,YAAY,CAAA;KAAE,CAAC;CAWhE;AAED,eAAe,aAAa,CAAC"}
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
|
-
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
|
-
return new (P || (P = Promise))(function (resolve, reject) {
|
|
5
|
-
function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
|
|
6
|
-
function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
|
|
7
|
-
function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
|
|
8
|
-
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
|
-
});
|
|
10
|
-
};
|
|
11
|
-
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
12
|
-
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
13
|
-
};
|
|
14
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
15
|
-
const grpc_js_1 = require("@grpc/grpc-js");
|
|
16
|
-
const proto_json_1 = __importDefault(require("../api-science-device/proto.json"));
|
|
17
|
-
const client_1 = require("./client");
|
|
18
|
-
const status_1 = require("./status");
|
|
19
|
-
const kDeviceAuthService = "science.DeviceAuthService";
|
|
20
|
-
const kDeviceUpdateService = "science.SynapseUpdate";
|
|
21
|
-
class DeviceManager {
|
|
22
|
-
constructor(uri) {
|
|
23
|
-
this.uri = uri;
|
|
24
|
-
this.rpc_auth = null;
|
|
25
|
-
this.rpc_update = null;
|
|
26
|
-
this.channel = null;
|
|
27
|
-
const { status: statusAuth, client: clientAuth } = (0, client_1.create)(proto_json_1.default, kDeviceAuthService)(uri, grpc_js_1.credentials.createInsecure());
|
|
28
|
-
if (!statusAuth.ok() || !clientAuth) {
|
|
29
|
-
throw new Error(`Failed to create client for ${uri}: ${statusAuth.message}`);
|
|
30
|
-
}
|
|
31
|
-
this.rpc_auth = clientAuth;
|
|
32
|
-
const { status: statusUpdate, client: clientUpdate } = (0, client_1.create)(proto_json_1.default, kDeviceUpdateService)(uri, grpc_js_1.credentials.createInsecure());
|
|
33
|
-
if (!statusUpdate.ok() || !clientUpdate) {
|
|
34
|
-
throw new Error(`Failed to create client for ${uri}: ${statusUpdate.message}`);
|
|
35
|
-
}
|
|
36
|
-
this.rpc_update = clientUpdate;
|
|
37
|
-
}
|
|
38
|
-
// Authentication
|
|
39
|
-
authenticateDevice(request, options) {
|
|
40
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
41
|
-
return new Promise((resolve, reject) => {
|
|
42
|
-
this.rpc_auth.authenticateDevice(request, options, (err, response) => {
|
|
43
|
-
if (err) {
|
|
44
|
-
reject(err);
|
|
45
|
-
}
|
|
46
|
-
else {
|
|
47
|
-
resolve({ status: new status_1.Status(), response });
|
|
48
|
-
}
|
|
49
|
-
});
|
|
50
|
-
});
|
|
51
|
-
});
|
|
52
|
-
}
|
|
53
|
-
listKeys(request, options) {
|
|
54
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
55
|
-
return new Promise((resolve, reject) => {
|
|
56
|
-
this.rpc_auth.listKeys(request, options, (err, response) => {
|
|
57
|
-
if (err) {
|
|
58
|
-
reject(err);
|
|
59
|
-
}
|
|
60
|
-
else {
|
|
61
|
-
resolve({ status: new status_1.Status(), response });
|
|
62
|
-
}
|
|
63
|
-
});
|
|
64
|
-
});
|
|
65
|
-
});
|
|
66
|
-
}
|
|
67
|
-
revokeKey(request, options) {
|
|
68
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
69
|
-
return new Promise((resolve, reject) => {
|
|
70
|
-
this.rpc_auth.revokeKey(request, options, (err, response) => {
|
|
71
|
-
if (err) {
|
|
72
|
-
reject(err);
|
|
73
|
-
}
|
|
74
|
-
else {
|
|
75
|
-
resolve({ status: new status_1.Status(), response });
|
|
76
|
-
}
|
|
77
|
-
});
|
|
78
|
-
});
|
|
79
|
-
});
|
|
80
|
-
}
|
|
81
|
-
// Update
|
|
82
|
-
listPackages(request, options) {
|
|
83
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
84
|
-
return new Promise((resolve, reject) => {
|
|
85
|
-
this.rpc_update.listPackages(request, options, (err, response) => {
|
|
86
|
-
if (err) {
|
|
87
|
-
reject(err);
|
|
88
|
-
}
|
|
89
|
-
else {
|
|
90
|
-
resolve({ status: new status_1.Status(), response });
|
|
91
|
-
}
|
|
92
|
-
});
|
|
93
|
-
});
|
|
94
|
-
});
|
|
95
|
-
}
|
|
96
|
-
updatePackages(request, options) {
|
|
97
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
98
|
-
return new Promise((resolve, reject) => {
|
|
99
|
-
this.rpc_update.updatePackages(request, options, (err, response) => {
|
|
100
|
-
if (err) {
|
|
101
|
-
reject(err);
|
|
102
|
-
}
|
|
103
|
-
else {
|
|
104
|
-
resolve({ status: new status_1.Status(), response });
|
|
105
|
-
}
|
|
106
|
-
});
|
|
107
|
-
});
|
|
108
|
-
});
|
|
109
|
-
}
|
|
110
|
-
uploadPackage(request, options) {
|
|
111
|
-
return __awaiter(this, void 0, void 0, function* () {
|
|
112
|
-
return new Promise((resolve, reject) => {
|
|
113
|
-
this.rpc_update.uploadPackage(request, options, (err, response) => {
|
|
114
|
-
if (err) {
|
|
115
|
-
reject(err);
|
|
116
|
-
}
|
|
117
|
-
else {
|
|
118
|
-
resolve({ status: new status_1.Status(), response });
|
|
119
|
-
}
|
|
120
|
-
});
|
|
121
|
-
});
|
|
122
|
-
});
|
|
123
|
-
}
|
|
124
|
-
}
|
|
125
|
-
exports.default = DeviceManager;
|
|
126
|
-
//# sourceMappingURL=device-management.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"device-management.js","sourceRoot":"","sources":["../../src/utils/device-management.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/ndtp.d.ts
DELETED
|
@@ -1,40 +0,0 @@
|
|
|
1
|
-
import { synapse } from "../api/api";
|
|
2
|
-
export declare const NDTP_VERSION = 1;
|
|
3
|
-
export interface NDTPHeader {
|
|
4
|
-
version: number;
|
|
5
|
-
dataType: synapse.DataType;
|
|
6
|
-
timestamp: bigint;
|
|
7
|
-
seqNumber: number;
|
|
8
|
-
}
|
|
9
|
-
export interface ChannelData {
|
|
10
|
-
channelId: number;
|
|
11
|
-
channelData: bigint[];
|
|
12
|
-
}
|
|
13
|
-
export interface NDTPPayloadBroadband {
|
|
14
|
-
isSigned: boolean;
|
|
15
|
-
bitWidth: number;
|
|
16
|
-
chCount: number;
|
|
17
|
-
sampleRate: number;
|
|
18
|
-
channels: ChannelData[];
|
|
19
|
-
}
|
|
20
|
-
export interface NDTPPayloadSpiketrain {
|
|
21
|
-
binSizeMs: number;
|
|
22
|
-
spikeCounts: number[];
|
|
23
|
-
readonly BIT_WIDTH_BINNED_SPIKES: number;
|
|
24
|
-
}
|
|
25
|
-
export type NDTPPayload = NDTPPayloadBroadband | NDTPPayloadSpiketrain;
|
|
26
|
-
export interface NDTPMessage {
|
|
27
|
-
header: NDTPHeader;
|
|
28
|
-
payload: NDTPPayload;
|
|
29
|
-
crc16: number;
|
|
30
|
-
}
|
|
31
|
-
export declare class NDTPParser {
|
|
32
|
-
private static readonly NDTP_HEADER_SIZE;
|
|
33
|
-
private static crc16;
|
|
34
|
-
private static crc16Verify;
|
|
35
|
-
static unpackHeader(data: Uint8Array): NDTPHeader;
|
|
36
|
-
static unpackBroadband(data: Uint8Array): NDTPPayloadBroadband;
|
|
37
|
-
static unpackSpiketrain(data: Uint8Array): NDTPPayloadSpiketrain;
|
|
38
|
-
static unpack(data: Uint8Array, ignoreCrc?: boolean): NDTPMessage;
|
|
39
|
-
}
|
|
40
|
-
//# sourceMappingURL=ndtp.d.ts.map
|
package/dist/utils/ndtp.d.ts.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ndtp.d.ts","sourceRoot":"","sources":["../../src/utils/ndtp.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AAoBrC,eAAO,MAAM,YAAY,IAAO,CAAC;AAEjC,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,QAAQ,EAAE,OAAO,CAAC,QAAQ,CAAC;IAC3B,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;CACnB;AAED,MAAM,WAAW,WAAW;IAC1B,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;CACvB;AAED,MAAM,WAAW,oBAAoB;IACnC,QAAQ,EAAE,OAAO,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,UAAU,EAAE,MAAM,CAAC;IACnB,QAAQ,EAAE,WAAW,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,qBAAqB;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,EAAE,CAAC;IACtB,QAAQ,CAAC,uBAAuB,EAAE,MAAM,CAAC;CAC1C;AAED,MAAM,MAAM,WAAW,GAAG,oBAAoB,GAAG,qBAAqB,CAAC;AAEvE,MAAM,WAAW,WAAW;IAC1B,MAAM,EAAE,UAAU,CAAC;IACnB,OAAO,EAAE,WAAW,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf;AAED,qBAAa,UAAU;IACrB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,gBAAgB,CAAM;IAE9C,OAAO,CAAC,MAAM,CAAC,KAAK;IAIpB,OAAO,CAAC,MAAM,CAAC,WAAW;IAK1B,MAAM,CAAC,YAAY,CAAC,IAAI,EAAE,UAAU,GAAG,UAAU;IA4BjD,MAAM,CAAC,eAAe,CAAC,IAAI,EAAE,UAAU,GAAG,oBAAoB;IAuC9D,MAAM,CAAC,gBAAgB,CAAC,IAAI,EAAE,UAAU,GAAG,qBAAqB;IAmChE,MAAM,CAAC,MAAM,CAAC,IAAI,EAAE,UAAU,EAAE,SAAS,UAAQ,GAAG,WAAW;CA8BhE"}
|
package/dist/utils/ndtp.js
DELETED
|
@@ -1,140 +0,0 @@
|
|
|
1
|
-
"use strict";
|
|
2
|
-
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
-
exports.NDTPParser = exports.NDTP_VERSION = void 0;
|
|
4
|
-
const api_1 = require("../api/api");
|
|
5
|
-
const crc_1 = require("crc");
|
|
6
|
-
// Helper functions for network byte order conversions
|
|
7
|
-
const htonl = (n) => {
|
|
8
|
-
return ((n & 0xff) << 24) | ((n & 0xff00) << 8) | ((n & 0xff0000) >> 8) | ((n & 0xff000000) >> 24);
|
|
9
|
-
};
|
|
10
|
-
const ntohl = htonl;
|
|
11
|
-
const htonll = (n) => {
|
|
12
|
-
if (new Int8Array(new Int16Array([1]).buffer)[0] === 1) {
|
|
13
|
-
// Little endian
|
|
14
|
-
return (BigInt(htonl(Number(n & BigInt(0xffffffff)))) << BigInt(32)) | BigInt(htonl(Number(n >> BigInt(32))));
|
|
15
|
-
}
|
|
16
|
-
return n; // Big endian
|
|
17
|
-
};
|
|
18
|
-
const ntohll = htonll;
|
|
19
|
-
exports.NDTP_VERSION = 0x01;
|
|
20
|
-
class NDTPParser {
|
|
21
|
-
static crc16(data) {
|
|
22
|
-
return (0, crc_1.crc16)(Buffer.from(data));
|
|
23
|
-
}
|
|
24
|
-
static crc16Verify(data, expectedCrc) {
|
|
25
|
-
const calculatedCrc = this.crc16(data);
|
|
26
|
-
return calculatedCrc === expectedCrc;
|
|
27
|
-
}
|
|
28
|
-
static unpackHeader(data) {
|
|
29
|
-
if (data.length < this.NDTP_HEADER_SIZE) {
|
|
30
|
-
throw new Error(`Invalid header size: expected ${this.NDTP_HEADER_SIZE}, got ${data.length}`);
|
|
31
|
-
}
|
|
32
|
-
let offset = 0;
|
|
33
|
-
const version = data[offset++];
|
|
34
|
-
if (version !== exports.NDTP_VERSION) {
|
|
35
|
-
throw new Error(`Invalid version: expected ${exports.NDTP_VERSION}, got ${version}`);
|
|
36
|
-
}
|
|
37
|
-
const dataType = data[offset++];
|
|
38
|
-
// Read timestamp (8 bytes)
|
|
39
|
-
const timestamp = ntohll(new DataView(data.buffer).getBigUint64(offset));
|
|
40
|
-
offset += 8;
|
|
41
|
-
// Read sequence number (2 bytes)
|
|
42
|
-
const seqNumber = new DataView(data.buffer).getUint16(offset);
|
|
43
|
-
return {
|
|
44
|
-
version,
|
|
45
|
-
dataType,
|
|
46
|
-
timestamp,
|
|
47
|
-
seqNumber,
|
|
48
|
-
};
|
|
49
|
-
}
|
|
50
|
-
static unpackBroadband(data) {
|
|
51
|
-
if (data.length < 7) {
|
|
52
|
-
throw new Error("Invalid data size for NDTPPayloadBroadband");
|
|
53
|
-
}
|
|
54
|
-
const bitWidth = data[0] >> 1;
|
|
55
|
-
const isSigned = (data[0] & 1) === 1;
|
|
56
|
-
const numChannels = (data[1] << 16) | (data[2] << 8) | data[3];
|
|
57
|
-
const sampleRate = (data[4] << 16) | (data[5] << 8) | data[6];
|
|
58
|
-
let offset = 7;
|
|
59
|
-
const channels = [];
|
|
60
|
-
for (let i = 0; i < numChannels; i++) {
|
|
61
|
-
// Read channel ID (24 bits)
|
|
62
|
-
const channelId = (data[offset] << 16) | (data[offset + 1] << 8) | data[offset + 2];
|
|
63
|
-
offset += 3;
|
|
64
|
-
// Read number of samples (16 bits)
|
|
65
|
-
const numSamples = (data[offset] << 8) | data[offset + 1];
|
|
66
|
-
offset += 2;
|
|
67
|
-
// Read channel data
|
|
68
|
-
const channelData = [];
|
|
69
|
-
// Note: Implementation of bit-packed data reading would go here
|
|
70
|
-
// This would require a more complex implementation similar to the C++ to_ints function
|
|
71
|
-
channels.push({ channelId, channelData });
|
|
72
|
-
}
|
|
73
|
-
return {
|
|
74
|
-
isSigned,
|
|
75
|
-
bitWidth,
|
|
76
|
-
chCount: numChannels,
|
|
77
|
-
sampleRate,
|
|
78
|
-
channels,
|
|
79
|
-
};
|
|
80
|
-
}
|
|
81
|
-
static unpackSpiketrain(data) {
|
|
82
|
-
if (data.length < 5) {
|
|
83
|
-
throw new Error("Invalid data size for NDTPPayloadSpiketrain");
|
|
84
|
-
}
|
|
85
|
-
const sampleCount = (data[0] << 24) | (data[1] << 16) | (data[2] << 8) | data[3];
|
|
86
|
-
const binSizeMs = data[4];
|
|
87
|
-
// Unpack spike counts (4 bits per count)
|
|
88
|
-
const spikeCounts = [];
|
|
89
|
-
const BIT_WIDTH_BINNED_SPIKES = 4;
|
|
90
|
-
// Read packed spike counts
|
|
91
|
-
let byteOffset = 5;
|
|
92
|
-
let bitOffset = 0;
|
|
93
|
-
for (let i = 0; i < sampleCount; i++) {
|
|
94
|
-
const currentByte = data[byteOffset];
|
|
95
|
-
const count = (currentByte >> (4 - bitOffset)) & 0x0f;
|
|
96
|
-
spikeCounts.push(count);
|
|
97
|
-
bitOffset += BIT_WIDTH_BINNED_SPIKES;
|
|
98
|
-
if (bitOffset >= 8) {
|
|
99
|
-
bitOffset = 0;
|
|
100
|
-
byteOffset++;
|
|
101
|
-
}
|
|
102
|
-
}
|
|
103
|
-
return {
|
|
104
|
-
binSizeMs,
|
|
105
|
-
spikeCounts,
|
|
106
|
-
BIT_WIDTH_BINNED_SPIKES,
|
|
107
|
-
};
|
|
108
|
-
}
|
|
109
|
-
static unpack(data, ignoreCrc = false) {
|
|
110
|
-
if (data.length < this.NDTP_HEADER_SIZE + 2) {
|
|
111
|
-
// +2 for CRC
|
|
112
|
-
throw new Error("Invalid data size for NDTPMessage");
|
|
113
|
-
}
|
|
114
|
-
const header = this.unpackHeader(data.slice(0, this.NDTP_HEADER_SIZE));
|
|
115
|
-
const payloadData = data.slice(this.NDTP_HEADER_SIZE, -2);
|
|
116
|
-
const crc16 = (data[data.length - 2] << 8) | data[data.length - 1];
|
|
117
|
-
// Verify CRC
|
|
118
|
-
if (!ignoreCrc) {
|
|
119
|
-
// Verify CRC here
|
|
120
|
-
}
|
|
121
|
-
let payload;
|
|
122
|
-
if (header.dataType === api_1.synapse.DataType.kBroadband) {
|
|
123
|
-
payload = this.unpackBroadband(payloadData);
|
|
124
|
-
}
|
|
125
|
-
else if (header.dataType === api_1.synapse.DataType.kSpiketrain) {
|
|
126
|
-
payload = this.unpackSpiketrain(payloadData);
|
|
127
|
-
}
|
|
128
|
-
else {
|
|
129
|
-
throw new Error("Unsupported data type in NDTP header");
|
|
130
|
-
}
|
|
131
|
-
return {
|
|
132
|
-
header,
|
|
133
|
-
payload,
|
|
134
|
-
crc16,
|
|
135
|
-
};
|
|
136
|
-
}
|
|
137
|
-
}
|
|
138
|
-
exports.NDTPParser = NDTPParser;
|
|
139
|
-
NDTPParser.NDTP_HEADER_SIZE = 12;
|
|
140
|
-
//# sourceMappingURL=ndtp.js.map
|
package/dist/utils/ndtp.js.map
DELETED
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"ndtp.js","sourceRoot":"","sources":["../../src/utils/ndtp.ts"],"names":[],"mappings":"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"}
|