@carbonenginejs/runtime-resource 0.1.0 → 0.7.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/FORMAT-PROVENANCE.md +14 -5
- package/README.md +537 -241
- package/dist/CjsMotherLode.js +1244 -29
- package/dist/CjsMotherLode.js.map +1 -1
- package/dist/CjsResMan.js +2537 -272
- package/dist/CjsResMan.js.map +1 -1
- package/dist/CjsResource.js +218 -18
- package/dist/CjsResource.js.map +1 -1
- package/dist/format/CjsBlueReader.js +269 -0
- package/dist/format/CjsBlueReader.js.map +1 -0
- package/dist/format/CjsFormat.js +44 -30
- package/dist/format/CjsFormat.js.map +1 -1
- package/dist/format/CjsReader.js +18 -0
- package/dist/format/CjsReader.js.map +1 -0
- package/dist/format/CjsResourceProbe.js +12 -4
- package/dist/format/CjsResourceProbe.js.map +1 -1
- package/dist/formats/black/CjsBlackFormat.js +12 -6
- package/dist/formats/black/CjsBlackFormat.js.map +1 -1
- package/dist/formats/black/core/CjsBlackReader.js +27 -148
- package/dist/formats/black/core/CjsBlackReader.js.map +1 -1
- package/dist/formats/bnk/CjsBnkFormat.js +140 -147
- package/dist/formats/bnk/CjsBnkFormat.js.map +1 -1
- package/dist/formats/bnk/core/graph.js +140 -0
- package/dist/formats/bnk/core/graph.js.map +1 -0
- package/dist/formats/bnk/core/helpers.js +58 -3
- package/dist/formats/bnk/core/helpers.js.map +1 -1
- package/dist/formats/bnk/core/musicNodes.js +521 -0
- package/dist/formats/bnk/core/musicNodes.js.map +1 -0
- package/dist/formats/bnk/index.js +0 -1
- package/dist/formats/bnk/index.js.map +1 -1
- package/dist/formats/cmf/CjsCmfFormat.js +14 -8
- package/dist/formats/cmf/CjsCmfFormat.js.map +1 -1
- package/dist/formats/dds/CjsDdsFormat.js +12 -6
- package/dist/formats/dds/CjsDdsFormat.js.map +1 -1
- package/dist/formats/fbx/CjsFbxFormat.js +12 -6
- package/dist/formats/fbx/CjsFbxFormat.js.map +1 -1
- package/dist/formats/flac/CjsFlacFormat.js +10 -4
- package/dist/formats/flac/CjsFlacFormat.js.map +1 -1
- package/dist/formats/gif/CjsGifFormat.js +11 -5
- package/dist/formats/gif/CjsGifFormat.js.map +1 -1
- package/dist/formats/gltf/CjsGltfFormat.js +12 -6
- package/dist/formats/gltf/CjsGltfFormat.js.map +1 -1
- package/dist/formats/jpeg/CjsJpegFormat.js +11 -5
- package/dist/formats/jpeg/CjsJpegFormat.js.map +1 -1
- package/dist/formats/mp3/CjsMp3Format.js +11 -5
- package/dist/formats/mp3/CjsMp3Format.js.map +1 -1
- package/dist/formats/mp4/CjsMp4Format.js +10 -4
- package/dist/formats/mp4/CjsMp4Format.js.map +1 -1
- package/dist/formats/obj/CjsObjFormat.js +12 -6
- package/dist/formats/obj/CjsObjFormat.js.map +1 -1
- package/dist/formats/ogg/CjsOggFormat.js +9 -3
- package/dist/formats/ogg/CjsOggFormat.js.map +1 -1
- package/dist/formats/png/CjsPngFormat.js +11 -5
- package/dist/formats/png/CjsPngFormat.js.map +1 -1
- package/dist/formats/red/CjsRedFormat.js +19 -5
- package/dist/formats/red/CjsRedFormat.js.map +1 -1
- package/dist/formats/red/core/CjsRedReader.js +63 -70
- package/dist/formats/red/core/CjsRedReader.js.map +1 -1
- package/dist/formats/red/core/helpers.js +3 -0
- package/dist/formats/red/core/helpers.js.map +1 -1
- package/dist/formats/stl/CjsStlFormat.js +77 -16
- package/dist/formats/stl/CjsStlFormat.js.map +1 -1
- package/dist/formats/stl/core/helpers.js +4 -0
- package/dist/formats/stl/core/helpers.js.map +1 -1
- package/dist/formats/stl/core/stl.js +100 -15
- package/dist/formats/stl/core/stl.js.map +1 -1
- package/dist/formats/tga/CjsTgaFormat.js +11 -5
- package/dist/formats/tga/CjsTgaFormat.js.map +1 -1
- package/dist/formats/wav/CjsWavFormat.js +11 -5
- package/dist/formats/wav/CjsWavFormat.js.map +1 -1
- package/dist/formats/webm/CjsWebmFormat.js +10 -4
- package/dist/formats/webm/CjsWebmFormat.js.map +1 -1
- package/dist/formats/webp/CjsWebpFormat.js +9 -3
- package/dist/formats/webp/CjsWebpFormat.js.map +1 -1
- package/dist/formats/wem/CjsWemFormat.js +50 -6
- package/dist/formats/wem/CjsWemFormat.js.map +1 -1
- package/dist/formats/wem/core/helpers.js +84 -3
- package/dist/formats/wem/core/helpers.js.map +1 -1
- package/dist/formats/wem/core/ptadpcm.js +77 -0
- package/dist/formats/wem/core/ptadpcm.js.map +1 -0
- package/dist/formats/wem/core/resolve.js +121 -0
- package/dist/formats/wem/core/resolve.js.map +1 -0
- package/dist/formats/yaml/CjsYamlFormat.js +11 -5
- package/dist/formats/yaml/CjsYamlFormat.js.map +1 -1
- package/dist/formats/yaml/core/CjsYamlReader.js +3 -2
- package/dist/formats/yaml/core/CjsYamlReader.js.map +1 -1
- package/dist/index.js +28 -32
- package/dist/index.js.map +1 -1
- package/dist/{generated/resources → resources}/AudioGeometryResData.js +2 -2
- package/dist/resources/AudioGeometryResData.js.map +1 -0
- package/dist/{generated/resources → resources}/GStateBindingCallbackData.js +2 -2
- package/dist/resources/GStateBindingCallbackData.js.map +1 -0
- package/dist/{generated/resources → resources}/MeshDecalData.js +2 -2
- package/dist/resources/MeshDecalData.js.map +1 -0
- package/dist/{generated/resources → resources}/MeshDecalLodData.js +2 -2
- package/dist/resources/MeshDecalLodData.js.map +1 -0
- package/dist/resources/Tr2GrannyIntersectionResult.js +60 -0
- package/dist/resources/Tr2GrannyIntersectionResult.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2MaterialArea.js +2 -2
- package/dist/resources/Tr2MaterialArea.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2MaterialMesh.js +2 -2
- package/dist/resources/Tr2MaterialMesh.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2MaterialRes.js +2 -2
- package/dist/resources/Tr2MaterialRes.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2ShaderPermutation.js +2 -2
- package/dist/resources/Tr2ShaderPermutation.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TextureLodManager.js +50 -10
- package/dist/resources/Tr2TextureLodManager.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TextureLodUpdateRequest.js +2 -2
- package/dist/resources/Tr2TextureLodUpdateRequest.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TexturePackChannel.js +2 -2
- package/dist/resources/Tr2TexturePackChannel.js.map +1 -0
- package/dist/resources/Tr2TexturePipeline.js +68 -0
- package/dist/resources/Tr2TexturePipeline.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TexturePipelineParams.js +2 -2
- package/dist/resources/Tr2TexturePipelineParams.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TexturePipelineStepCompress.js +3 -3
- package/dist/resources/Tr2TexturePipelineStepCompress.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TexturePipelineStepLimitSize.js +2 -2
- package/dist/resources/Tr2TexturePipelineStepLimitSize.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TexturePipelineStepLoad.js +2 -2
- package/dist/resources/Tr2TexturePipelineStepLoad.js.map +1 -0
- package/dist/{generated/resources → resources}/Tr2TexturePipelineStepPack.js +3 -3
- package/dist/resources/Tr2TexturePipelineStepPack.js.map +1 -0
- package/dist/{generated/resources → resources}/TriGeometryResAreaData.js +2 -2
- package/dist/resources/TriGeometryResAreaData.js.map +1 -0
- package/dist/{generated/resources → resources}/TriGeometryResJointData.js +2 -2
- package/dist/resources/TriGeometryResJointData.js.map +1 -0
- package/dist/{generated/resources → resources}/TriGeometryResLodData.js +2 -2
- package/dist/resources/TriGeometryResLodData.js.map +1 -0
- package/dist/{generated/resources → resources}/TriGeometryResMeshData.js +2 -2
- package/dist/resources/TriGeometryResMeshData.js.map +1 -0
- package/dist/{generated/resources → resources}/TriGeometryResSkeletonData.js +2 -2
- package/dist/resources/TriGeometryResSkeletonData.js.map +1 -0
- package/dist/{generated/resources → resources}/TriJointBinding.js +2 -2
- package/dist/resources/TriJointBinding.js.map +1 -0
- package/dist/{generated/resources → resources}/TriMorphTargetGeometryConstants.js +2 -2
- package/dist/resources/TriMorphTargetGeometryConstants.js.map +1 -0
- package/dist/{generated/resources → resources}/TriRtGeometryConstants.js +2 -2
- package/dist/resources/TriRtGeometryConstants.js.map +1 -0
- package/dist/resources/enums.js.map +1 -0
- package/dist/resources/texturePipelineBehavior.js +320 -0
- package/dist/resources/texturePipelineBehavior.js.map +1 -0
- package/format-notices/bnk/NOTICE +7 -4
- package/package.json +51 -51
- package/resource-lifecycle.md +262 -70
- package/dist/generated/resources/AudioGeometryResData.js.map +0 -1
- package/dist/generated/resources/CmfVertexReader.js +0 -46
- package/dist/generated/resources/CmfVertexReader.js.map +0 -1
- package/dist/generated/resources/GStateBindingCallbackData.js.map +0 -1
- package/dist/generated/resources/MeshDecalData.js.map +0 -1
- package/dist/generated/resources/MeshDecalLodData.js.map +0 -1
- package/dist/generated/resources/Tr2AsyncSave.js +0 -46
- package/dist/generated/resources/Tr2AsyncSave.js.map +0 -1
- package/dist/generated/resources/Tr2CmfContents.js +0 -37
- package/dist/generated/resources/Tr2CmfContents.js.map +0 -1
- package/dist/generated/resources/Tr2GrannyIntersectionResult.js +0 -58
- package/dist/generated/resources/Tr2GrannyIntersectionResult.js.map +0 -1
- package/dist/generated/resources/Tr2LoadPrepareFence.js +0 -37
- package/dist/generated/resources/Tr2LoadPrepareFence.js.map +0 -1
- package/dist/generated/resources/Tr2MaterialArea.js.map +0 -1
- package/dist/generated/resources/Tr2MaterialMesh.js.map +0 -1
- package/dist/generated/resources/Tr2MaterialRes.js.map +0 -1
- package/dist/generated/resources/Tr2ShaderPermutation.js.map +0 -1
- package/dist/generated/resources/Tr2TextureLodManager.js.map +0 -1
- package/dist/generated/resources/Tr2TextureLodUpdateRequest.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePackChannel.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePipeline.js +0 -44
- package/dist/generated/resources/Tr2TexturePipeline.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePipelineParams.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePipelineStepCompress.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePipelineStepLimitSize.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePipelineStepLoad.js.map +0 -1
- package/dist/generated/resources/Tr2TexturePipelineStepPack.js.map +0 -1
- package/dist/generated/resources/TriGeometryResAreaData.js.map +0 -1
- package/dist/generated/resources/TriGeometryResJointData.js.map +0 -1
- package/dist/generated/resources/TriGeometryResLodData.js.map +0 -1
- package/dist/generated/resources/TriGeometryResMeshData.js.map +0 -1
- package/dist/generated/resources/TriGeometryResSkeletonData.js.map +0 -1
- package/dist/generated/resources/TriJointBinding.js.map +0 -1
- package/dist/generated/resources/TriMorphTargetGeometryConstants.js.map +0 -1
- package/dist/generated/resources/TriRtGeometryConstants.js.map +0 -1
- package/dist/generated/resources/enums.js.map +0 -1
- package/dist/generated/resources/index.js +0 -32
- package/dist/generated/resources/index.js.map +0 -1
- /package/dist/{generated/resources → resources}/enums.js +0 -0
package/resource-lifecycle.md
CHANGED
|
@@ -48,13 +48,16 @@ Current state meanings:
|
|
|
48
48
|
|
|
49
49
|
- `EMPTY`: resource identity exists, but no payload has been read.
|
|
50
50
|
- `REQUESTED`: the resource is waiting on a queued or shared source load.
|
|
51
|
-
- `LOADING`: source bytes are available and
|
|
51
|
+
- `LOADING`: source bytes are available and CPU reader/format work is active.
|
|
52
52
|
- `LOADED`: CPU payload or hydrated object graph exists.
|
|
53
53
|
- `PREPARING`: an engine adapter is realizing backend-owned resources.
|
|
54
54
|
- `PREPARED`: preparation completed successfully and the resource is usable.
|
|
55
|
-
- `FAILED`:
|
|
55
|
+
- `FAILED`: CPU loading, conversion, validation, or publication failed before a valid payload was published.
|
|
56
56
|
- `UNLOADED`: resource payload was released.
|
|
57
|
-
- `PURGED`:
|
|
57
|
+
- `PURGED`: an inactivity or recorded-byte cache policy evicted the resource
|
|
58
|
+
from active ownership. Ordinary replacement, `Delete()`, `Clear()`,
|
|
59
|
+
`ClearCached()`, and shutdown clean owned payloads/adapters but preserve the
|
|
60
|
+
detached handle's last valid state.
|
|
58
61
|
|
|
59
62
|
`CjsResMan.LoadObject()` now queues one deduplicated background source operation
|
|
60
63
|
per source/path and limits active source operations with `maxConcurrentLoads`.
|
|
@@ -62,26 +65,59 @@ After bytes arrive, object construction is split into separate main-queue
|
|
|
62
65
|
items:
|
|
63
66
|
|
|
64
67
|
```text
|
|
65
|
-
|
|
68
|
+
reader/format conversion -> publish
|
|
66
69
|
```
|
|
67
70
|
|
|
68
71
|
`maxPrepareTime` limits seconds spent starting synchronous main-queue work in
|
|
69
72
|
one pump, and `maxPrepareItemsPerTick` can add a count limit. Promise-returning
|
|
70
|
-
|
|
71
|
-
moves the resource to `LOADED`, then stops.
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
73
|
+
format work remains in flight without blocking the JavaScript event loop.
|
|
74
|
+
Publication moves the resource to `LOADED`, then stops. ResMan never performs
|
|
75
|
+
backend realization or marks the resource `PREPARED`/`GOOD`.
|
|
76
|
+
|
|
77
|
+
Format classes own conversion to the promised CPU output. Backend realization
|
|
78
|
+
is a separate explicit engine operation after publication. A realization
|
|
79
|
+
failure destroys its candidate and returns a current resource to `LOADED`
|
|
80
|
+
without discarding the valid CPU payload; an existing usable adapter may remain
|
|
81
|
+
`PREPARED`.
|
|
82
|
+
|
|
83
|
+
Every requested handle uses a normalized source path plus one promised output
|
|
84
|
+
tag. `variant` is explicit; `emit`, `requirement`, and `payload` are fallbacks.
|
|
85
|
+
The selected constructor, reader, and format defaults/options are setup-time
|
|
86
|
+
execution details, not MotherLode identity. A changed
|
|
87
|
+
registration does not create a hidden second resource; reset the affected
|
|
88
|
+
identity or create a new manager. A changed output contract uses a new tag.
|
|
89
|
+
|
|
90
|
+
Output matching is case-insensitive, then the canonical declaration spelling
|
|
91
|
+
is passed to the format reader. Direct object loaders expose only their
|
|
92
|
+
unforced default; multiple named outputs belong on a format class. Unsupported
|
|
93
|
+
output is rejected before a MotherLode cache hit can return.
|
|
94
|
+
|
|
95
|
+
Releasing an unlocked CPU payload keeps the lightweight handle and a small
|
|
96
|
+
reconstruction request containing its path/output and source provenance. Its
|
|
97
|
+
promised-output fields and retained source provenance remain pinned during
|
|
98
|
+
`Ready()`/`GetObject()` so another output/source cannot silently replace the
|
|
99
|
+
old identity. `Ready()` may re-read and rebuild it through current
|
|
100
|
+
registrations. Queries, lease renewal, sweeps, and adapter cleanup never
|
|
101
|
+
trigger that read. Engine adapters own their backend allocations and may
|
|
102
|
+
release those independently.
|
|
79
103
|
|
|
80
104
|
The Blue method names remain the public queue vocabulary: `AddToQueue`,
|
|
81
105
|
`CancelFromQueue`, `GetNextIdForQueue`, `PumpMainThreadQueue`, `PauseQueue`,
|
|
82
106
|
`ResumeQueue`, `GetPendingLoads`, and `GetPendingPrepares`. `Update()`/`Tick()`
|
|
83
|
-
pump queues. `Wait()`
|
|
84
|
-
|
|
107
|
+
pump queues. `Wait()` snapshots queued resource-operation roots and already
|
|
108
|
+
submitted low-level queue tasks before its first await. Captured roots remain
|
|
109
|
+
open through publication enqueued after an asynchronous read, failure, and
|
|
110
|
+
lock release; later unrelated roots/tasks are excluded. Failure and queued
|
|
111
|
+
cancellation cross the fence without making `Wait()` reject.
|
|
112
|
+
|
|
113
|
+
The default wait pumps only the two queues, never automatic retention sweeps,
|
|
114
|
+
and honors existing pause state and budgets. `{ pump: false }` requires an
|
|
115
|
+
external driver. A standalone canonical `PrepareResourceObjectQueued()` call
|
|
116
|
+
opens a queued root. Direct `LoadResourceObject()`, direct
|
|
117
|
+
`PrepareResourceObject()`, and standalone source/format reads bypass both
|
|
118
|
+
queues and are outside the fence. They are still tracked as active mutations
|
|
119
|
+
so synchronous MotherLode replacement cannot detach them. `WaitUrgent()`
|
|
120
|
+
remains open until real per-item priority and urgent membership exist.
|
|
85
121
|
|
|
86
122
|
## CjsLibrary resource-path workflow
|
|
87
123
|
|
|
@@ -98,7 +134,7 @@ Application / runtime object
|
|
|
98
134
|
| |
|
|
99
135
|
| - starts from registered default behavior |
|
|
100
136
|
| - considers registered capability reports |
|
|
101
|
-
| - chooses requirement / emit /
|
|
137
|
+
| - chooses requirement / emit / format |
|
|
102
138
|
| - applies explicit request overrides |
|
|
103
139
|
+-----------------------------------------------+
|
|
104
140
|
|
|
|
@@ -107,13 +143,13 @@ Application / runtime object
|
|
|
107
143
|
+-----------------------------------------------+
|
|
108
144
|
| CjsResMan.GetResource(path, options) |
|
|
109
145
|
| |
|
|
110
|
-
| - normalize path and extension
|
|
111
|
-
| -
|
|
146
|
+
| - normalize source path and extension |
|
|
147
|
+
| - resolve the promised output tag |
|
|
112
148
|
+-----------------------------------------------+
|
|
113
149
|
|
|
|
114
150
|
v
|
|
115
151
|
+-----------------------------------------------+
|
|
116
|
-
| CjsMotherLode.Lookup(
|
|
152
|
+
| CjsMotherLode.Lookup(resolved key) |
|
|
117
153
|
+-----------------------------------------------+
|
|
118
154
|
|
|
|
119
155
|
+--- cache hit ------------------------------+
|
|
@@ -152,28 +188,20 @@ Application / runtime object
|
|
|
152
188
|
+-----------------------------------------------+
|
|
153
189
|
| Read stage |
|
|
154
190
|
| |
|
|
155
|
-
|
|
|
191
|
+
| current object loader for extension? |
|
|
156
192
|
| yes -> call it |
|
|
157
|
-
| no -> resolve registered
|
|
158
|
-
|
|
|
193
|
+
| no -> resolve registered formats by |
|
|
194
|
+
| bytes + request options |
|
|
159
195
|
+-----------------------------------------------+
|
|
160
196
|
|
|
|
161
197
|
| plain payload / hydrated object
|
|
162
198
|
v
|
|
163
199
|
+-----------------------------------------------+
|
|
164
|
-
| Optional configured prepare stages |
|
|
165
|
-
| |
|
|
166
|
-
| stage 1 -> stage 2 -> ... |
|
|
167
|
-
| examples: normalize, convert, adapt |
|
|
168
|
-
+-----------------------------------------------+
|
|
169
|
-
|
|
|
170
|
-
| no configured stages skips this box
|
|
171
|
-
v
|
|
172
|
-
+-----------------------------------------------+
|
|
173
200
|
| Publish stage |
|
|
174
201
|
| |
|
|
175
202
|
| semantic resource -> SetPayload(payload) |
|
|
176
|
-
| generic resource ->
|
|
203
|
+
| generic resource -> SetPayload(value) |
|
|
204
|
+
| object aliases payload |
|
|
177
205
|
+-----------------------------------------------+
|
|
178
206
|
|
|
|
179
207
|
+--- validation failure --------------------+
|
|
@@ -189,20 +217,22 @@ Application / runtime object
|
|
|
189
217
|
the built CjsResource/object
|
|
190
218
|
```
|
|
191
219
|
|
|
192
|
-
Device realization is a separate continuation selected outside ResMan
|
|
220
|
+
Device realization is a separate continuation selected outside ResMan. It can
|
|
221
|
+
run again after adapter eviction or device loss while the CPU payload remains
|
|
222
|
+
resident:
|
|
193
223
|
|
|
194
224
|
```text
|
|
195
225
|
CjsResource LOADED
|
|
196
226
|
|
|
|
197
227
|
| selected engine adapter
|
|
198
228
|
v
|
|
199
|
-
PREPARING
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
229
|
+
PREPARING
|
|
230
|
+
|
|
|
231
|
+
| create candidate -> verify current target -> synchronous attach
|
|
232
|
+
v
|
|
233
|
+
PREPARED
|
|
203
234
|
|
|
204
|
-
|
|
205
|
-
extension object-loader/format read -> validate -> publish
|
|
235
|
+
failure: destroy candidate -> LOADED (CPU payload retained)
|
|
206
236
|
```
|
|
207
237
|
|
|
208
238
|
## Texture Array Generations
|
|
@@ -244,20 +274,23 @@ topology after destroying an unusable adapter allocation. Topology snapshots
|
|
|
244
274
|
report an explicit `topologyChanged` flag and contain only valid current dirty
|
|
245
275
|
layer indices.
|
|
246
276
|
|
|
247
|
-
##
|
|
277
|
+
## Optional Runtime Manager Follow-up
|
|
248
278
|
|
|
249
|
-
The
|
|
250
|
-
|
|
251
|
-
|
|
279
|
+
The runtime-resource 0.6.0 ResMan/MotherLode contract is complete. Future
|
|
280
|
+
work should be driven by measured application needs rather than another
|
|
281
|
+
resource preparation abstraction:
|
|
252
282
|
|
|
253
|
-
-
|
|
283
|
+
- main-queue priority and starvation policy
|
|
254
284
|
- cancellation/abort propagation for work that has already started
|
|
255
|
-
-
|
|
256
|
-
-
|
|
257
|
-
-
|
|
258
|
-
-
|
|
285
|
+
- `WaitUrgent()` after real priority and bounded fairness
|
|
286
|
+
- queue-time and reader/format-time telemetry
|
|
287
|
+
- application-level default retention policy selection
|
|
288
|
+
- automatic resource/payload byte estimation and separate CPU/adapter budgets
|
|
259
289
|
- browser-aware source behavior such as fetch response type selection
|
|
260
290
|
|
|
291
|
+
Explicit `Ready()`/`GetObject()` reconstructs released CPU payloads. Backend
|
|
292
|
+
device-loss recovery belongs to the engine's realization operation.
|
|
293
|
+
|
|
261
294
|
## Memory Retention and Purging
|
|
262
295
|
|
|
263
296
|
ccpwgl keeps every resource in `Tw2MotherLode` until it is explicitly cleared or
|
|
@@ -274,18 +307,43 @@ enough. It then marks them purged and removes them from the cache. In ccpwgl,
|
|
|
274
307
|
`IsGood()` also calls `KeepAlive()`, so many read/check paths implicitly keep
|
|
275
308
|
resources resident.
|
|
276
309
|
|
|
277
|
-
That model works for ccpwgl, but CarbonEngineJS
|
|
310
|
+
That model works for ccpwgl, but CarbonEngineJS is deliberately more explicit:
|
|
278
311
|
|
|
279
|
-
- `IsGood()`, `IsPrepared()`, and `HasLoaded()`
|
|
280
|
-
- `KeepAlive()`
|
|
281
|
-
- `Lock()` / `Unlock()`
|
|
282
|
-
|
|
283
|
-
-
|
|
284
|
-
|
|
285
|
-
|
|
286
|
-
|
|
312
|
+
- `IsGood()`, `IsPrepared()`, and `HasLoaded()` remain pure state checks.
|
|
313
|
+
- `KeepAlive()` and `KeepPayloadAlive()` are the explicit liveness operations.
|
|
314
|
+
- `Lock()` / `Unlock()` maintain a non-underflowing count and prevent identity
|
|
315
|
+
and payload eviction during a sweep.
|
|
316
|
+
- MotherLode tracks separate identity and CPU-payload frame/time observations.
|
|
317
|
+
- `CjsMotherLode.PurgeInactive()` itself scans only when explicitly requested
|
|
318
|
+
and never infers JavaScript reachability. `CjsResMan.Update()` may request it
|
|
319
|
+
only under an explicitly configured automatic policy.
|
|
287
320
|
- `Unload()` should release engine adapter resources and optionally CPU payloads.
|
|
288
|
-
- `Purge()`
|
|
321
|
+
- A resource-level `Purge()`/`Reload()` vocabulary remains future policy work.
|
|
322
|
+
|
|
323
|
+
### Recorded-Byte Cache Contract
|
|
324
|
+
|
|
325
|
+
Carbon can infer when only its cache retains a resource through weak-reference
|
|
326
|
+
and refcount transitions. JavaScript cannot reproduce that ownership test
|
|
327
|
+
reliably, so `CjsMotherLode` budgets only entries that a caller explicitly
|
|
328
|
+
classifies with `{ cached: true, bytes }`. The byte value is an exact
|
|
329
|
+
caller-supplied safe-integer eviction weight; runtime-resource does not walk
|
|
330
|
+
arbitrary cyclic/shared object graphs or invoke payload getters to guess size.
|
|
331
|
+
|
|
332
|
+
Explicit cached entries receive a monotonic admission sequence.
|
|
333
|
+
With its default cleanup, `TrimCache(options)` destroys adapters, releases
|
|
334
|
+
payloads, detaches lifecycle callbacks, marks compatible handles `PURGED`, and
|
|
335
|
+
removes positive-byte entries oldest-first until `cacheBytes <= cacheSize`.
|
|
336
|
+
Live, locked, non-cacheable, and zero-byte entries do not create byte pressure.
|
|
337
|
+
`KeepAlive()` and `Lock()` promote a cached record to live; `Unlock()` does not
|
|
338
|
+
silently re-admit it.
|
|
339
|
+
|
|
340
|
+
`SetCacheSize(bytes, options)` installs and immediately enforces the new budget.
|
|
341
|
+
`CjsResMan.Update()` / `Tick()` also run cache housekeeping after queue pumping;
|
|
342
|
+
`{ cache: false }` skips one update without changing policy. Cleanup is
|
|
343
|
+
transactional per identity: a failed candidate remains canonical, later
|
|
344
|
+
candidates are still attempted, and the aggregate
|
|
345
|
+
`CJS_MOTHERLODE_CACHE_TRIM_FAILED` error carries successful evictions and any
|
|
346
|
+
remaining over-budget state. Trimming never reads, prepares, or reloads data.
|
|
289
347
|
|
|
290
348
|
The JS/browser split adds one more axis that ccpwgl blurs: CPU payload memory and
|
|
291
349
|
GPU/device memory are different budgets. A large decoded image, geometry buffer,
|
|
@@ -326,9 +384,143 @@ resource.ReleasePayload()
|
|
|
326
384
|
-> explicitly release the full payload reference
|
|
327
385
|
```
|
|
328
386
|
|
|
329
|
-
`
|
|
330
|
-
|
|
331
|
-
|
|
387
|
+
`CjsResMan` binds resource-facing `KeepAlive()`, `KeepPayloadAlive()`, `Lock()`,
|
|
388
|
+
and `Unlock()` to the resource's canonical MotherLode key. `SetPayload()` renews
|
|
389
|
+
both identity and payload activity when it publishes a non-null payload.
|
|
390
|
+
`GetPayload()` and `HasPayload()` are pure queries; reading the payload does not
|
|
391
|
+
implicitly renew its lease. Detached and purged handles retain deterministic
|
|
392
|
+
no-op liveness methods rather than silently starting work.
|
|
393
|
+
|
|
394
|
+
Both semantic and generic/base resource results use that payload slot. A base
|
|
395
|
+
resource also mirrors its payload on the compatibility `object` property;
|
|
396
|
+
`ReleasePayload()` clears the alias only when it still references that exact
|
|
397
|
+
payload. Semantic resources continue to expose `object === resource` while
|
|
398
|
+
holding their validated plain payload privately.
|
|
399
|
+
|
|
400
|
+
Object-operation promises are retained only while in flight. Concurrent
|
|
401
|
+
`GetObject()`/`Ready()` calls share one operation; a resident result is returned
|
|
402
|
+
without source work and renews the explicit payload lease. Settlement removes
|
|
403
|
+
the operation record so its result graph can be reclaimed and a failure can be
|
|
404
|
+
retried. After payload release, only a new explicit object/readiness call
|
|
405
|
+
reconstructs it; queries, lease calls, and purge sweeps do not.
|
|
406
|
+
|
|
407
|
+
Read-cache provenance is explicit and separate from path/output resource identity.
|
|
408
|
+
For a selected source object and normalized path, `sourceRevision` is an opaque
|
|
409
|
+
caller/source-supplied string or finite-number content token. Source and format
|
|
410
|
+
records do not share across revisions. Format records are additionally isolated
|
|
411
|
+
by source object, frozen registration descriptor, and effective format options,
|
|
412
|
+
so another source or a re-registered default cannot reuse a stale parse.
|
|
413
|
+
Registered defaults are deeply snapshotted for supported plain-object/array
|
|
414
|
+
configuration. Requests containing option values that cannot be represented
|
|
415
|
+
safely bypass parsed-format sharing instead of accepting an ambiguous key.
|
|
416
|
+
|
|
417
|
+
`cacheSource` and `cacheFormat` use the same per-call tri-state contract:
|
|
418
|
+
omitted shares existing in-flight/retained work but drops a newly completed
|
|
419
|
+
record; `true` retains success and upgrades joined work; `false` bypasses both
|
|
420
|
+
sharing and retention. Failures are never retained. Resource loaders capture
|
|
421
|
+
the effective selected source (including the creation-time manager default)
|
|
422
|
+
and revision for later reconstruction, but do not capture cache flags or
|
|
423
|
+
one-shot reload.
|
|
424
|
+
|
|
425
|
+
`reload: true` detaches all queued/source/format records for the selected
|
|
426
|
+
source/path when fresh candidate work begins. `InvalidateReadCache()` exposes
|
|
427
|
+
explicit path invalidation, optionally restricted to one revision. Detachment
|
|
428
|
+
never aborts or rejects existing consumers and never touches MotherLode or the
|
|
429
|
+
already-published canonical payload. `Delete()` remains resource-identity-only;
|
|
430
|
+
`Clear()` resets all read ledgers. A failed reload preserves the former payload
|
|
431
|
+
but does not restore reusable read-cache entries detached by its explicit
|
|
432
|
+
freshness request.
|
|
433
|
+
|
|
434
|
+
### Candidate-First Atomic Reload
|
|
435
|
+
|
|
436
|
+
When an owner already exists, `GetResource(path, { reload: true })` constructs
|
|
437
|
+
and initializes a distinct off-registry candidate. Ordinary `Lookup()` remains
|
|
438
|
+
on the former resource. Calling `Ready()` on the candidate, using
|
|
439
|
+
`GetObject()` / `FetchResource()` with `reload: true`, or calling the explicit
|
|
440
|
+
`ReloadObject()` / `ReloadResource()` helpers starts one shared candidate
|
|
441
|
+
operation.
|
|
442
|
+
|
|
443
|
+
The manager captures the exact MotherLode, key, former handle, former ownership
|
|
444
|
+
generation, and a newest-request token. It purge-locks the former owner and
|
|
445
|
+
tracks the candidate as a normal `Wait()` root. Reader, prepare, and publication
|
|
446
|
+
stages mutate only the detached candidate and validate candidate authority
|
|
447
|
+
before and after asynchronous boundaries. A fully loaded CPU candidate commits
|
|
448
|
+
through `CjsMotherLode.ReplaceExpected()` only if the exact former owner and
|
|
449
|
+
newest token still match. The final authority callback and exact-record check
|
|
450
|
+
run immediately before the synchronous map switch, with no user cleanup or
|
|
451
|
+
`await` between the comparison and publication.
|
|
452
|
+
|
|
453
|
+
After the switch, the displaced ownership generation is invalidated, the
|
|
454
|
+
candidate receives ordinary lifecycle/reconstruction callbacks, and the former
|
|
455
|
+
handle is cleaned exactly once. Existing JavaScript references are not
|
|
456
|
+
retargeted; fresh lookup returns the new handle. Source, format, or publication
|
|
457
|
+
failure leaves the exact former state, payload, and adapters canonical, retains
|
|
458
|
+
its original error, and cleans payload/adapters attached to the never-canonical
|
|
459
|
+
candidate. An otherwise-successful candidate that was superseded, deleted,
|
|
460
|
+
cleared, or replaced rejects with `CJS_RESMAN_STALE_RELOAD_CANDIDATE` and cannot
|
|
461
|
+
resurrect the key. Constructors that return the former singleton are rejected
|
|
462
|
+
before `Initialize()` can mutate it because staging requires a distinct handle.
|
|
463
|
+
|
|
464
|
+
Cleanup errors have explicit sides. Candidate cleanup failure aggregates with
|
|
465
|
+
the original preparation/stale error as
|
|
466
|
+
`CJS_RESMAN_RELOAD_CANDIDATE_CLEANUP_FAILED` while the former owner remains
|
|
467
|
+
canonical. A displaced-owner cleanup failure occurs after publication and
|
|
468
|
+
rejects as `CJS_MOTHERLODE_REPLACE_CLEANUP_FAILED` with a result where
|
|
469
|
+
`committed === true`; the already-good candidate remains canonical.
|
|
470
|
+
Started source/format work abort remains separate work.
|
|
471
|
+
|
|
472
|
+
This availability contract intentionally differs from Carbon.
|
|
473
|
+
`BlueAsyncRes::Reload` cancels/joins work, releases dependent cached data, and
|
|
474
|
+
reloads the same canonical object in place; failure can therefore leave that
|
|
475
|
+
stable handle bad. Carbon MotherLode replacement also switches immediately and
|
|
476
|
+
has no prepare-success gate or rollback. Runtime-resource instead preserves the
|
|
477
|
+
last published good handle until a distinct candidate has succeeded.
|
|
478
|
+
|
|
479
|
+
Every canonical queued/direct/standalone preparation captures an immutable
|
|
480
|
+
publication authority: exact MotherLode, canonical key, resource handle, and a
|
|
481
|
+
manager-local ownership generation. The manager validates that authority
|
|
482
|
+
before and after state changes, asynchronous reader/format work, and publication.
|
|
483
|
+
Delete, Clear, successful reload commit, or exact-handle reinsertion therefore makes
|
|
484
|
+
older work reject with `CJS_RESMAN_STALE_RESOURCE_OPERATION` before it can
|
|
485
|
+
publish. If stale work independently rejects, its original source/format error
|
|
486
|
+
is preserved and `SetError()` is suppressed on the detached handle.
|
|
487
|
+
|
|
488
|
+
`Register({ motherLode })` rejects with
|
|
489
|
+
`CJS_RESMAN_ACTIVE_RESOURCE_OPERATIONS` while queued or direct mutations are
|
|
490
|
+
active, including a reload candidate. Normal `Wait()` drains queued roots and
|
|
491
|
+
candidate lineages; a direct caller must await its own load/prepare promise
|
|
492
|
+
before retrying replacement. Canonical and candidate authority prevent late
|
|
493
|
+
publication, but started-work abort remains separate. Backend candidate
|
|
494
|
+
cleanup belongs to the explicit engine realization operation.
|
|
495
|
+
|
|
496
|
+
An explicit `PurgeInactive()` sweep accepts separate frame/time limits for
|
|
497
|
+
identity and payload residency. Identity expiry destroys adapter resources,
|
|
498
|
+
releases the payload, detaches lifecycle callbacks, marks compatible handles
|
|
499
|
+
`PURGED`, and removes the canonical key. Payload expiry calls
|
|
500
|
+
`ReleasePayload()` while retaining identity and adapter allocations. Locks skip
|
|
501
|
+
both operations, and candidate failures are aggregated after the sweep has
|
|
502
|
+
continued over other entries.
|
|
503
|
+
|
|
504
|
+
`CjsResMan` also exposes opt-in automatic scheduling through
|
|
505
|
+
`SetAutoPurgePolicy()` or the `autoPurgePolicy` registration option. It is
|
|
506
|
+
disabled by default. Automatic policy is time-only because MotherLode's current
|
|
507
|
+
activity frame counts observations rather than renderer frames. A policy must
|
|
508
|
+
set at least one of `maxIdleMilliseconds` or
|
|
509
|
+
`payloadMaxIdleMilliseconds`; `intervalMilliseconds` defaults to 1000. The
|
|
510
|
+
first `PumpAutoPurge()`/`Update()` after configuration sweeps immediately, then
|
|
511
|
+
the interval sets the minimum cadence. `Update({ purge: false })` suppresses a
|
|
512
|
+
sweep for one update without changing cadence. A regressing clock rebases and
|
|
513
|
+
skips one pump; custom deterministic clocks should be shared with MotherLode.
|
|
514
|
+
Recorded-byte cache trimming is separate from this opt-in inactivity policy and
|
|
515
|
+
runs on ordinary updates unless `{ cache: false }` is supplied.
|
|
516
|
+
|
|
517
|
+
Both queued `QueueResourceObject()` work and direct `LoadResourceObject()` work
|
|
518
|
+
hold one manager-owned lock from request/loading publication through success or
|
|
519
|
+
failure. The lock is balanced independently of caller locks, so automatic or
|
|
520
|
+
manual sweeps cannot detach a handle while its read/prepare operation is still
|
|
521
|
+
active. Lock release is conditional on the same captured ownership generation,
|
|
522
|
+
so stale work cannot decrement a newly rebound handle's lock. Scheduling and
|
|
523
|
+
active-work protection do not fetch or reload data.
|
|
332
524
|
|
|
333
525
|
The processor preparing a resource decides when the full payload can be
|
|
334
526
|
released:
|
|
@@ -342,11 +534,11 @@ format reader -> plain payload -> resource validation + adapter prepare
|
|
|
342
534
|
`-> or renew its lease for deferred/further work
|
|
343
535
|
```
|
|
344
536
|
|
|
345
|
-
A time-based lease is a fallback against abandoned payloads. An owner
|
|
346
|
-
deferred work can renew the lease. If
|
|
347
|
-
again, the
|
|
348
|
-
|
|
349
|
-
|
|
537
|
+
A time- or frame-based lease is a fallback against abandoned payloads. An owner
|
|
538
|
+
performing deferred work can renew the lease. If an expired payload is required
|
|
539
|
+
again, the caller must explicitly request reconstruction; lease renewal and
|
|
540
|
+
purging never fetch or reload source data. Dynamic or non-reloadable resources
|
|
541
|
+
must remain locked, retain the required payload, or be able to recreate it.
|
|
350
542
|
|
|
351
543
|
Payload references are shared read-only by default. Preparing WebGL and WebGPU
|
|
352
544
|
adapters side by side should normally pass the same payload to both consumers
|
|
@@ -362,12 +554,12 @@ Open design questions:
|
|
|
362
554
|
- Should `Unload()` drop only adapter payloads by default, or CPU payloads too?
|
|
363
555
|
- Should there be explicit `UnloadAdapterResources()`, `UnloadPayload()`, and
|
|
364
556
|
`Purge()` phases?
|
|
365
|
-
-
|
|
366
|
-
|
|
557
|
+
- Which format/resource-specific estimators should supply separate identity,
|
|
558
|
+
CPU-payload, and adapter byte weights without double-counting shared buffers?
|
|
367
559
|
- Should manually attached/dynamic resources default to locked, like ccpwgl's
|
|
368
560
|
manual shader resources use `doNotPurge`?
|
|
369
|
-
-
|
|
370
|
-
|
|
561
|
+
- What explicit `Reload()`/reconstruction API should restore purged resources
|
|
562
|
+
without introducing surprising browser or network work?
|
|
371
563
|
|
|
372
564
|
ccpwgl's raw event emitter shape is useful. The part we should not copy is the
|
|
373
565
|
separate resource notification/callback compatibility layer that sits beside
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"AudioGeometryResData.js","sources":["../../../../src/generated/resources/AudioGeometryResData.js"],"sourcesContent":["// Source: trinity/trinity/Resources/TriGeometryRes.h\n// Generated by format-carbon carbon-class --emit. Verify against resources/AudioGeometryResData.json.\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\nimport { vec3 } from \"@carbonenginejs/core-math/vec3\";\n\n/** AudioGeometryResData (resources) - generated from schema shapeHash 89e7ddb7.... */\n@type.define({ className: \"AudioGeometryResData\", family: \"resources\" })\nexport class AudioGeometryResData extends CjsModel\n{\n\n /** m_id (uint64_t) */\n @type.uint64\n id = 0;\n\n /** m_vertices (std::vector<Vector3>) */\n @type.list(\"Vector3\")\n vertices = [];\n\n /** m_indices (std::vector<uint32_t>) */\n @type.list(\"uint32_t\")\n indices = [];\n\n /** m_minBounds (Vector3) */\n @type.vec3\n minBounds = vec3.create();\n\n /** m_maxBounds (Vector3) */\n @type.vec3\n maxBounds = vec3.create();\n\n /** s_nextId (static std::atomic<uint64_t>) */\n @type.rawStruct(\"static std::atomic<uint64_t>\")\n s_nextId = null;\n\n}\n"],"names":["_AudioGeometryResData","AudioGeometryResData","CjsModel","e","_init_id","_init_extra_id","_init_vertices","_init_extra_vertices","_init_indices","_init_extra_indices","_init_minBounds","_init_extra_minBounds","_init_maxBounds","_init_extra_maxBounds","_init_s_nextId","_init_extra_s_nextId","c","_initClass","_applyDecs","type","define","className","family","uint64","list","vec3","rawStruct","constructor","args","id","vertices","indices","minBounds","create","maxBounds","s_nextId"],"mappings":";;;;;;;AAMA;AAAA,IAAAA;AACA,MAAAC,oBAAA,SAC0CC,QAAQ,CAClD;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,QAAA,EAAAC,cAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,aAAA,EAAAC,mBAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,eAAA,EAAAC,qBAAA,EAAAC,cAAA,EAAAC,oBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAhB,qBAAA,EAAAiB,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,sBAAsB;AAAEC,MAAAA,MAAM,EAAE;AAAY,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAKrEH,IAAI,EAAJA,IAAI,CAACI,MAAM,CAAA,EAAA,EAAA,EAAA,IAAA,CAAA,EAAA,CAIXJ,IAAI,CAACK,IAAI,CAAC,SAAS,CAAC,mBAIpBL,IAAI,CAACK,IAAI,CAAC,UAAU,CAAC,EAAA,CAAA,EAAA,SAAA,CAAA,EAAA,CAAA,CAIrBL,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,WAAA,CAAA,EAAA,CAAA,CAITN,IAAI,EAAJA,IAAI,CAACM,IAAI,CAAA,EAAA,EAAA,EAAA,WAAA,CAAA,EAAA,CAITN,IAAI,CAACO,SAAS,CAAC,8BAA8B,CAAC,8BAxBPxB,QAAQ,CAAA;AAAA;AAAAyB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAb,oBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAGhD;EAEAc,EAAE,GAAAzB,QAAA,CAAA,IAAA,EAAG,CAAC,CAAA;;AAEN;AAEA0B,EAAAA,QAAQ,IAAAzB,cAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,EAAE,CAAA;;AAEb;AAEAyB,EAAAA,OAAO,IAAAxB,oBAAA,CAAA,IAAA,CAAA,EAAAC,aAAA,OAAG,EAAE,CAAA;;AAEZ;EAEAwB,SAAS,IAAAvB,mBAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAGe,IAAI,CAACQ,MAAM,EAAE,CAAA;;AAEzB;EAEAC,SAAS,IAAAvB,qBAAA,CAAA,IAAA,CAAA,EAAAC,eAAA,OAAGa,IAAI,CAACQ,MAAM,EAAE,CAAA;;AAEzB;AAEAE,EAAAA,QAAQ,IAAAtB,qBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,IAAI,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAElB;;;;"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { applyDecs2311 as _applyDecs2311 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import { type } from '@carbonenginejs/core-types/schema';
|
|
3
|
-
import { CjsModel } from '@carbonenginejs/core-types/model';
|
|
4
|
-
|
|
5
|
-
let _initClass, _init_posElem, _init_extra_posElem, _init_normElem, _init_extra_normElem, _init_tanElem, _init_extra_tanElem, _init_binormElem, _init_extra_binormElem, _init_pkdTanElem, _init_extra_pkdTanElem, _init_pkdLegElem, _init_extra_pkdLegElem;
|
|
6
|
-
|
|
7
|
-
/** CmfVertexReader (resources) - generated from schema shapeHash b28887e3.... */
|
|
8
|
-
let _CmfVertexReader;
|
|
9
|
-
class CmfVertexReader extends CjsModel {
|
|
10
|
-
static {
|
|
11
|
-
({
|
|
12
|
-
e: [_init_posElem, _init_extra_posElem, _init_normElem, _init_extra_normElem, _init_tanElem, _init_extra_tanElem, _init_binormElem, _init_extra_binormElem, _init_pkdTanElem, _init_extra_pkdTanElem, _init_pkdLegElem, _init_extra_pkdLegElem],
|
|
13
|
-
c: [_CmfVertexReader, _initClass]
|
|
14
|
-
} = _applyDecs2311(this, [type.define({
|
|
15
|
-
className: "CmfVertexReader",
|
|
16
|
-
family: "resources"
|
|
17
|
-
})], [[type.objectRef("cmf::VertexElement"), 0, "posElem"], [type.objectRef("cmf::VertexElement"), 0, "normElem"], [type.objectRef("cmf::VertexElement"), 0, "tanElem"], [type.objectRef("cmf::VertexElement"), 0, "binormElem"], [type.objectRef("cmf::VertexElement"), 0, "pkdTanElem"], [type.objectRef("cmf::VertexElement"), 0, "pkdLegElem"]], 0, void 0, CjsModel));
|
|
18
|
-
}
|
|
19
|
-
constructor(...args) {
|
|
20
|
-
super(...args);
|
|
21
|
-
_init_extra_pkdLegElem(this);
|
|
22
|
-
}
|
|
23
|
-
/** posElem (cmf::VertexElement*) */
|
|
24
|
-
posElem = _init_posElem(this, null);
|
|
25
|
-
|
|
26
|
-
/** normElem (cmf::VertexElement*) */
|
|
27
|
-
normElem = (_init_extra_posElem(this), _init_normElem(this, null));
|
|
28
|
-
|
|
29
|
-
/** tanElem (cmf::VertexElement*) */
|
|
30
|
-
tanElem = (_init_extra_normElem(this), _init_tanElem(this, null));
|
|
31
|
-
|
|
32
|
-
/** binormElem (cmf::VertexElement*) */
|
|
33
|
-
binormElem = (_init_extra_tanElem(this), _init_binormElem(this, null));
|
|
34
|
-
|
|
35
|
-
/** pkdTanElem (cmf::VertexElement*) */
|
|
36
|
-
pkdTanElem = (_init_extra_binormElem(this), _init_pkdTanElem(this, null));
|
|
37
|
-
|
|
38
|
-
/** pkdLegElem (cmf::VertexElement*) */
|
|
39
|
-
pkdLegElem = (_init_extra_pkdTanElem(this), _init_pkdLegElem(this, null));
|
|
40
|
-
static {
|
|
41
|
-
_initClass();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export { _CmfVertexReader as CmfVertexReader };
|
|
46
|
-
//# sourceMappingURL=CmfVertexReader.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"CmfVertexReader.js","sources":["../../../../src/generated/resources/CmfVertexReader.js"],"sourcesContent":["// Source: trinity/trinity/Resources/TriGrannyRes.h\n// Generated by format-carbon carbon-class --emit. Verify against resources/CmfVertexReader.json.\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\n\n/** CmfVertexReader (resources) - generated from schema shapeHash b28887e3.... */\n@type.define({ className: \"CmfVertexReader\", family: \"resources\" })\nexport class CmfVertexReader extends CjsModel\n{\n\n /** posElem (cmf::VertexElement*) */\n @type.objectRef(\"cmf::VertexElement\")\n posElem = null;\n\n /** normElem (cmf::VertexElement*) */\n @type.objectRef(\"cmf::VertexElement\")\n normElem = null;\n\n /** tanElem (cmf::VertexElement*) */\n @type.objectRef(\"cmf::VertexElement\")\n tanElem = null;\n\n /** binormElem (cmf::VertexElement*) */\n @type.objectRef(\"cmf::VertexElement\")\n binormElem = null;\n\n /** pkdTanElem (cmf::VertexElement*) */\n @type.objectRef(\"cmf::VertexElement\")\n pkdTanElem = null;\n\n /** pkdLegElem (cmf::VertexElement*) */\n @type.objectRef(\"cmf::VertexElement\")\n pkdLegElem = null;\n\n}\n"],"names":["_CmfVertexReader","CmfVertexReader","CjsModel","e","_init_posElem","_init_extra_posElem","_init_normElem","_init_extra_normElem","_init_tanElem","_init_extra_tanElem","_init_binormElem","_init_extra_binormElem","_init_pkdTanElem","_init_extra_pkdTanElem","_init_pkdLegElem","_init_extra_pkdLegElem","c","_initClass","_applyDecs","type","define","className","family","objectRef","constructor","args","posElem","normElem","tanElem","binormElem","pkdTanElem","pkdLegElem"],"mappings":";;;;;;AAKA;AAAA,IAAAA;AACA,MAAAC,eAAA,SACqCC,QAAQ,CAC7C;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,aAAA,EAAAC,mBAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,aAAA,EAAAC,mBAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAAC,gBAAA,EAAAC,sBAAA,EAAAC,gBAAA,EAAAC,sBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAhB,gBAAA,EAAAiB,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,iBAAiB;AAAEC,MAAAA,MAAM,EAAE;KAAa,CAAC,KAKhEH,IAAI,CAACI,SAAS,CAAC,oBAAoB,CAAC,EAAA,CAAA,EAAA,SAAA,CAAA,EAAA,CAIpCJ,IAAI,CAACI,SAAS,CAAC,oBAAoB,CAAC,EAAA,CAAA,EAAA,UAAA,CAAA,EAAA,CAIpCJ,IAAI,CAACI,SAAS,CAAC,oBAAoB,CAAC,kBAIpCJ,IAAI,CAACI,SAAS,CAAC,oBAAoB,CAAC,EAAA,CAAA,EAAA,YAAA,CAAA,EAAA,CAIpCJ,IAAI,CAACI,SAAS,CAAC,oBAAoB,CAAC,EAAA,CAAA,EAAA,YAAA,CAAA,EAAA,CAIpCJ,IAAI,CAACI,SAAS,CAAC,oBAAoB,CAAC,gCAxBFrB,QAAQ,CAAA;AAAA;AAAAsB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAV,sBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG3C;EAEAW,OAAO,GAAAtB,aAAA,CAAA,IAAA,EAAG,IAAI,CAAA;;AAEd;AAEAuB,EAAAA,QAAQ,IAAAtB,mBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,IAAI,CAAA;;AAEf;AAEAsB,EAAAA,OAAO,IAAArB,oBAAA,CAAA,IAAA,CAAA,EAAAC,aAAA,OAAG,IAAI,CAAA;;AAEd;AAEAqB,EAAAA,UAAU,IAAApB,mBAAA,CAAA,IAAA,CAAA,EAAAC,gBAAA,OAAG,IAAI,CAAA;;AAEjB;AAEAoB,EAAAA,UAAU,IAAAnB,sBAAA,CAAA,IAAA,CAAA,EAAAC,gBAAA,OAAG,IAAI,CAAA;;AAEjB;AAEAmB,EAAAA,UAAU,IAAAlB,sBAAA,CAAA,IAAA,CAAA,EAAAC,gBAAA,OAAG,IAAI,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEpB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"GStateBindingCallbackData.js","sources":["../../../../src/generated/resources/GStateBindingCallbackData.js"],"sourcesContent":["// Source: trinity/trinity/Resources/Tr2GrannyStateRes.h\n// Generated by format-carbon carbon-class --emit. Verify against resources/GStateBindingCallbackData.json.\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\n\n/** GStateBindingCallbackData (resources) - generated from schema shapeHash ffae27cd.... */\n@type.define({ className: \"GStateBindingCallbackData\", family: \"resources\" })\nexport class GStateBindingCallbackData extends CjsModel\n{\n\n /** gsf_path (std::string) */\n @type.string\n gsf_path = \"\";\n\n}\n"],"names":["_GStateBindingCallbac","GStateBindingCallbackData","CjsModel","e","_init_gsf_path","_init_extra_gsf_path","c","_initClass","_applyDecs","type","define","className","family","string","constructor","args","gsf_path"],"mappings":";;;;;;AAKA;AAAA,IAAAA;AACA,MAAAC,yBAAA,SAC+CC,QAAQ,CACvD;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,cAAA,EAAAC,oBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAN,qBAAA,EAAAO,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,2BAA2B;AAAEC,MAAAA,MAAM,EAAE;KAAa,CAAC,MAK1EH,IAAI,EAAJA,IAAI,CAACI,MAAM,gCAJiCX,QAAQ,CAAA;AAAA;AAAAY,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAV,oBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAGrD;EAEAW,QAAQ,GAAAZ,cAAA,CAAA,IAAA,EAAG,EAAE,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEhB;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MeshDecalData.js","sources":["../../../../src/generated/resources/MeshDecalData.js"],"sourcesContent":["// Source: trinity/trinity/Resources/TriGeometryRes.h\n// Generated by format-carbon carbon-class --emit. Verify against resources/MeshDecalData.json.\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\n\n/** MeshDecalData (resources) - generated from schema shapeHash edd09cef.... */\n@type.define({ className: \"MeshDecalData\", family: \"resources\" })\nexport class MeshDecalData extends CjsModel\n{\n\n /** m_indexBuffer (Tr2SuballocatedBuffer::Allocation) */\n @type.rawStruct(\"Tr2SuballocatedBuffer::Allocation\")\n indexBuffer = null;\n\n /** m_lodMask (uint32_t) */\n @type.uint32\n lodMask = 0;\n\n /** m_lods (std::vector<MeshDecalLodData>) */\n @type.list(\"MeshDecalLodData\")\n lods = [];\n\n}\n"],"names":["_MeshDecalData","MeshDecalData","CjsModel","e","_init_indexBuffer","_init_extra_indexBuffer","_init_lodMask","_init_extra_lodMask","_init_lods","_init_extra_lods","c","_initClass","_applyDecs","type","define","className","family","rawStruct","uint32","list","constructor","args","indexBuffer","lodMask","lods"],"mappings":";;;;;;AAKA;AAAA,IAAAA;AACA,MAAAC,aAAA,SACmCC,QAAQ,CAC3C;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,iBAAA,EAAAC,uBAAA,EAAAC,aAAA,EAAAC,mBAAA,EAAAC,UAAA,EAAAC,gBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAV,cAAA,EAAAW,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,eAAe;AAAEC,MAAAA,MAAM,EAAE;KAAa,CAAC,KAK9DH,IAAI,CAACI,SAAS,CAAC,mCAAmC,CAAC,EAAA,CAAA,EAAA,aAAA,CAAA,EAAA,CAAA,CAInDJ,IAAI,EAAJA,IAAI,CAACK,MAAM,oBAIXL,IAAI,CAACM,IAAI,CAAC,kBAAkB,CAAC,EAAA,CAAA,EAAA,MAAA,CAAA,CAAA,EAAA,CAAA,EAAA,MAAA,EAZGjB,QAAQ,CAAA;AAAA;AAAAkB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAZ,gBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAGzC;EAEAa,WAAW,GAAAlB,iBAAA,CAAA,IAAA,EAAG,IAAI,CAAA;;AAElB;AAEAmB,EAAAA,OAAO,IAAAlB,uBAAA,CAAA,IAAA,CAAA,EAAAC,aAAA,OAAG,CAAC,CAAA;;AAEX;AAEAkB,EAAAA,IAAI,IAAAjB,mBAAA,CAAA,IAAA,CAAA,EAAAC,UAAA,OAAG,EAAE,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEZ;;;;"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"MeshDecalLodData.js","sources":["../../../../src/generated/resources/MeshDecalLodData.js"],"sourcesContent":["// Source: trinity/trinity/Resources/TriGeometryRes.h\n// Generated by format-carbon carbon-class --emit. Verify against resources/MeshDecalLodData.json.\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\n\n/** MeshDecalLodData (resources) - generated from schema shapeHash 932b2966.... */\n@type.define({ className: \"MeshDecalLodData\", family: \"resources\" })\nexport class MeshDecalLodData extends CjsModel\n{\n\n /** m_startIndex (uint32_t) */\n @type.uint32\n startIndex = 0;\n\n /** m_primitiveCount (uint32_t) */\n @type.uint32\n primitiveCount = 0;\n\n}\n"],"names":["_MeshDecalLodData","MeshDecalLodData","CjsModel","e","_init_startIndex","_init_extra_startIndex","_init_primitiveCount","_init_extra_primitiveCount","c","_initClass","_applyDecs","type","define","className","family","uint32","constructor","args","startIndex","primitiveCount"],"mappings":";;;;;;AAKA;AAAA,IAAAA;AACA,MAAAC,gBAAA,SACsCC,QAAQ,CAC9C;AAAA,EAAA;AAAA,IAAA,CAAA;AAAAC,MAAAA,CAAA,GAAAC,gBAAA,EAAAC,sBAAA,EAAAC,oBAAA,EAAAC,0BAAA,CAAA;MAAAC,CAAA,EAAA,CAAAR,iBAAA,EAAAS,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,kBAAkB;AAAEC,MAAAA,MAAM,EAAE;AAAY,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAKjEH,IAAI,EAAJA,IAAI,CAACI,MAAM,CAAA,EAAA,EAAA,EAAA,YAAA,CAAA,EAAA,CAAA,CAIXJ,IAAI,EAAJA,IAAI,CAACI,MAAM,sCARwBb,QAAQ,CAAA;AAAA;AAAAc,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAV,0BAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAG5C;EAEAW,UAAU,GAAAd,gBAAA,CAAA,IAAA,EAAG,CAAC,CAAA;;AAEd;AAEAe,EAAAA,cAAc,IAAAd,sBAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,CAAC,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAErB;;;;"}
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { applyDecs2311 as _applyDecs2311 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import { type } from '@carbonenginejs/core-types/schema';
|
|
3
|
-
import { CjsModel } from '@carbonenginejs/core-types/model';
|
|
4
|
-
|
|
5
|
-
let _initClass, _init_prepareSaveCbId, _init_extra_prepareSaveCbId, _init_saveFilename, _init_extra_saveFilename, _init_isSaving, _init_extra_isSaving, _init_isSavePrepared, _init_extra_isSavePrepared, _init_saveSucceeded, _init_extra_saveSucceeded, _init_saveCbId, _init_extra_saveCbId;
|
|
6
|
-
|
|
7
|
-
/** Tr2AsyncSave (resources) - generated from schema shapeHash 2d9b1936.... */
|
|
8
|
-
let _Tr2AsyncSave;
|
|
9
|
-
class Tr2AsyncSave extends CjsModel {
|
|
10
|
-
static {
|
|
11
|
-
({
|
|
12
|
-
e: [_init_prepareSaveCbId, _init_extra_prepareSaveCbId, _init_saveFilename, _init_extra_saveFilename, _init_isSaving, _init_extra_isSaving, _init_isSavePrepared, _init_extra_isSavePrepared, _init_saveSucceeded, _init_extra_saveSucceeded, _init_saveCbId, _init_extra_saveCbId],
|
|
13
|
-
c: [_Tr2AsyncSave, _initClass]
|
|
14
|
-
} = _applyDecs2311(this, [type.define({
|
|
15
|
-
className: "Tr2AsyncSave",
|
|
16
|
-
family: "resources"
|
|
17
|
-
})], [[[type, type.unknown], 16, "prepareSaveCbId"], [[type, type.string], 16, "saveFilename"], [[type, type.unknown], 16, "isSaving"], [[type, type.unknown], 16, "isSavePrepared"], [[type, type.unknown], 16, "saveSucceeded"], [[type, type.unknown], 16, "saveCbId"]], 0, void 0, CjsModel));
|
|
18
|
-
}
|
|
19
|
-
constructor(...args) {
|
|
20
|
-
super(...args);
|
|
21
|
-
_init_extra_saveCbId(this);
|
|
22
|
-
}
|
|
23
|
-
/** m_prepareSaveCbId (return m_isSavePrepared || m_saveCbId ||) */
|
|
24
|
-
prepareSaveCbId = _init_prepareSaveCbId(this, 0);
|
|
25
|
-
|
|
26
|
-
/** m_saveFilename (std::wstring) */
|
|
27
|
-
saveFilename = (_init_extra_prepareSaveCbId(this), _init_saveFilename(this, ""));
|
|
28
|
-
|
|
29
|
-
/** m_isSaving (CcpAtomic<uint32_t>) */
|
|
30
|
-
isSaving = (_init_extra_saveFilename(this), _init_isSaving(this, null));
|
|
31
|
-
|
|
32
|
-
/** m_isSavePrepared (CcpAtomic<uint32_t>) */
|
|
33
|
-
isSavePrepared = (_init_extra_isSaving(this), _init_isSavePrepared(this, null));
|
|
34
|
-
|
|
35
|
-
/** m_saveSucceeded (CcpAtomic<uint32_t>) */
|
|
36
|
-
saveSucceeded = (_init_extra_isSavePrepared(this), _init_saveSucceeded(this, null));
|
|
37
|
-
|
|
38
|
-
/** m_saveCbId (CcpAtomic<uint32_t>) */
|
|
39
|
-
saveCbId = (_init_extra_saveSucceeded(this), _init_saveCbId(this, 0));
|
|
40
|
-
static {
|
|
41
|
-
_initClass();
|
|
42
|
-
}
|
|
43
|
-
}
|
|
44
|
-
|
|
45
|
-
export { _Tr2AsyncSave as Tr2AsyncSave };
|
|
46
|
-
//# sourceMappingURL=Tr2AsyncSave.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"Tr2AsyncSave.js","sources":["../../../../src/generated/resources/Tr2AsyncSave.js"],"sourcesContent":["// Source: trinity/trinity/Resources/Tr2AsyncSave.h\n// Generated by format-carbon carbon-class --emit. Verify against resources/Tr2AsyncSave.json.\nimport { type } from \"@carbonenginejs/core-types/schema\";\nimport { CjsModel } from \"@carbonenginejs/core-types/model\";\n\n/** Tr2AsyncSave (resources) - generated from schema shapeHash 2d9b1936.... */\n@type.define({ className: \"Tr2AsyncSave\", family: \"resources\" })\nexport class Tr2AsyncSave extends CjsModel\n{\n\n /** m_prepareSaveCbId (return m_isSavePrepared || m_saveCbId ||) */\n @type.unknown\n prepareSaveCbId = 0;\n\n /** m_saveFilename (std::wstring) */\n @type.string\n saveFilename = \"\";\n\n /** m_isSaving (CcpAtomic<uint32_t>) */\n @type.unknown\n isSaving = null;\n\n /** m_isSavePrepared (CcpAtomic<uint32_t>) */\n @type.unknown\n isSavePrepared = null;\n\n /** m_saveSucceeded (CcpAtomic<uint32_t>) */\n @type.unknown\n saveSucceeded = null;\n\n /** m_saveCbId (CcpAtomic<uint32_t>) */\n @type.unknown\n saveCbId = 0;\n\n}\n"],"names":["_Tr2AsyncSave","Tr2AsyncSave","CjsModel","e","_init_prepareSaveCbId","_init_extra_prepareSaveCbId","_init_saveFilename","_init_extra_saveFilename","_init_isSaving","_init_extra_isSaving","_init_isSavePrepared","_init_extra_isSavePrepared","_init_saveSucceeded","_init_extra_saveSucceeded","_init_saveCbId","_init_extra_saveCbId","c","_initClass","_applyDecs","type","define","className","family","unknown","string","constructor","args","prepareSaveCbId","saveFilename","isSaving","isSavePrepared","saveSucceeded","saveCbId"],"mappings":";;;;;;AAKA;AAAA,IAAAA;AACA,MAAAC,YAAA,SACkCC,QAAQ,CAC1C;AAAA,EAAA;AAAA,IAAA,CAAA;MAAAC,CAAA,EAAA,CAAAC,qBAAA,EAAAC,2BAAA,EAAAC,kBAAA,EAAAC,wBAAA,EAAAC,cAAA,EAAAC,oBAAA,EAAAC,oBAAA,EAAAC,0BAAA,EAAAC,mBAAA,EAAAC,yBAAA,EAAAC,cAAA,EAAAC,oBAAA,CAAA;MAAAC,CAAA,EAAA,CAAAhB,aAAA,EAAAiB,UAAA;AAAA,KAAA,GAAAC,cAAA,CAAA,IAAA,EAAA,CAFCC,IAAI,CAACC,MAAM,CAAC;AAAEC,MAAAA,SAAS,EAAE,cAAc;AAAEC,MAAAA,MAAM,EAAE;AAAY,KAAC,CAAC,CAAA,EAAA,CAAA,CAAA,CAK7DH,IAAI,EAAJA,IAAI,CAACI,OAAO,CAAA,EAAA,EAAA,EAAA,iBAAA,CAAA,EAAA,CAAA,CAIZJ,IAAI,EAAJA,IAAI,CAACK,MAAM,0BAIXL,IAAI,EAAJA,IAAI,CAACI,OAAO,CAAA,EAAA,EAAA,EAAA,UAAA,CAAA,EAAA,CAAA,CAIZJ,IAAI,EAAJA,IAAI,CAACI,OAAO,CAAA,EAAA,EAAA,EAAA,gBAAA,CAAA,EAAA,CAAA,CAIZJ,IAAI,EAAJA,IAAI,CAACI,OAAO,2BAIZJ,IAAI,EAAJA,IAAI,CAACI,OAAO,gCAxBmBrB,QAAQ,CAAA;AAAA;AAAAuB,EAAAA,WAAAA,CAAA,GAAAC,IAAA,EAAA;AAAA,IAAA,KAAA,CAAA,GAAAA,IAAA,CAAA;IAAAX,oBAAA,CAAA,IAAA,CAAA;AAAA,EAAA;AAGxC;EAEAY,eAAe,GAAAvB,qBAAA,CAAA,IAAA,EAAG,CAAC,CAAA;;AAEnB;AAEAwB,EAAAA,YAAY,IAAAvB,2BAAA,CAAA,IAAA,CAAA,EAAAC,kBAAA,OAAG,EAAE,CAAA;;AAEjB;AAEAuB,EAAAA,QAAQ,IAAAtB,wBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,IAAI,CAAA;;AAEf;AAEAsB,EAAAA,cAAc,IAAArB,oBAAA,CAAA,IAAA,CAAA,EAAAC,oBAAA,OAAG,IAAI,CAAA;;AAErB;AAEAqB,EAAAA,aAAa,IAAApB,0BAAA,CAAA,IAAA,CAAA,EAAAC,mBAAA,OAAG,IAAI,CAAA;;AAEpB;AAEAoB,EAAAA,QAAQ,IAAAnB,yBAAA,CAAA,IAAA,CAAA,EAAAC,cAAA,OAAG,CAAC,CAAA;AAAC,EAAA;IAAAG,UAAA,EAAA;AAAA;AAEf;;;;"}
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { applyDecs2311 as _applyDecs2311 } from '../../_virtual/_rollupPluginBabelHelpers.js';
|
|
2
|
-
import { type } from '@carbonenginejs/core-types/schema';
|
|
3
|
-
import { CjsModel } from '@carbonenginejs/core-types/model';
|
|
4
|
-
|
|
5
|
-
let _initClass, _init_section, _init_extra_section, _init_data, _init_extra_data, _init_sections, _init_extra_sections;
|
|
6
|
-
|
|
7
|
-
/** Tr2CmfContents (resources) - generated from schema shapeHash e7125c76.... */
|
|
8
|
-
let _Tr2CmfContents;
|
|
9
|
-
class Tr2CmfContents extends CjsModel {
|
|
10
|
-
static {
|
|
11
|
-
({
|
|
12
|
-
e: [_init_section, _init_extra_section, _init_data, _init_extra_data, _init_sections, _init_extra_sections],
|
|
13
|
-
c: [_Tr2CmfContents, _initClass]
|
|
14
|
-
} = _applyDecs2311(this, [type.define({
|
|
15
|
-
className: "Tr2CmfContents",
|
|
16
|
-
family: "resources"
|
|
17
|
-
})], [[type.rawStruct("cmf::Section"), 0, "section"], [type.rawStruct("uint8_t[]"), 0, "data"], [type.list("Section"), 0, "sections"]], 0, void 0, CjsModel));
|
|
18
|
-
}
|
|
19
|
-
constructor(...args) {
|
|
20
|
-
super(...args);
|
|
21
|
-
_init_extra_sections(this);
|
|
22
|
-
}
|
|
23
|
-
/** section (cmf::Section) */
|
|
24
|
-
section = _init_section(this, null);
|
|
25
|
-
|
|
26
|
-
/** data (std::unique_ptr<uint8_t[]>) */
|
|
27
|
-
data = (_init_extra_section(this), _init_data(this, null));
|
|
28
|
-
|
|
29
|
-
/** m_sections (std::vector<Section>) */
|
|
30
|
-
sections = (_init_extra_data(this), _init_sections(this, []));
|
|
31
|
-
static {
|
|
32
|
-
_initClass();
|
|
33
|
-
}
|
|
34
|
-
}
|
|
35
|
-
|
|
36
|
-
export { _Tr2CmfContents as Tr2CmfContents };
|
|
37
|
-
//# sourceMappingURL=Tr2CmfContents.js.map
|