@markandre13/usd.js 0.0.4 → 0.0.5
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/dist/compression/compress.js +5 -2
- package/dist/compression/compress.js.map +1 -1
- package/dist/compression/integers.js +11 -0
- package/dist/compression/integers.js.map +1 -1
- package/dist/compression/lz4.d.ts +18 -1
- package/dist/compression/lz4.js +100 -17
- package/dist/compression/lz4.js.map +1 -1
- package/dist/crate/BootStrap.js +2 -0
- package/dist/crate/BootStrap.js.map +1 -1
- package/dist/crate/Crate.d.ts +8 -1
- package/dist/crate/Crate.js +49 -4
- package/dist/crate/Crate.js.map +1 -1
- package/dist/crate/Fields.d.ts +1 -1
- package/dist/crate/Fields.js +26 -1
- package/dist/crate/Fields.js.map +1 -1
- package/dist/crate/Paths.d.ts +1 -1
- package/dist/crate/Paths.js +16 -2
- package/dist/crate/Paths.js.map +1 -1
- package/dist/crate/Reader.js +3 -3
- package/dist/crate/Reader.js.map +1 -1
- package/dist/crate/SpecType.d.ts +3 -3
- package/dist/crate/SpecType.js +2 -0
- package/dist/crate/SpecType.js.map +1 -1
- package/dist/crate/Specifier.d.ts +1 -1
- package/dist/crate/Specs.js +1 -0
- package/dist/crate/Specs.js.map +1 -1
- package/dist/crate/Stage.d.ts +1 -1
- package/dist/crate/Stage.js +1 -0
- package/dist/crate/Stage.js.map +1 -1
- package/dist/crate/Strings.js +5 -0
- package/dist/crate/Strings.js.map +1 -1
- package/dist/crate/Tokens.js +47 -1
- package/dist/crate/Tokens.js.map +1 -1
- package/dist/crate/ValueRep.d.ts +1 -1
- package/dist/crate/ValueRep.js +27 -3
- package/dist/crate/ValueRep.js.map +1 -1
- package/dist/crate/Variability.d.ts +1 -1
- package/dist/crate/Writer.d.ts +3 -0
- package/dist/crate/Writer.js +21 -0
- package/dist/crate/Writer.js.map +1 -1
- package/dist/detail/hexdump.js +1 -0
- package/dist/detail/hexdump.js.map +1 -1
- package/dist/nodes/attributes/AssetPathAttr.d.ts +1 -1
- package/dist/nodes/attributes/AssetPathAttr.js +1 -1
- package/dist/nodes/attributes/AssetPathAttr.js.map +1 -1
- package/dist/nodes/attributes/Attribute.d.ts +1 -1
- package/dist/nodes/attributes/Attribute.js +1 -1
- package/dist/nodes/attributes/Attribute.js.map +1 -1
- package/dist/nodes/attributes/BooleanAttr.d.ts +1 -1
- package/dist/nodes/attributes/BooleanAttr.js +1 -1
- package/dist/nodes/attributes/BooleanAttr.js.map +1 -1
- package/dist/nodes/attributes/Color3fAttr.d.ts +3 -3
- package/dist/nodes/attributes/Color3fAttr.js +1 -1
- package/dist/nodes/attributes/Color3fAttr.js.map +1 -1
- package/dist/nodes/attributes/FloatAttr.d.ts +1 -1
- package/dist/nodes/attributes/FloatAttr.js +1 -1
- package/dist/nodes/attributes/FloatAttr.js.map +1 -1
- package/dist/nodes/attributes/IntArrayAttr.d.ts +1 -1
- package/dist/nodes/attributes/IntArrayAttr.js +1 -1
- package/dist/nodes/attributes/IntArrayAttr.js.map +1 -1
- package/dist/nodes/attributes/Relationship.d.ts +1 -1
- package/dist/nodes/attributes/Relationship.js +1 -1
- package/dist/nodes/attributes/Relationship.js.map +1 -1
- package/dist/nodes/attributes/StringAttr.d.ts +1 -1
- package/dist/nodes/attributes/StringAttr.js +1 -1
- package/dist/nodes/attributes/StringAttr.js.map +1 -1
- package/dist/nodes/attributes/TokenAttr.d.ts +1 -1
- package/dist/nodes/attributes/TokenAttr.js +1 -1
- package/dist/nodes/attributes/TokenAttr.js.map +1 -1
- package/dist/nodes/attributes/VariabilityAttr.d.ts +1 -1
- package/dist/nodes/attributes/VariabilityAttr.js +1 -1
- package/dist/nodes/attributes/VariabilityAttr.js.map +1 -1
- package/dist/nodes/attributes/Vec2fArrayAttr.d.ts +1 -1
- package/dist/nodes/attributes/Vec2fArrayAttr.js +1 -1
- package/dist/nodes/attributes/Vec2fArrayAttr.js.map +1 -1
- package/dist/nodes/attributes/Vec3fArrayAttr.d.ts +1 -1
- package/dist/nodes/attributes/Vec3fArrayAttr.js +1 -1
- package/dist/nodes/attributes/Vec3fArrayAttr.js.map +1 -1
- package/dist/nodes/geometry/Boundable.d.ts +6 -0
- package/dist/nodes/geometry/Boundable.js +6 -0
- package/dist/nodes/geometry/Boundable.js.map +1 -1
- package/dist/nodes/geometry/Camera.d.ts +7 -2
- package/dist/nodes/geometry/Camera.js +36 -0
- package/dist/nodes/geometry/Camera.js.map +1 -1
- package/dist/nodes/geometry/GeomSubset.d.ts +1 -1
- package/dist/nodes/geometry/GeomSubset.js +1 -1
- package/dist/nodes/geometry/GeomSubset.js.map +1 -1
- package/dist/nodes/geometry/Gprim.d.ts +28 -0
- package/dist/nodes/geometry/Gprim.js +30 -0
- package/dist/nodes/geometry/Gprim.js.map +1 -1
- package/dist/nodes/geometry/Imageable.d.ts +9 -0
- package/dist/nodes/geometry/Imageable.js +9 -0
- package/dist/nodes/geometry/Imageable.js.map +1 -1
- package/dist/nodes/geometry/Mesh.d.ts +69 -7
- package/dist/nodes/geometry/Mesh.js +100 -10
- package/dist/nodes/geometry/Mesh.js.map +1 -1
- package/dist/nodes/geometry/PointBased.d.ts +19 -2
- package/dist/nodes/geometry/PointBased.js +24 -12
- package/dist/nodes/geometry/PointBased.js.map +1 -1
- package/dist/nodes/geometry/Scope.d.ts +9 -1
- package/dist/nodes/geometry/Scope.js +8 -0
- package/dist/nodes/geometry/Scope.js.map +1 -1
- package/dist/nodes/geometry/SkelBindingAPI.d.ts +53 -0
- package/dist/nodes/geometry/SkelBindingAPI.js +2 -0
- package/dist/nodes/geometry/SkelBindingAPI.js.map +1 -0
- package/dist/nodes/geometry/Xform.d.ts +6 -1
- package/dist/nodes/geometry/Xform.js +5 -0
- package/dist/nodes/geometry/Xform.js.map +1 -1
- package/dist/nodes/geometry/Xformable.d.ts +9 -3
- package/dist/nodes/geometry/Xformable.js +6 -0
- package/dist/nodes/geometry/Xformable.js.map +1 -1
- package/dist/nodes/lux/BoundableLightBase.d.ts +8 -0
- package/dist/nodes/lux/BoundableLightBase.js +8 -0
- package/dist/nodes/lux/BoundableLightBase.js.map +1 -1
- package/dist/nodes/lux/DomeLight.d.ts +11 -1
- package/dist/nodes/lux/DomeLight.js +10 -0
- package/dist/nodes/lux/DomeLight.js.map +1 -1
- package/dist/nodes/lux/NonboundableLightBase.d.ts +1 -1
- package/dist/nodes/lux/NonboundableLightBase.js +10 -1
- package/dist/nodes/lux/NonboundableLightBase.js.map +1 -1
- package/dist/nodes/lux/SphereLight.d.ts +9 -1
- package/dist/nodes/lux/SphereLight.js +8 -0
- package/dist/nodes/lux/SphereLight.js.map +1 -1
- package/dist/nodes/shader/Material.d.ts +7 -1
- package/dist/nodes/shader/Material.js +6 -0
- package/dist/nodes/shader/Material.js.map +1 -1
- package/dist/nodes/shader/NodeGraph.d.ts +7 -0
- package/dist/nodes/shader/NodeGraph.js +7 -0
- package/dist/nodes/shader/NodeGraph.js.map +1 -1
- package/dist/nodes/shader/Shader.d.ts +9 -1
- package/dist/nodes/shader/Shader.js +8 -0
- package/dist/nodes/shader/Shader.js.map +1 -1
- package/dist/nodes/skeleton/SkelRoot.d.ts +6 -1
- package/dist/nodes/skeleton/SkelRoot.js +5 -0
- package/dist/nodes/skeleton/SkelRoot.js.map +1 -1
- package/dist/nodes/skeleton/Skeleton.d.ts +41 -4
- package/dist/nodes/skeleton/Skeleton.js +37 -0
- package/dist/nodes/skeleton/Skeleton.js.map +1 -1
- package/dist/nodes/usd/PseudoRoot.d.ts +1 -1
- package/dist/nodes/usd/PseudoRoot.js +21 -1
- package/dist/nodes/usd/PseudoRoot.js.map +1 -1
- package/dist/nodes/usd/SchemaBase.d.ts +1 -1
- package/dist/nodes/usd/SchemaBase.js +1 -1
- package/dist/nodes/usd/SchemaBase.js.map +1 -1
- package/dist/nodes/usd/Typed.d.ts +10 -0
- package/dist/nodes/usd/Typed.js +10 -0
- package/dist/nodes/usd/Typed.js.map +1 -1
- package/dist/{crate → nodes/usd}/UsdNode.d.ts +18 -9
- package/dist/{crate → nodes/usd}/UsdNode.js +35 -2
- package/dist/nodes/usd/UsdNode.js.map +1 -0
- package/package.json +8 -8
- package/dist/crate/UsdNode.js.map +0 -1
- package/dist/tsconfig.tsbuildinfo +0 -1
|
@@ -1,4 +1,8 @@
|
|
|
1
|
-
|
|
1
|
+
// git clone https://github.com/PixarAnimationStudios/OpenUSD.git
|
|
2
|
+
// pxr/usd/sdf/crateFile.h
|
|
3
|
+
import { compressBlock, compressBound, decompressBlock, LZ4_MAX_INPUT_SIZE } from "./lz4";
|
|
4
|
+
// OpenUSD/pxr/base/tf/fastCompression.cpp: TfFastCompression::DecompressFromBuffer(...)
|
|
5
|
+
// tinyusdz/src/lz4-compression.cc: LZ4Compression::DecompressFromBuffer(...)
|
|
2
6
|
export function decompressFromBuffer(src, dst) {
|
|
3
7
|
const nChunks = src.at(0);
|
|
4
8
|
if (nChunks > 127) {
|
|
@@ -14,7 +18,6 @@ export function decompressFromBuffer(src, dst) {
|
|
|
14
18
|
throw Error("decompressFromBuffer(): chunks are not implemented yet");
|
|
15
19
|
}
|
|
16
20
|
export function compressToBuffer(src, dst) {
|
|
17
|
-
const LZ4_MAX_INPUT_SIZE = 0x7E000000;
|
|
18
21
|
if (src.length < LZ4_MAX_INPUT_SIZE) {
|
|
19
22
|
if (dst.length < compressBound(src.length) + 1) {
|
|
20
23
|
throw Error(`compressToBuffer(): dst has ${dst.length} octets but at least ${compressBound(src.length) + 1} are needed`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"compress.js","sourceRoot":"","sources":["../../src/compression/compress.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"compress.js","sourceRoot":"","sources":["../../src/compression/compress.ts"],"names":[],"mappings":"AAAA,iEAAiE;AACjE,0BAA0B;AAC1B,OAAO,EAAE,aAAa,EAAE,aAAa,EAAE,eAAe,EAAE,kBAAkB,EAAE,MAAM,OAAO,CAAA;AAMzF,wFAAwF;AACxF,6EAA6E;AAC7E,MAAM,UAAU,oBAAoB,CAAC,GAAe,EAAE,GAAe;IACjE,MAAM,OAAO,GAAG,GAAG,CAAC,EAAE,CAAC,CAAC,CAAE,CAAA;IAC1B,IAAI,OAAO,GAAG,GAAG,EAAE,CAAC;QAChB,MAAM,KAAK,CAAC,iBAAiB,CAAC,CAAA;IAClC,CAAC;IACD,IAAI,OAAO,KAAK,CAAC,EAAE,CAAC;QAChB,MAAM,CAAC,GAAG,eAAe,CAAC,GAAG,EAAE,GAAG,EAAE,CAAC,EAAE,GAAG,CAAC,UAAU,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA;QAC7D,IAAI,CAAC,GAAG,CAAC,EAAE,CAAC;YACR,MAAM,KAAK,CAAC,8CAA8C,CAAC,CAAA;QAC/D,CAAC;QACD,OAAO,CAAC,CAAA;IACZ,CAAC;IACD,MAAM,KAAK,CAAC,wDAAwD,CAAC,CAAA;AACzE,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,GAAe,EAAE,GAAe;IAC7D,IAAI,GAAG,CAAC,MAAM,GAAG,kBAAkB,EAAE,CAAC;QAClC,IAAI,GAAG,CAAC,MAAM,GAAG,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,EAAE,CAAC;YAC7C,MAAM,KAAK,CAAC,+BAA+B,GAAG,CAAC,MAAM,wBAAwB,aAAa,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,aAAa,CAAC,CAAA;QAC5H,CAAC;QACD,MAAM,aAAa,GAAG,IAAI,UAAU,CAAC,GAAG,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,MAAM,CAAC,aAAa,GAAC,CAAC,CAAC,CAAA;QAC/E,MAAM,CAAC,GAAG,aAAa,CAAC,GAAG,EAAE,aAAa,EAAE,CAAC,EAAE,GAAG,CAAC,UAAU,CAAC,CAAA;QAC9D,OAAO,CAAC,GAAG,CAAC,CAAA;IAChB,CAAC;IACD,MAAM,KAAK,CAAC,oDAAoD,CAAC,CAAA;AACrE,CAAC"}
|
|
@@ -1,3 +1,8 @@
|
|
|
1
|
+
// encode / decode int32
|
|
2
|
+
// int32: common value
|
|
3
|
+
// sequence of uint8 containing 4 Codes
|
|
4
|
+
// sequence of int8|int16|int32 as defined by the codes
|
|
5
|
+
// encoded values are the difference to the previous value
|
|
1
6
|
var Code;
|
|
2
7
|
(function (Code) {
|
|
3
8
|
Code[Code["Common"] = 0] = "Common";
|
|
@@ -51,6 +56,7 @@ export function encodeIntegers(input, output) {
|
|
|
51
56
|
if (input.length === 0) {
|
|
52
57
|
return 0;
|
|
53
58
|
}
|
|
59
|
+
// First find the most common element value.
|
|
54
60
|
let commonValue = 0;
|
|
55
61
|
{
|
|
56
62
|
let commonCount = 0;
|
|
@@ -71,11 +77,15 @@ export function encodeIntegers(input, output) {
|
|
|
71
77
|
commonCount = count;
|
|
72
78
|
}
|
|
73
79
|
else if (count == commonCount && val > commonValue) {
|
|
80
|
+
// Take the largest common value in case of a tie -- this gives
|
|
81
|
+
// the biggest potential savings in the encoded stream.
|
|
74
82
|
commonValue = val;
|
|
75
83
|
}
|
|
76
84
|
prevVal = input[cur];
|
|
77
85
|
}
|
|
78
86
|
}
|
|
87
|
+
// Now code the values.
|
|
88
|
+
// Write most common value.
|
|
79
89
|
output.setInt32(0, commonValue, true);
|
|
80
90
|
let numInts = input.length;
|
|
81
91
|
const arg = {
|
|
@@ -109,6 +119,7 @@ export function encodeIntegers(input, output) {
|
|
|
109
119
|
}
|
|
110
120
|
function decodeNHelper(N, arg) {
|
|
111
121
|
const codeByte = arg.src.getUint8(arg.codesIn++);
|
|
122
|
+
// console.log(`decodeNHelper(N=${N}): codeByte=${codeByte}`)
|
|
112
123
|
for (let i = 0; i != N; ++i) {
|
|
113
124
|
const x = (codeByte & (3 << (2 * i))) >> (2 * i);
|
|
114
125
|
switch (x) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"integers.js","sourceRoot":"","sources":["../../src/compression/integers.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"integers.js","sourceRoot":"","sources":["../../src/compression/integers.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,3 +1,20 @@
|
|
|
1
|
+
export declare const LZ4_MAX_INPUT_SIZE = 2113929216;
|
|
1
2
|
export declare function decompressBlock(src: Uint8Array, dst: Uint8Array, sIndex: number, sLength: number, dIndex: number): number;
|
|
2
|
-
|
|
3
|
+
/**
|
|
4
|
+
* Provides the maximum size that LZ4 compression may output in a "worst case" scenario (input data not compressible)
|
|
5
|
+
* This function is primarily useful for memory allocation purposes (destination buffer size).
|
|
6
|
+
*
|
|
7
|
+
* @param inputSize max supported value is LZ4_MAX_INPUT_SIZE
|
|
8
|
+
* @returns maximum output size in a "worst case" scenario or 0, if input size is incorrect (too large or negative)
|
|
9
|
+
*/
|
|
10
|
+
export declare function compressBound(inputSize: number): number;
|
|
11
|
+
/**
|
|
12
|
+
* compress src into dst
|
|
13
|
+
*
|
|
14
|
+
* @param src
|
|
15
|
+
* @param dst
|
|
16
|
+
* @param sIndex
|
|
17
|
+
* @param sLength
|
|
18
|
+
* @returns size of compressed data in dst
|
|
19
|
+
*/
|
|
3
20
|
export declare function compressBlock(src: Uint8Array, dst: Uint8Array, sIndex: number, sLength: number): number;
|
package/dist/compression/lz4.js
CHANGED
|
@@ -1,12 +1,28 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
1
|
+
//
|
|
2
|
+
// copied on 2025-11-30 from https://github.com/Benzinga/lz4js
|
|
3
|
+
// copyright 2018 John Chadwick, licensed under ISC
|
|
4
|
+
// with the following changes
|
|
5
|
+
// * compressBlock():
|
|
6
|
+
// * fix: return something when input which can't be compressed
|
|
7
|
+
// * fix: increase size of remaining literals to compatible with lz4.org's decompressBlock()
|
|
8
|
+
// * added comments
|
|
9
|
+
// * use capital letters for constants
|
|
10
|
+
// * remove hashtable argument
|
|
11
|
+
// * decompressBlock()
|
|
12
|
+
// * add additional restrictions from lz4.org to validate compressBlock()'s correctness
|
|
13
|
+
// Compression format parameters/constants.
|
|
14
|
+
const LZ4_MIN_MATCH = 4; // we are looking for matches of at least 4 bytes
|
|
15
|
+
const LZ4_MIN_LENGTH = 13; // don't compress when input is less than 13 bytes
|
|
3
16
|
const LZ4_SEARCH_LIMIT = 5;
|
|
4
17
|
const LZ4_SKIP_TRIGGER = 6;
|
|
5
|
-
const LZ4_HASH_TABLE_SIZE = 1 << 16;
|
|
18
|
+
const LZ4_HASH_TABLE_SIZE = 1 << 16; // hash table has space for uint32_t entries (64k entries)
|
|
19
|
+
export const LZ4_MAX_INPUT_SIZE = 0x7E000000; // 2 113 929 216 bytes
|
|
20
|
+
// Token constants.
|
|
6
21
|
const LZ4_ML_BITS = 4;
|
|
7
22
|
const LZ4_ML_MASK = (1 << LZ4_ML_BITS) - 1;
|
|
8
23
|
const LZ4_RUN_BITS = 4;
|
|
9
24
|
const LZ4_RUN_MASK = (1 << LZ4_RUN_BITS) - 1;
|
|
25
|
+
// Shared buffers
|
|
10
26
|
const hashTable = new Uint32Array(LZ4_HASH_TABLE_SIZE);
|
|
11
27
|
const util = {
|
|
12
28
|
hashU32: function hashU32(a) {
|
|
@@ -28,11 +44,15 @@ const util = {
|
|
|
28
44
|
};
|
|
29
45
|
export function decompressBlock(src, dst, sIndex, sLength, dIndex) {
|
|
30
46
|
let mLength, mOffset, sEnd, n, i;
|
|
47
|
+
// Setup initial state.
|
|
31
48
|
sEnd = sIndex + sLength;
|
|
49
|
+
// Consume entire input block.
|
|
32
50
|
while (sIndex < sEnd) {
|
|
33
51
|
var token = src[sIndex++];
|
|
52
|
+
// Copy literals.
|
|
34
53
|
var literalCount = (token >> 4);
|
|
35
54
|
if (literalCount > 0) {
|
|
55
|
+
// Parse length.
|
|
36
56
|
if (literalCount === 0xf) {
|
|
37
57
|
while (true) {
|
|
38
58
|
literalCount += src[sIndex];
|
|
@@ -41,10 +61,12 @@ export function decompressBlock(src, dst, sIndex, sLength, dIndex) {
|
|
|
41
61
|
}
|
|
42
62
|
}
|
|
43
63
|
}
|
|
64
|
+
// Copy literals
|
|
44
65
|
for (n = sIndex + literalCount; sIndex < n;) {
|
|
45
66
|
dst[dIndex++] = src[sIndex++];
|
|
46
67
|
}
|
|
47
68
|
}
|
|
69
|
+
// additional condition from lz4.c not needed for this implementation
|
|
48
70
|
{
|
|
49
71
|
const ip = sIndex - literalCount;
|
|
50
72
|
const op = dIndex - literalCount;
|
|
@@ -54,7 +76,11 @@ export function decompressBlock(src, dst, sIndex, sLength, dIndex) {
|
|
|
54
76
|
const iend = sEnd;
|
|
55
77
|
const MFLIMIT = 12;
|
|
56
78
|
const LASTLITERALS = 5;
|
|
79
|
+
// if end of output or input buffer
|
|
57
80
|
if ((cpy > oend - MFLIMIT) || (ip + length > iend - (2 + 1 + LASTLITERALS))) {
|
|
81
|
+
/* We must be on the last sequence (or invalid) because of the parsing limitations
|
|
82
|
+
* so check that we exactly consume the input and don't overrun the output buffer.
|
|
83
|
+
*/
|
|
58
84
|
if ((ip + length != iend) || (cpy > oend)) {
|
|
59
85
|
return -ip - 1;
|
|
60
86
|
}
|
|
@@ -63,8 +89,11 @@ export function decompressBlock(src, dst, sIndex, sLength, dIndex) {
|
|
|
63
89
|
if (sIndex >= sEnd) {
|
|
64
90
|
break;
|
|
65
91
|
}
|
|
92
|
+
// Copy match.
|
|
66
93
|
mLength = (token & 0xf);
|
|
94
|
+
// Parse offset.
|
|
67
95
|
mOffset = src[sIndex++] | (src[sIndex++] << 8);
|
|
96
|
+
// Parse length.
|
|
68
97
|
if (mLength === 0xf) {
|
|
69
98
|
while (true) {
|
|
70
99
|
mLength += src[sIndex];
|
|
@@ -74,6 +103,7 @@ export function decompressBlock(src, dst, sIndex, sLength, dIndex) {
|
|
|
74
103
|
}
|
|
75
104
|
}
|
|
76
105
|
mLength += LZ4_MIN_MATCH;
|
|
106
|
+
// Copy match.
|
|
77
107
|
for (i = dIndex - mOffset, n = i + mLength; i < n;) {
|
|
78
108
|
dst[dIndex++] = dst[i++] | 0;
|
|
79
109
|
}
|
|
@@ -81,69 +111,121 @@ export function decompressBlock(src, dst, sIndex, sLength, dIndex) {
|
|
|
81
111
|
return dIndex;
|
|
82
112
|
}
|
|
83
113
|
;
|
|
84
|
-
|
|
85
|
-
|
|
114
|
+
/**
|
|
115
|
+
* Provides the maximum size that LZ4 compression may output in a "worst case" scenario (input data not compressible)
|
|
116
|
+
* This function is primarily useful for memory allocation purposes (destination buffer size).
|
|
117
|
+
*
|
|
118
|
+
* @param inputSize max supported value is LZ4_MAX_INPUT_SIZE
|
|
119
|
+
* @returns maximum output size in a "worst case" scenario or 0, if input size is incorrect (too large or negative)
|
|
120
|
+
*/
|
|
121
|
+
export function compressBound(inputSize) {
|
|
122
|
+
if (inputSize > LZ4_MAX_INPUT_SIZE) {
|
|
123
|
+
return 0;
|
|
124
|
+
}
|
|
125
|
+
// (unsigned)(inputSize) > (unsigned)LZ4_MAX_INPUT_SIZE ? 0 : (isize) + ((isize)/255) + 16)
|
|
126
|
+
return (inputSize + (inputSize / 255) + 16) | 0;
|
|
86
127
|
}
|
|
87
128
|
;
|
|
129
|
+
/**
|
|
130
|
+
* compress src into dst
|
|
131
|
+
*
|
|
132
|
+
* @param src
|
|
133
|
+
* @param dst
|
|
134
|
+
* @param sIndex
|
|
135
|
+
* @param sLength
|
|
136
|
+
* @returns size of compressed data in dst
|
|
137
|
+
*/
|
|
88
138
|
export function compressBlock(src, dst, sIndex, sLength) {
|
|
89
|
-
var mIndex, mAnchor, mLength, mOffset;
|
|
139
|
+
var mIndex, mAnchor, mLength, mOffset; //, mStep = 1
|
|
90
140
|
var literalCount, dIndex, sEnd, n;
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
141
|
+
// Setup initial state.
|
|
142
|
+
dIndex = 0; // destination index for output
|
|
143
|
+
sEnd = sLength + sIndex; // end of source
|
|
144
|
+
mAnchor = sIndex; // match anchor: position after which there wasn't a match yet
|
|
145
|
+
// Process only if block is large enough.
|
|
94
146
|
if (sLength >= LZ4_MIN_LENGTH) {
|
|
95
147
|
hashTable.fill(0);
|
|
96
148
|
let searchMatchNb = (1 << LZ4_SKIP_TRIGGER) + 3;
|
|
149
|
+
// Consume until last n literals (Lz4 spec limitation.)
|
|
150
|
+
// while (sIndex + LZ4_MIN_MATCH < sEnd - LZ4_SEARCH_LIMIT) { // 4 5 2 = 11
|
|
97
151
|
while (sIndex + LZ4_MIN_MATCH < sEnd - LZ4_SEARCH_LIMIT - 2) {
|
|
98
152
|
var seq = util.readU32(src, sIndex);
|
|
153
|
+
// console.log(`step=${mStep}, searchMatchNb=${searchMatchNb}, seq[${sIndex.toString().padStart(4, ' ')}] = 0x${seq.toString(16).padStart(8, '0')}`)
|
|
99
154
|
var hash = util.hashU32(seq) >>> 0;
|
|
155
|
+
// Crush hash to 16 bits.
|
|
100
156
|
hash = ((hash >> 16) ^ hash) >>> 0 & 0xffff;
|
|
157
|
+
// Look for a match in the hashtable. NOTE: remove one; see below.
|
|
101
158
|
mIndex = hashTable[hash] - 1;
|
|
159
|
+
// Put pos in hash table. NOTE: add one so that zero = invalid.
|
|
102
160
|
hashTable[hash] = sIndex + 1;
|
|
103
|
-
if (
|
|
104
|
-
|
|
105
|
-
|
|
161
|
+
// Determine if there is a match (within range.)
|
|
162
|
+
// continue looking for a match when
|
|
163
|
+
if (mIndex < 0 // seq not found in hashtable
|
|
164
|
+
|| ((sIndex - mIndex) >>> 16) > 0 // OR distance between match and source exceeds 16 bits
|
|
165
|
+
|| util.readU32(src, mIndex) !== seq) // OR value referenced by hashtable actually differs
|
|
166
|
+
{
|
|
167
|
+
// speed up search the longer the search takes
|
|
106
168
|
const mStep = searchMatchNb++ >> LZ4_SKIP_TRIGGER;
|
|
107
169
|
sIndex += mStep;
|
|
108
|
-
continue;
|
|
170
|
+
continue; // keep looking for match
|
|
109
171
|
}
|
|
172
|
+
// console.log(`matched sequence with earlier one at ${mIndex}`)
|
|
110
173
|
searchMatchNb = (1 << LZ4_SKIP_TRIGGER) + 3;
|
|
111
|
-
|
|
112
|
-
|
|
174
|
+
// Calculate literal count and offset.
|
|
175
|
+
literalCount = sIndex - mAnchor; // number of bytes since the last match
|
|
176
|
+
mOffset = sIndex - mIndex; // offset from current source position to the matched position
|
|
177
|
+
// We've already matched one word, so get that out of the way.
|
|
113
178
|
sIndex += LZ4_MIN_MATCH;
|
|
114
179
|
mIndex += LZ4_MIN_MATCH;
|
|
115
|
-
|
|
180
|
+
// Determine match length.
|
|
181
|
+
// N.B.: mLength does not include minMatch, Lz4 adds it back in decoding.
|
|
182
|
+
// console.log(`compare match at mIndex=${mIndex} with at sIndex=${sIndex}`)
|
|
183
|
+
mLength = sIndex; // sIndex when starting to calculate length
|
|
116
184
|
while (sIndex < sEnd - LZ4_SEARCH_LIMIT && src[sIndex] === src[mIndex]) {
|
|
117
185
|
sIndex++;
|
|
118
186
|
mIndex++;
|
|
119
187
|
}
|
|
120
|
-
|
|
188
|
+
// console.log(`sIndex=${sIndex}, mIndex=${mIndex}`)
|
|
189
|
+
mLength = sIndex - mLength; // sIndex after calculating length - sIndex when starting calculating length
|
|
190
|
+
// write token containing the lengths
|
|
191
|
+
// console.log(`literalsToFollow := mLength ${mLength} < mlMask ${LZ4_ML_MASK} ? mLength : mlMask`)
|
|
121
192
|
var literalsToFollow = mLength < LZ4_ML_MASK ? mLength : LZ4_ML_MASK;
|
|
122
193
|
if (literalCount >= LZ4_RUN_MASK) {
|
|
194
|
+
// console.log(`dst[${dIndex}] := token: 0x${LZ4_RUN_MASK.toString(16)}${literalsToFollow.toString(16)}`)
|
|
123
195
|
dst[dIndex++] = (LZ4_RUN_MASK << LZ4_ML_BITS) + literalsToFollow;
|
|
124
196
|
for (n = literalCount - LZ4_RUN_MASK; n >= 0xff; n -= 0xff) {
|
|
197
|
+
// console.log(`dst[${dIndex}] := token: 0xff`)
|
|
125
198
|
dst[dIndex++] = 0xff;
|
|
126
199
|
}
|
|
200
|
+
// console.log(`dst[${dIndex}] := token: 0x${n.toString(16).padStart(2, '0')}`)
|
|
127
201
|
dst[dIndex++] = n;
|
|
128
202
|
}
|
|
129
203
|
else {
|
|
204
|
+
// console.log(`dst[${dIndex}] := token: ${literalCount.toString(16)} / ${literalsToFollow.toString(16)}`)
|
|
130
205
|
dst[dIndex++] = (literalCount << LZ4_ML_BITS) + literalsToFollow;
|
|
131
206
|
}
|
|
207
|
+
// copy literals inside which the match was found
|
|
132
208
|
for (var i = 0; i < literalCount; i++) {
|
|
133
209
|
dst[dIndex++] = src[mAnchor + i];
|
|
134
210
|
}
|
|
211
|
+
// write offset where to find the match relative to current position
|
|
135
212
|
dst[dIndex++] = mOffset;
|
|
136
213
|
dst[dIndex++] = (mOffset >> 8);
|
|
214
|
+
// write length of the match
|
|
137
215
|
if (mLength >= LZ4_ML_MASK) {
|
|
138
216
|
for (n = mLength - LZ4_ML_MASK; n >= 0xff; n -= 0xff) {
|
|
139
217
|
dst[dIndex++] = 0xff;
|
|
140
218
|
}
|
|
141
219
|
dst[dIndex++] = n;
|
|
142
220
|
}
|
|
221
|
+
// move the anchor
|
|
143
222
|
mAnchor = sIndex;
|
|
144
223
|
}
|
|
145
224
|
}
|
|
225
|
+
// write remaining literals for which no match was found
|
|
226
|
+
// write token with the length
|
|
146
227
|
literalCount = sEnd - mAnchor;
|
|
228
|
+
// console.log(`literalCount=${literalCount}`)
|
|
147
229
|
if (literalCount >= LZ4_RUN_MASK) {
|
|
148
230
|
dst[dIndex++] = (LZ4_RUN_MASK << LZ4_ML_BITS);
|
|
149
231
|
for (n = literalCount - LZ4_RUN_MASK; n >= 0xff; n -= 0xff) {
|
|
@@ -154,6 +236,7 @@ export function compressBlock(src, dst, sIndex, sLength) {
|
|
|
154
236
|
else {
|
|
155
237
|
dst[dIndex++] = (literalCount << LZ4_ML_BITS);
|
|
156
238
|
}
|
|
239
|
+
// copy the remaining literals
|
|
157
240
|
sIndex = mAnchor;
|
|
158
241
|
while (sIndex < sEnd) {
|
|
159
242
|
dst[dIndex++] = src[sIndex++];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"lz4.js","sourceRoot":"","sources":["../../src/compression/lz4.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"lz4.js","sourceRoot":"","sources":["../../src/compression/lz4.ts"],"names":[],"mappings":"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"}
|
package/dist/crate/BootStrap.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BootStrap.js","sourceRoot":"","sources":["../../src/crate/BootStrap.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,SAAS;IAUlB,YAAY,MAAe;QACvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;YACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;YACjC,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC7B,MAAM,KAAK,CAAC,4DAA4D,CAAC,CAAA;YAC7E,CAAC;YACD,IAAI,CAAC,OAAO,GAAG;gBACX,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACxB,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACxB,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;aAC3B,CAAA;YACD,MAAM,CAAC,MAAM,IAAI,CAAC,CAAA;YAClB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;
|
|
1
|
+
{"version":3,"file":"BootStrap.js","sourceRoot":"","sources":["../../src/crate/BootStrap.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,SAAS;IAUlB,YAAY,MAAe;QACvB,IAAI,MAAM,KAAK,SAAS,EAAE,CAAC;YACvB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAA;YACpB,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAA;YACjC,IAAI,IAAI,CAAC,MAAM,KAAK,UAAU,EAAE,CAAC;gBAC7B,MAAM,KAAK,CAAC,4DAA4D,CAAC,CAAA;YAC7E,CAAC;YACD,IAAI,CAAC,OAAO,GAAG;gBACX,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACxB,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;gBACxB,KAAK,EAAE,MAAM,CAAC,QAAQ,EAAE;aAC3B,CAAA;YACD,MAAM,CAAC,MAAM,IAAI,CAAC,CAAA;YAClB,IAAI,CAAC,SAAS,GAAG,MAAM,CAAC,SAAS,EAAE,CAAA;YACnC,8CAA8C;YAC9C,0CAA0C;QAC9C,CAAC;aAAM,CAAC;YACJ,IAAI,CAAC,MAAM,GAAG,UAAU,CAAA;YACxB,IAAI,CAAC,OAAO,GAAG;gBACX,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,CAAC;gBACR,KAAK,EAAE,CAAC;aACX,CAAA;YACD,IAAI,CAAC,SAAS,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAA;QAClC,CAAC;IACL,CAAC;IACD,IAAI,CAAC,MAAc;QACf,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;IACnB,CAAC;IACD,SAAS,CAAC,MAAc;QACpB,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;QAC/B,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrC,MAAM,CAAC,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,KAAK,CAAC,CAAA;QACrC,MAAM,CAAC,WAAW,CAAC,YAAY,CAAC,CAAA;QAChC,MAAM,CAAC,WAAW,CAAC,IAAI,CAAC,SAAS,CAAC,CAAA;IACtC,CAAC;IAED,OAAO;QACH,IAAI,CAAC,MAAO,CAAC,MAAM,GAAG,IAAI,CAAC,SAAS,CAAA;IACxC,CAAC;CAEJ"}
|
package/dist/crate/Crate.d.ts
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { BootStrap } from "./BootStrap";
|
|
2
2
|
import type { Reader } from "./Reader";
|
|
3
3
|
import { TableOfContents } from "./TableOfContents";
|
|
4
|
-
import { UsdNode } from "
|
|
4
|
+
import { UsdNode } from "../nodes/usd/UsdNode";
|
|
5
5
|
import { Tokens } from "./Tokens";
|
|
6
6
|
import { Fields } from "./Fields";
|
|
7
7
|
import { Paths } from "./Paths";
|
|
@@ -22,6 +22,13 @@ export declare class Crate {
|
|
|
22
22
|
reader: Reader;
|
|
23
23
|
writer: Writer;
|
|
24
24
|
constructor(reader?: Reader);
|
|
25
|
+
/**
|
|
26
|
+
* Serialize root into this.writer
|
|
27
|
+
*
|
|
28
|
+
* NOTE: not idempotent
|
|
29
|
+
*
|
|
30
|
+
* @param root
|
|
31
|
+
*/
|
|
25
32
|
serialize(root: UsdNode): void;
|
|
26
33
|
forEachField(fieldSetIndex: number, block: (name: string, value: ValueRep) => void): void;
|
|
27
34
|
private buildNodeTree;
|
package/dist/crate/Crate.js
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { BootStrap } from "./BootStrap";
|
|
2
2
|
import { TableOfContents } from "./TableOfContents";
|
|
3
|
-
import { UsdNode } from "
|
|
3
|
+
import { UsdNode } from "../nodes/usd/UsdNode";
|
|
4
4
|
import { Tokens } from "./Tokens";
|
|
5
5
|
import { Fields } from "./Fields";
|
|
6
6
|
import { JUMP_NEXT_IS_CHILD_NO_SIBLINGS, JUMP_NO_CHILD_NEXT_IS_SIBLING, JUMP_NO_CHILD_NO_SIBLINGS, Paths } from "./Paths";
|
|
@@ -30,13 +30,25 @@ export class Crate {
|
|
|
30
30
|
this.paths = new Paths(reader);
|
|
31
31
|
this.toc.seek(SectionName.SPECS);
|
|
32
32
|
this.specs = new Specs(reader);
|
|
33
|
+
// build node tree
|
|
33
34
|
this.paths._nodes = new Array(this.paths.num_nodes);
|
|
35
|
+
// for(let i = 0; i<this.paths.pathIndexes.length; ++i) {
|
|
36
|
+
// const idx = this.paths.pathIndexes[i]
|
|
37
|
+
// let tkn = this.paths.tokenIndexes[i]
|
|
38
|
+
// if (tkn < 0) {
|
|
39
|
+
// tkn = -tkn
|
|
40
|
+
// }
|
|
41
|
+
// const jmp = this.paths.jumps[i]
|
|
42
|
+
// console.log(` ${i} ${idx} ${this.tokens.get(tkn)} ${jmp} `)
|
|
43
|
+
// }
|
|
34
44
|
const node = this.buildNodeTree({
|
|
35
45
|
pathIndexes: this.paths.pathIndexes,
|
|
36
46
|
tokenIndexes: this.paths.tokenIndexes,
|
|
37
47
|
jumps: this.paths.jumps,
|
|
38
48
|
depth: 0
|
|
39
49
|
});
|
|
50
|
+
// console.log(`XXX: this.paths._nodes.length=${this.paths._nodes.length}, this.specs.pathIndexes.length=${this.specs.pathIndexes.length}, this.specs.fieldsetIndexes.length=${this.specs.fieldsetIndexes.length}, this.specs.specTypeIndexes.length=${this.specs.specTypeIndexes.length}`)
|
|
51
|
+
// move this into buildNodeTree so that we can directly instantiate classes like Xform, Mesh, ...
|
|
40
52
|
for (let i = 0; i < this.specs.pathIndexes.length; ++i) {
|
|
41
53
|
if (this.paths._nodes[i] === undefined) {
|
|
42
54
|
for (let j = 0; j < this.paths._nodes.length; ++j) {
|
|
@@ -63,12 +75,20 @@ export class Crate {
|
|
|
63
75
|
this.specs = new Specs();
|
|
64
76
|
}
|
|
65
77
|
}
|
|
78
|
+
/**
|
|
79
|
+
* Serialize root into this.writer
|
|
80
|
+
*
|
|
81
|
+
* NOTE: not idempotent
|
|
82
|
+
*
|
|
83
|
+
* @param root
|
|
84
|
+
*/
|
|
66
85
|
serialize(root) {
|
|
67
|
-
this.strings.add(";-)");
|
|
86
|
+
this.strings.add(";-)"); // this seems to be by convention
|
|
68
87
|
const writer = this.writer;
|
|
69
|
-
this.bootstrap.skip(writer);
|
|
88
|
+
this.bootstrap.skip(writer); // leave room for bootstrap
|
|
70
89
|
this.paths.encode(this.tokens, root);
|
|
71
90
|
root.encode();
|
|
91
|
+
// WRITE SECTIONS
|
|
72
92
|
let start, size;
|
|
73
93
|
start = writer.tell();
|
|
74
94
|
this.tokens.serialize(writer);
|
|
@@ -124,35 +144,47 @@ export class Crate {
|
|
|
124
144
|
else {
|
|
125
145
|
isPrimPropertyPath = true;
|
|
126
146
|
}
|
|
147
|
+
// console.log(`thisIndex = ${thisIndex}, pathIndexes.size = ${arg.pathIndexes.length}`)
|
|
127
148
|
if (parentNode === undefined) {
|
|
128
149
|
if (thisIndex >= arg.pathIndexes.length) {
|
|
129
150
|
throw Error("yikes: Index exceeds pathIndexes.size()");
|
|
130
151
|
}
|
|
131
152
|
root = parentNode = new UsdNode(this, undefined, idx, "/", true);
|
|
132
153
|
root.depth = 0;
|
|
154
|
+
// console.log(`buildNodeTree(): this.paths._nodes![${idx}] := /`)
|
|
133
155
|
this.paths._nodes[idx] = parentNode;
|
|
134
156
|
}
|
|
135
157
|
else {
|
|
136
158
|
if (thisIndex >= arg.tokenIndexes.length) {
|
|
137
159
|
throw Error(`Index ${thisIndex} exceeds tokenIndexes.length = ${arg.tokenIndexes.length}. $}`);
|
|
138
160
|
}
|
|
161
|
+
// console.log(`tokenIndex = ${tokenIndex}, _tokens.size = ${this.tokens!.length}`)
|
|
139
162
|
const elemToken = this.tokens.get(tokenIndex);
|
|
140
163
|
if (this.paths._nodes[idx] !== undefined) {
|
|
141
164
|
console.warn(`Crate.buildNodeTree(): node[${idx}] is already set at ${parentNode.getFullPathName()}, can't set ${elemToken}, already set to ${this.paths._nodes[idx].getFullPathName()}`);
|
|
165
|
+
// throw Error(`yikes: node[${idx}] is already set at ${parentNode.getFullPathName()}, can't set ${elemToken}, already set to ${this.paths._nodes![idx].name}`)
|
|
142
166
|
}
|
|
143
167
|
else {
|
|
144
168
|
this.paths._nodes[idx] = new UsdNode(this, parentNode, idx, elemToken, isPrimPropertyPath);
|
|
145
169
|
this.paths._nodes[idx].depth = parentNode.depth + 1;
|
|
170
|
+
// console.log(`buildNodeTree(): this.paths._nodes![${idx}] := ${" ".repeat(parentNode.depth!+1)}${elemToken}`)
|
|
146
171
|
}
|
|
147
172
|
}
|
|
173
|
+
// console.log(`${idx} ${" ".repeat(this.paths._nodes![idx].depth!)} ${this.paths._nodes![idx].name}`)
|
|
174
|
+
// if (this.tokens[tokenIndex] === undefined) {
|
|
175
|
+
// console.log(`BUMMER at tokenIndex ${tokenIndex}`)
|
|
176
|
+
// console.log(this.tokens)
|
|
177
|
+
// }
|
|
148
178
|
hasChild = jump > 0 || jump === -1;
|
|
149
179
|
hasSibling = jump >= 0;
|
|
150
180
|
if (hasChild) {
|
|
151
181
|
if (hasSibling) {
|
|
152
182
|
const siblingIndex = thisIndex + jump;
|
|
183
|
+
// ++arg.depth
|
|
153
184
|
this.buildNodeTree(arg, parentNode, siblingIndex);
|
|
185
|
+
// --arg.depth
|
|
154
186
|
}
|
|
155
|
-
parentNode = this.paths._nodes[idx];
|
|
187
|
+
parentNode = this.paths._nodes[idx]; // reset parent path
|
|
156
188
|
}
|
|
157
189
|
}
|
|
158
190
|
return root;
|
|
@@ -182,10 +214,23 @@ export class Crate {
|
|
|
182
214
|
const fieldset_index = this.specs.fieldsetIndexes[idx];
|
|
183
215
|
const spec_type = this.specs.specTypeIndexes[idx];
|
|
184
216
|
let fields = "";
|
|
217
|
+
// console.log(`fieldset indices lenght: ${this.fieldsets.fieldset_indices.length}`)
|
|
185
218
|
for (let i = fieldset_index; this.fieldsets.fieldset_indices[i] >= 0; ++i) {
|
|
186
219
|
const fieldIndex = this.fieldsets.fieldset_indices[i];
|
|
187
220
|
fields = `${fields}${fieldIndex},`;
|
|
221
|
+
// console.log(` fieldIndex=${fieldIndex}`)
|
|
222
|
+
// console.log(this.fields)
|
|
223
|
+
// const field = this.fields.fields![fieldIndex]
|
|
224
|
+
// const token = this.tokens.get(field.tokenIndex)
|
|
225
|
+
// fields = `${fields}${token},`
|
|
188
226
|
}
|
|
227
|
+
// for (let j = fieldset_index!; this.fieldsets.fieldset_indices[j] >= 0; ++j) {
|
|
228
|
+
// const fieldIndex = this.fieldsets.fieldset_indices[i]
|
|
229
|
+
// // const field = this.fields.fields![fieldIndex]
|
|
230
|
+
// // this.fields.tokenIndices[f]
|
|
231
|
+
// // const token = this.tokens.get(field.tokenIndex)
|
|
232
|
+
// fields = `${fieldIndex};`
|
|
233
|
+
// }
|
|
189
234
|
console.log(` ${i} ${node.index} ${" ".repeat(node.depth)} ${node.name} (${jumpName}), ${SpecType[spec_type]}, fields @ ${fieldset_index}: ${fields}`);
|
|
190
235
|
}
|
|
191
236
|
}
|
package/dist/crate/Crate.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Crate.js","sourceRoot":"","sources":["../../src/crate/Crate.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAA;AAEvC,OAAO,EAAE,eAAe,EAAE,MAAM,mBAAmB,CAAA;AACnD,OAAO,EAAE,OAAO,EAAE,MAAM,
|
|
1
|
+
{"version":3,"file":"Crate.js","sourceRoot":"","sources":["../../src/crate/Crate.ts"],"names":[],"mappings":"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"}
|
package/dist/crate/Fields.d.ts
CHANGED
|
@@ -6,7 +6,7 @@ import type { Strings } from "./Strings";
|
|
|
6
6
|
import type { Tokens } from "./Tokens";
|
|
7
7
|
import type { Variability } from "./Variability";
|
|
8
8
|
import { Writer } from "./Writer.js";
|
|
9
|
-
import { UsdNode } from "
|
|
9
|
+
import { UsdNode } from "../nodes/usd/UsdNode.js";
|
|
10
10
|
export interface ListOp<T> {
|
|
11
11
|
isExplicit?: boolean;
|
|
12
12
|
explicit?: T[];
|