@ue-shed/protocol 0.6.0 → 0.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/contracts/cameras/map-tile/v1/README.md +7 -0
  2. package/contracts/cameras/map-tile/v1/capture-response.schema.json +97 -25
  3. package/contracts/cameras/map-tile/v1/manifest.schema.json +136 -37
  4. package/contracts/cameras/map-tile/v1/plan.schema.json +132 -36
  5. package/contracts/cameras/map-tile/v1/release-result.schema.json +12 -0
  6. package/contracts/cameras/render/v1/README.md +33 -0
  7. package/contracts/cameras/render/v1/begin-result.schema.json +712 -0
  8. package/contracts/cameras/render/v1/capabilities.schema.json +201 -0
  9. package/contracts/cameras/render/v1/end-result.schema.json +185 -0
  10. package/contracts/cameras/render/v1/fixtures/frame-orthographic.json +31 -0
  11. package/contracts/cameras/render/v1/fixtures/frame-perspective.json +31 -0
  12. package/contracts/cameras/render/v1/fixtures/invalid-frame-mixed-projection.json +32 -0
  13. package/contracts/cameras/render/v1/fixtures/invalid-frame-size.json +31 -0
  14. package/contracts/cameras/render/v1/fixtures/invalid-session-backend-fields.json +40 -0
  15. package/contracts/cameras/render/v1/fixtures/invalid-session-budget.json +39 -0
  16. package/contracts/cameras/render/v1/fixtures/invalid-session-future.json +39 -0
  17. package/contracts/cameras/render/v1/fixtures/session-camera-regions.json +51 -0
  18. package/contracts/cameras/render/v1/fixtures/session-editor-viewport.json +40 -0
  19. package/contracts/cameras/render/v1/fixtures/session-scene-capture.json +39 -0
  20. package/contracts/cameras/render/v1/frame-evidence.schema.json +771 -0
  21. package/contracts/cameras/render/v1/frame-request.schema.json +219 -0
  22. package/contracts/cameras/render/v1/frame-status.schema.json +1076 -0
  23. package/contracts/cameras/render/v1/policy.schema.json +510 -0
  24. package/contracts/cameras/render/v1/preflight.schema.json +68 -0
  25. package/contracts/cameras/render/v1/review-inspection-request.schema.json +342 -0
  26. package/contracts/cameras/render/v1/review-inspection-result.schema.json +2030 -0
  27. package/contracts/cameras/render/v1/review-realization-request.schema.json +417 -0
  28. package/contracts/cameras/render/v1/review-realization-result.schema.json +454 -0
  29. package/contracts/cameras/render/v1/session-request.schema.json +617 -0
  30. package/contracts/cameras/review/v1/README.md +7 -0
  31. package/contracts/cameras/review/v1/capture-request.schema.json +247 -61
  32. package/contracts/cameras/review/v1/capture-response.schema.json +820 -192
  33. package/package.json +1 -1
@@ -0,0 +1,219 @@
1
+ {
2
+ "$schema": "https://json-schema.org/draft/2020-12/schema",
3
+ "$id": "https://ue-shed.dev/contracts/cameras/render/v1/frame-request.schema.json",
4
+ "type": "object",
5
+ "properties": {
6
+ "contract": {
7
+ "type": "object",
8
+ "properties": {
9
+ "name": {
10
+ "type": "string",
11
+ "enum": ["ue-shed-camera-render"]
12
+ },
13
+ "version": {
14
+ "type": "object",
15
+ "properties": {
16
+ "major": {
17
+ "type": "number",
18
+ "enum": [1]
19
+ },
20
+ "minor": {
21
+ "type": "number",
22
+ "enum": [0]
23
+ }
24
+ },
25
+ "required": ["major", "minor"],
26
+ "additionalProperties": false
27
+ }
28
+ },
29
+ "required": ["name", "version"],
30
+ "additionalProperties": false
31
+ },
32
+ "sessionId": {
33
+ "type": "string",
34
+ "allOf": [
35
+ {
36
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
37
+ }
38
+ ]
39
+ },
40
+ "operationId": {
41
+ "type": "string",
42
+ "allOf": [
43
+ {
44
+ "pattern": "^[A-Za-z0-9][A-Za-z0-9._-]{0,127}$"
45
+ }
46
+ ]
47
+ },
48
+ "camera": {
49
+ "type": "object",
50
+ "properties": {
51
+ "location": {
52
+ "type": "object",
53
+ "properties": {
54
+ "x": {
55
+ "type": "number"
56
+ },
57
+ "y": {
58
+ "type": "number"
59
+ },
60
+ "z": {
61
+ "type": "number"
62
+ }
63
+ },
64
+ "required": ["x", "y", "z"],
65
+ "additionalProperties": false
66
+ },
67
+ "rotation": {
68
+ "type": "object",
69
+ "properties": {
70
+ "pitch": {
71
+ "type": "number"
72
+ },
73
+ "roll": {
74
+ "type": "number"
75
+ },
76
+ "yaw": {
77
+ "type": "number"
78
+ }
79
+ },
80
+ "required": ["pitch", "roll", "yaw"],
81
+ "additionalProperties": false
82
+ },
83
+ "projection": {
84
+ "anyOf": [
85
+ {
86
+ "type": "object",
87
+ "properties": {
88
+ "kind": {
89
+ "type": "string",
90
+ "enum": ["perspective"]
91
+ },
92
+ "horizontalFieldOfView": {
93
+ "type": "number",
94
+ "allOf": [
95
+ {
96
+ "minimum": 5,
97
+ "maximum": 170
98
+ }
99
+ ]
100
+ }
101
+ },
102
+ "required": ["kind", "horizontalFieldOfView"],
103
+ "additionalProperties": false
104
+ },
105
+ {
106
+ "type": "object",
107
+ "properties": {
108
+ "kind": {
109
+ "type": "string",
110
+ "enum": ["orthographic"]
111
+ },
112
+ "width": {
113
+ "type": "number",
114
+ "allOf": [
115
+ {
116
+ "exclusiveMinimum": 0
117
+ },
118
+ {
119
+ "maximum": 1000000000
120
+ }
121
+ ]
122
+ }
123
+ },
124
+ "required": ["kind", "width"],
125
+ "additionalProperties": false
126
+ }
127
+ ]
128
+ }
129
+ },
130
+ "required": ["location", "rotation", "projection"],
131
+ "additionalProperties": false
132
+ },
133
+ "size": {
134
+ "type": "object",
135
+ "properties": {
136
+ "width": {
137
+ "type": "integer",
138
+ "allOf": [
139
+ {
140
+ "minimum": 16,
141
+ "maximum": 16384
142
+ }
143
+ ]
144
+ },
145
+ "height": {
146
+ "type": "integer",
147
+ "allOf": [
148
+ {
149
+ "minimum": 16,
150
+ "maximum": 16384
151
+ }
152
+ ]
153
+ }
154
+ },
155
+ "required": ["width", "height"],
156
+ "additionalProperties": false
157
+ },
158
+ "region": {
159
+ "type": "object",
160
+ "properties": {
161
+ "center": {
162
+ "type": "object",
163
+ "properties": {
164
+ "x": {
165
+ "type": "number"
166
+ },
167
+ "y": {
168
+ "type": "number"
169
+ },
170
+ "z": {
171
+ "type": "number"
172
+ }
173
+ },
174
+ "required": ["x", "y", "z"],
175
+ "additionalProperties": false
176
+ },
177
+ "extent": {
178
+ "type": "object",
179
+ "properties": {
180
+ "x": {
181
+ "type": "number",
182
+ "allOf": [
183
+ {
184
+ "minimum": 0,
185
+ "maximum": 10000000
186
+ }
187
+ ]
188
+ },
189
+ "y": {
190
+ "type": "number",
191
+ "allOf": [
192
+ {
193
+ "minimum": 0,
194
+ "maximum": 10000000
195
+ }
196
+ ]
197
+ },
198
+ "z": {
199
+ "type": "number",
200
+ "allOf": [
201
+ {
202
+ "minimum": 0,
203
+ "maximum": 10000000
204
+ }
205
+ ]
206
+ }
207
+ },
208
+ "required": ["x", "y", "z"],
209
+ "additionalProperties": false
210
+ }
211
+ },
212
+ "required": ["center", "extent"],
213
+ "additionalProperties": false
214
+ }
215
+ },
216
+ "required": ["contract", "sessionId", "operationId", "camera", "size"],
217
+ "additionalProperties": false,
218
+ "$defs": {}
219
+ }