177 lines
8.2 KiB
JSON
177 lines
8.2 KiB
JSON
{
|
|
"_comment": [
|
|
"Copyright 2019 The Dawn Authors",
|
|
"",
|
|
"Licensed under the Apache License, Version 2.0 (the \"License\");",
|
|
"you may not use this file except in compliance with the License.",
|
|
"You may obtain a copy of the License at",
|
|
"",
|
|
" http://www.apache.org/licenses/LICENSE-2.0",
|
|
"",
|
|
"Unless required by applicable law or agreed to in writing, software",
|
|
"distributed under the License is distributed on an \"AS IS\" BASIS,",
|
|
"WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.",
|
|
"See the License for the specific language governing permissions and",
|
|
"limitations under the License."
|
|
],
|
|
"_todos": [
|
|
"Remove usage of size_t because it is not network transparent"
|
|
],
|
|
"commands": {
|
|
"buffer map async": [
|
|
{ "name": "buffer id", "type": "ObjectId" },
|
|
{ "name": "request serial", "type": "uint32_t" },
|
|
{ "name": "mode", "type": "map mode" },
|
|
{ "name": "offset", "type": "size_t"},
|
|
{ "name": "size", "type": "size_t"},
|
|
{ "name": "handle create info length", "type": "uint64_t" },
|
|
{ "name": "handle create info", "type": "uint8_t", "annotation": "const*", "length": "handle create info length", "skip_serialize": true}
|
|
],
|
|
"buffer update mapped data": [
|
|
{ "name": "buffer id", "type": "ObjectId" },
|
|
{ "name": "write flush info length", "type": "uint64_t" },
|
|
{ "name": "write flush info", "type": "uint8_t", "annotation": "const*", "length": "write flush info length", "skip_serialize": true}
|
|
],
|
|
"device create buffer": [
|
|
{ "name": "device id", "type": "ObjectId" },
|
|
{ "name": "descriptor", "type": "buffer descriptor", "annotation": "const*" },
|
|
{ "name": "result", "type": "ObjectHandle", "handle_type": "buffer" },
|
|
{ "name": "handle create info length", "type": "uint64_t" },
|
|
{ "name": "handle create info", "type": "uint8_t", "annotation": "const*", "length": "handle create info length", "skip_serialize": true}
|
|
],
|
|
"device create ready compute pipeline": [
|
|
{ "name": "device id", "type": "ObjectId" },
|
|
{ "name": "request serial", "type": "uint64_t" },
|
|
{ "name": "pipeline object handle", "type": "ObjectHandle", "handle_type": "compute pipeline"},
|
|
{ "name": "descriptor", "type": "compute pipeline descriptor", "annotation": "const*"}
|
|
],
|
|
"device create ready render pipeline": [
|
|
{ "name": "device id", "type": "ObjectId" },
|
|
{ "name": "request serial", "type": "uint64_t" },
|
|
{ "name": "pipeline object handle", "type": "ObjectHandle", "handle_type": "render pipeline"},
|
|
{ "name": "descriptor", "type": "render pipeline descriptor", "annotation": "const*"}
|
|
],
|
|
"device pop error scope": [
|
|
{ "name": "device id", "type": "ObjectId" },
|
|
{ "name": "request serial", "type": "uint64_t" }
|
|
],
|
|
"destroy object": [
|
|
{ "name": "object type", "type": "ObjectType" },
|
|
{ "name": "object id", "type": "ObjectId" }
|
|
],
|
|
"fence on completion": [
|
|
{ "name": "fence id", "type": "ObjectId" },
|
|
{ "name": "value", "type": "uint64_t" },
|
|
{ "name": "request serial", "type": "uint64_t" }
|
|
],
|
|
"queue write buffer internal": [
|
|
{"name": "queue id", "type": "ObjectId" },
|
|
{"name": "buffer id", "type": "ObjectId" },
|
|
{"name": "buffer offset", "type": "uint64_t"},
|
|
{"name": "data", "type": "uint8_t", "annotation": "const*", "length": "size"},
|
|
{"name": "size", "type": "size_t"}
|
|
],
|
|
"queue write texture internal": [
|
|
{"name": "queue id", "type": "ObjectId" },
|
|
{"name": "destination", "type": "texture copy view", "annotation": "const*"},
|
|
{"name": "data", "type": "uint8_t", "annotation": "const*", "length": "data size"},
|
|
{"name": "data size", "type": "size_t"},
|
|
{"name": "data layout", "type": "texture data layout", "annotation": "const*"},
|
|
{"name": "writeSize", "type": "extent 3D", "annotation": "const*"}
|
|
]
|
|
},
|
|
"return commands": {
|
|
"buffer map async callback": [
|
|
{ "name": "buffer", "type": "ObjectHandle", "handle_type": "buffer" },
|
|
{ "name": "request serial", "type": "uint32_t" },
|
|
{ "name": "status", "type": "uint32_t" },
|
|
{ "name": "read initial data info length", "type": "uint64_t" },
|
|
{ "name": "read initial data info", "type": "uint8_t", "annotation": "const*", "length": "read initial data info length", "skip_serialize": true }
|
|
],
|
|
"device create ready compute pipeline callback": [
|
|
{ "name": "device", "type": "ObjectHandle", "handle_type": "device" },
|
|
{ "name": "request serial", "type": "uint64_t" },
|
|
{ "name": "status", "type": "create ready pipeline status" },
|
|
{ "name": "message", "type": "char", "annotation": "const*", "length": "strlen" }
|
|
],
|
|
"device create ready render pipeline callback": [
|
|
{ "name": "device", "type": "ObjectHandle", "handle_type": "device" },
|
|
{ "name": "request serial", "type": "uint64_t" },
|
|
{ "name": "status", "type": "create ready pipeline status" },
|
|
{ "name": "message", "type": "char", "annotation": "const*", "length": "strlen" }
|
|
],
|
|
"device uncaptured error callback": [
|
|
{ "name": "device", "type": "ObjectHandle", "handle_type": "device" },
|
|
{ "name": "type", "type": "error type"},
|
|
{ "name": "message", "type": "char", "annotation": "const*", "length": "strlen" }
|
|
],
|
|
"device lost callback" : [
|
|
{ "name": "device", "type": "ObjectHandle", "handle_type": "device" },
|
|
{ "name": "message", "type": "char", "annotation": "const*", "length": "strlen" }
|
|
],
|
|
"device pop error scope callback": [
|
|
{ "name": "device", "type": "ObjectHandle", "handle_type": "device" },
|
|
{ "name": "request serial", "type": "uint64_t" },
|
|
{ "name": "type", "type": "error type" },
|
|
{ "name": "message", "type": "char", "annotation": "const*", "length": "strlen" }
|
|
],
|
|
"fence on completion callback": [
|
|
{ "name": "fence", "type": "ObjectHandle", "handle_type": "fence" },
|
|
{ "name": "request serial", "type": "uint64_t" },
|
|
{ "name": "status", "type": "fence completion status" }
|
|
],
|
|
"fence update completed value": [
|
|
{ "name": "fence", "type": "ObjectHandle", "handle_type": "fence" },
|
|
{ "name": "value", "type": "uint64_t" }
|
|
]
|
|
},
|
|
"special items": {
|
|
"client_side_structures": [
|
|
"SurfaceDescriptorFromMetalLayer",
|
|
"SurfaceDescriptorFromWindowsHWND",
|
|
"SurfaceDescriptorFromXlib"
|
|
],
|
|
"client_side_commands": [
|
|
"BufferMapAsync",
|
|
"BufferGetConstMappedRange",
|
|
"BufferGetMappedRange",
|
|
"DeviceCreateBuffer",
|
|
"DeviceCreateReadyComputePipeline",
|
|
"DeviceCreateReadyRenderPipeline",
|
|
"DevicePopErrorScope",
|
|
"DeviceSetDeviceLostCallback",
|
|
"DeviceSetUncapturedErrorCallback",
|
|
"FenceGetCompletedValue",
|
|
"FenceOnCompletion",
|
|
"QueueWriteBuffer",
|
|
"QueueWriteTexture"
|
|
],
|
|
"client_handwritten_commands": [
|
|
"BufferDestroy",
|
|
"BufferUnmap",
|
|
"DeviceCreateErrorBuffer",
|
|
"DeviceGetDefaultQueue",
|
|
"DeviceGetQueue",
|
|
"DeviceInjectError",
|
|
"DevicePushErrorScope",
|
|
"QueueCreateFence"
|
|
],
|
|
"client_special_objects": [
|
|
"Buffer",
|
|
"Device",
|
|
"Fence",
|
|
"Queue"
|
|
],
|
|
"server_custom_pre_handler_commands": [
|
|
"BufferDestroy",
|
|
"BufferUnmap"
|
|
],
|
|
"server_handwritten_commands": [
|
|
"QueueSignal"
|
|
],
|
|
"server_reverse_lookup_objects": [
|
|
"Fence"
|
|
]
|
|
}
|
|
}
|