@pilotdev/pilot-bim-dataprovider 24.9.0 → 24.12.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 (54) hide show
  1. package/README.md +9 -9
  2. package/lib/index.d.ts +3 -3
  3. package/lib/index.js +2 -2
  4. package/lib/index.js.map +1 -1
  5. package/lib/src/file-system/IFileSystem.d.ts +47 -0
  6. package/lib/src/file-system/IFileSystem.js +179 -0
  7. package/lib/src/file-system/IFileSystem.js.map +1 -0
  8. package/lib/src/file-system/IFileSystemCache.d.ts +62 -0
  9. package/lib/src/file-system/IFileSystemCache.js +154 -0
  10. package/lib/src/file-system/IFileSystemCache.js.map +1 -0
  11. package/lib/src/file-system/OPFS.d.ts +35 -0
  12. package/lib/src/file-system/OPFS.js +182 -0
  13. package/lib/src/file-system/OPFS.js.map +1 -0
  14. package/lib/src/file-system/PATH.d.ts +8 -0
  15. package/lib/src/file-system/PATH.js +34 -0
  16. package/lib/src/file-system/PATH.js.map +1 -0
  17. package/lib/src/model/BimDataElement.d.ts +69 -3
  18. package/lib/src/model/BimDataElement.js +13 -4
  19. package/lib/src/model/BimDataElement.js.map +1 -1
  20. package/lib/src/model/BimDataElementPropertySet.js.map +1 -1
  21. package/lib/src/model/BimDataPart.d.ts +62 -0
  22. package/lib/src/model/BimDataPart.js +99 -0
  23. package/lib/src/model/BimDataPart.js.map +1 -0
  24. package/lib/src/model/BimDataProvider.d.ts +16 -0
  25. package/lib/src/model/BimDataProvider.js +29 -0
  26. package/lib/src/model/BimDataProvider.js.map +1 -0
  27. package/lib/src/model/Consts.d.ts +3 -0
  28. package/lib/src/model/Consts.js +3 -0
  29. package/lib/src/model/Consts.js.map +1 -1
  30. package/lib/src/utils/ViewerTools.d.ts +9 -9
  31. package/lib/src/utils/ViewerTools.js +73 -38
  32. package/lib/src/utils/ViewerTools.js.map +1 -1
  33. package/lib/src/utils/WasmTools.d.ts +10 -6
  34. package/lib/src/utils/WasmTools.js +66 -32
  35. package/lib/src/utils/WasmTools.js.map +1 -1
  36. package/lib/src/wasm/CorsWorker.d.ts +6 -0
  37. package/lib/src/wasm/CorsWorker.js +20 -0
  38. package/lib/src/wasm/CorsWorker.js.map +1 -0
  39. package/lib/src/wasm/pilot_bim_dataprovider.d.ts +136 -7
  40. package/lib/src/wasm/pilot_bim_dataprovider.js +1 -1
  41. package/lib/src/wasm/pilot_bim_dataprovider.wasm +0 -0
  42. package/lib/src/wasm/wasm.worker.d.ts +56 -0
  43. package/lib/src/wasm/wasm.worker.js +280 -0
  44. package/lib/src/wasm/wasm.worker.js.map +1 -0
  45. package/package.json +5 -12
  46. package/lib/src/model/BimDataModel.d.ts +0 -19
  47. package/lib/src/model/BimDataModel.js +0 -59
  48. package/lib/src/model/BimDataModel.js.map +0 -1
  49. package/lib/src/model/BimDataModelPart.d.ts +0 -40
  50. package/lib/src/model/BimDataModelPart.js +0 -144
  51. package/lib/src/model/BimDataModelPart.js.map +0 -1
  52. package/lib/src/model/BimNodeComparer.d.ts +0 -10
  53. package/lib/src/model/BimNodeComparer.js +0 -71
  54. package/lib/src/model/BimNodeComparer.js.map +0 -1
@@ -5,9 +5,10 @@ export interface IWasmBimModule extends EmscriptenModule {
5
5
  getAllNodes(filename: string): VectorOf<WasmIfcNode>;
6
6
  getAllAttributes(filename: string): VectorOf<WasmElementPropertySet>;
7
7
  getTessellations(filename: string, versionFrom: bigint, versionTo: bigint): VectorOf<WasmTessellation>;
8
+ getNodesTessellations(filename: string, versionFrom: bigint, versionTo: bigint): VectorOf<WasmTessellation>;
8
9
  getNodes(filename: string, versionFrom: bigint, versionTo: bigint): VectorOf<WasmIfcNode>;
9
10
  getProperties(filename: string, elementId: string, version: bigint): VectorOf<WasmElementPropertySet>;
10
- getNodesToCompare(filename: string, versionFrom: bigint, versionTo: bigint): VectorOf<WasmIfcNodePair>;
11
+ getComparedNodes(filename: string, versionFrom: bigint, versionTo: bigint): VectorOf<WasmIfcNode>;
11
12
  getTessellationsToCompare(filename: string, versionFrom: bigint, versionTo: bigint): VectorOf<WasmTessellation>;
12
13
  getLatestVersion(filename: string): bigint;
13
14
  getAllVersions(filename: string): VectorOf<bigint>;
@@ -15,6 +16,12 @@ export interface IWasmBimModule extends EmscriptenModule {
15
16
  mergeDatabases(targetDBFilename: string, sourceDBFilename: string): void;
16
17
  manualMergeDatabases(targetDBFilename: string, sourceDBFilename: string): void;
17
18
  auditDatabase(filename: string): void;
19
+
20
+ getCloudPoints(filename: string, index: number): WasmPointsData;
21
+ getCloudHierarchy(filename: string): VectorOf<WasmCloudHierarchyItem>;
22
+ getCloudParameters(filename: string): MapOf<string, string>;
23
+ getCloudMetadata(filename: string): WasmPointsMetadata;
24
+ getCloudReader(): WasmCloudReader;
18
25
  //doLeakCheck(): void;
19
26
  }
20
27
 
@@ -23,12 +30,22 @@ export interface VectorOf<T> extends IDisposable {
23
30
  size(): number;
24
31
  }
25
32
 
33
+ export interface MapOf<TKey, TValue> extends IDisposable {
34
+ size(): number;
35
+ keys(): VectorOf<TKey>;
36
+ get(key: TKey): TValue;
37
+ }
38
+
26
39
  export interface WasmModelMesh extends IDisposable {
27
40
  vertices: VectorOf<number>;
28
41
  normals: VectorOf<number>;
29
42
  indices: VectorOf<number>;
30
43
  edge_indices: VectorOf<number>;
31
44
  color: number;
45
+ getVerticesDataOffset(): number;
46
+ getNormalsDataOffset(): number;
47
+ getIndicesDataOffset(): number;
48
+ getEdgeIndicesDataOffset(): number;
32
49
  }
33
50
 
34
51
  export interface WasmTessellation extends IDisposable {
@@ -52,11 +69,6 @@ export interface WasmIfcNode extends IDisposable {
52
69
  mesh_properties: VectorOf<WasmMeshPropertyPair>;
53
70
  }
54
71
 
55
- export interface WasmIfcNodePair extends IDisposable{
56
- oldNode: WasmIfcNode;
57
- newNode: WasmIfcNode;
58
- }
59
-
60
72
  export interface WasmIfcNodeState {
61
73
  value: number;
62
74
  }
@@ -64,6 +76,7 @@ export interface WasmIfcNodeState {
64
76
  export interface WasmGridObject extends IDisposable {
65
77
  grid_axes: VectorOf<WasmGridAxis>;
66
78
  placement: VectorOf<number>;
79
+ getPlacementDataOffset(): number;
67
80
  }
68
81
 
69
82
  export interface WasmGridAxis extends IDisposable {
@@ -71,6 +84,7 @@ export interface WasmGridAxis extends IDisposable {
71
84
  type: WasmGridAxisType;
72
85
  data: VectorOf<number>;
73
86
  label: string;
87
+ getDataOffset(): number;
74
88
  }
75
89
 
76
90
  export interface WasmGridAxisType {
@@ -85,6 +99,7 @@ export interface WasmMeshPropertyPair extends IDisposable {
85
99
  export interface WasmMeshProperties extends IDisposable {
86
100
  mesh_color: number;
87
101
  mesh_placement: VectorOf<number>;
102
+ getPlacementDataOffset(): number;
88
103
  }
89
104
 
90
105
  export class IDisposable {
@@ -146,6 +161,8 @@ export abstract class Optional<T> {
146
161
  has_value(): boolean;
147
162
  value(): T;
148
163
  }
164
+ export class OptionalInt extends Optional<number> { }
165
+ export class OptionalFloat extends Optional<number> { }
149
166
  export class OptionalString extends Optional<string> { }
150
167
  export class OptionalBool extends Optional<boolean> { }
151
168
  export class OptionalLong extends Optional<number> { }
@@ -153,7 +170,119 @@ export class OptionalDouble extends Optional<number> { }
153
170
  export class OptionalDate extends Optional<bigint> { }
154
171
  export class OptionalGuid extends Optional<WasmGuid> { }
155
172
  export class OptionalDecimal extends Optional<WasmDecimal> { }
173
+ export class OptionalPointF3 extends Optional<number[]> { }
174
+
175
+ export interface WasmCloudHierarchyItem {
176
+ index: number;
177
+ dataIndex: number;
178
+ type: number;
179
+ mask: number;
180
+ numPoints: number;
181
+ offset: number;
182
+ size: number;
183
+ min: number[];
184
+ max: number[];
185
+ spacing: number;
186
+ }
187
+
188
+ export interface WasmPointsData extends IDisposable {
189
+ points: VectorOf<number>;
190
+ getPointsDataOffset(): number;
191
+ }
192
+
193
+ export interface WasmPointsMetadata extends IDisposable {
194
+ depth: number;
195
+ min: number[];
196
+ max: number[];
197
+ baseSpacing: OptionalFloat;
198
+
199
+ version: OptionalFloat;
200
+ filename: OptionalString;
201
+ description: OptionalString;
202
+ inputPoints: OptionalInt;
203
+ processedPoints: OptionalInt;
204
+ nodesCount: OptionalInt;
205
+ nodesPoints: OptionalInt;
206
+ posOffset: OptionalPointF3;
207
+ posScale: OptionalPointF3;
208
+ root_min: OptionalPointF3;
209
+ root_max: OptionalPointF3;
210
+ }
211
+
212
+ export interface WasmCloudReader extends IDisposable {
213
+ open(filename: string): void;
214
+ close(): void;
156
215
 
216
+ getCloudPoints(index: number, cmdCacheEnable: boolean): WasmPointsData;
217
+ getCloudHierarchy(): VectorOf<WasmCloudHierarchyItem>;
218
+ getCloudParameters(): MapOf<string, string>;
219
+ getCloudMetadata(): WasmPointsMetadata;
220
+ }
157
221
 
158
222
  declare const BimDataProviderModule: EmscriptenModuleFactory<IWasmBimModule>;
159
- export default BimDataProviderModule;
223
+ export default BimDataProviderModule;
224
+
225
+
226
+ export interface Lookup {
227
+ path: string;
228
+ node?: FSNode;
229
+ }
230
+
231
+ export interface FSStream {
232
+ node?: FSNode;
233
+ path: string;
234
+ flags: any,
235
+ seekable: boolean,
236
+ position: number,
237
+ stream_ops: any,
238
+ ungotten: [],
239
+ error: any
240
+ }
241
+
242
+ export interface FSNode {
243
+ id: number;
244
+ mode: number;
245
+ mount?: any;
246
+ mounted?: any;
247
+ name: string;
248
+ name_next: string;
249
+ node_ops: any;
250
+ parent: string;
251
+ rdev?: any;
252
+ stream_ops?: any;
253
+ contents: FSNode[];
254
+ handle: FileSystemHandle;
255
+ }
256
+ export interface FileSystemType {
257
+ mountpoint: string;
258
+ mounts: [];
259
+ opts: { root: string }
260
+ type: any;
261
+ }
262
+
263
+ export declare const MEMFS: Emscripten.FileSystemType;
264
+ export declare const NODEFS: Emscripten.FileSystemType;
265
+ export declare const IDBFS: Emscripten.FileSystemType;
266
+ export declare const PROXYFS: Emscripten.FileSystemType;
267
+
268
+ export interface FS {
269
+ filesystems: any;
270
+ lookupPath(path: string, opts: any): Lookup;
271
+ isFile(mode: number): boolean;
272
+ isDir(mode: number): boolean;
273
+ mount(type: Emscripten.FileSystemType, opts: any, mountpoint: string): any;
274
+ unlink(path: string): void;
275
+
276
+ stat(path: string, dontFollow?: boolean): any;
277
+ lstat(path: string): any;
278
+ open(path: string, flags: string, mode?: number, fd_start?: number, fd_end?: number): FSStream;
279
+ close(stream: FSStream): void;
280
+ read(stream: FSStream, buffer: ArrayBufferView, offset: number, length: number, position?: number): number;
281
+ write(stream: FSStream, buffer: ArrayBufferView, offset: number, length: number, position?: number, canOwn?: boolean,): number;
282
+ readFile(path: string, opts?: unknown): Uint8Array;
283
+ writeFile(path: string, data: string | ArrayBufferView, opts?: { flags?: string | undefined }): void;
284
+ createDataFile(parent: string | FSNode, name: string, data: ArrayBufferView, canRead: boolean, canWrite: boolean, canOwn: boolean): FSNode;
285
+
286
+ createNode(parent: string | FSNode, name: string, mode: number, dev: number): FSNode;
287
+ createStream(stream: FSStream, fd: number): FSStream;
288
+ }