1/* This file is generated by venus-protocol. See vn_protocol_driver.h. */ 2 3/* 4 * Copyright 2020 Google LLC 5 * SPDX-License-Identifier: MIT 6 */ 7 8#ifndef VN_PROTOCOL_DRIVER_HANDLES_H 9#define VN_PROTOCOL_DRIVER_HANDLES_H 10 11#include "vn_protocol_driver_types.h" 12 13/* VK_DEFINE_HANDLE(VkInstance) */ 14 15static inline size_t 16vn_sizeof_VkInstance(const VkInstance *val) 17{ 18 return sizeof(uint64_t); 19} 20 21static inline void 22vn_encode_VkInstance(struct vn_cs_encoder *enc, const VkInstance *val) 23{ 24 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_INSTANCE); 25 vn_encode_uint64_t(enc, &id); 26} 27 28static inline void 29vn_decode_VkInstance(struct vn_cs_decoder *dec, VkInstance *val) 30{ 31 uint64_t id; 32 vn_decode_uint64_t(dec, &id); 33 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_INSTANCE); 34} 35 36/* VK_DEFINE_HANDLE(VkPhysicalDevice) */ 37 38static inline size_t 39vn_sizeof_VkPhysicalDevice(const VkPhysicalDevice *val) 40{ 41 return sizeof(uint64_t); 42} 43 44static inline void 45vn_encode_VkPhysicalDevice(struct vn_cs_encoder *enc, const VkPhysicalDevice *val) 46{ 47 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_PHYSICAL_DEVICE); 48 vn_encode_uint64_t(enc, &id); 49} 50 51static inline void 52vn_decode_VkPhysicalDevice(struct vn_cs_decoder *dec, VkPhysicalDevice *val) 53{ 54 uint64_t id; 55 vn_decode_uint64_t(dec, &id); 56 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_PHYSICAL_DEVICE); 57} 58 59/* VK_DEFINE_HANDLE(VkDevice) */ 60 61static inline size_t 62vn_sizeof_VkDevice(const VkDevice *val) 63{ 64 return sizeof(uint64_t); 65} 66 67static inline void 68vn_encode_VkDevice(struct vn_cs_encoder *enc, const VkDevice *val) 69{ 70 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_DEVICE); 71 vn_encode_uint64_t(enc, &id); 72} 73 74static inline void 75vn_decode_VkDevice(struct vn_cs_decoder *dec, VkDevice *val) 76{ 77 uint64_t id; 78 vn_decode_uint64_t(dec, &id); 79 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_DEVICE); 80} 81 82/* VK_DEFINE_HANDLE(VkQueue) */ 83 84static inline size_t 85vn_sizeof_VkQueue(const VkQueue *val) 86{ 87 return sizeof(uint64_t); 88} 89 90static inline void 91vn_encode_VkQueue(struct vn_cs_encoder *enc, const VkQueue *val) 92{ 93 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_QUEUE); 94 vn_encode_uint64_t(enc, &id); 95} 96 97static inline void 98vn_decode_VkQueue(struct vn_cs_decoder *dec, VkQueue *val) 99{ 100 uint64_t id; 101 vn_decode_uint64_t(dec, &id); 102 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_QUEUE); 103} 104 105/* VK_DEFINE_HANDLE(VkCommandBuffer) */ 106 107static inline size_t 108vn_sizeof_VkCommandBuffer(const VkCommandBuffer *val) 109{ 110 return sizeof(uint64_t); 111} 112 113static inline void 114vn_encode_VkCommandBuffer(struct vn_cs_encoder *enc, const VkCommandBuffer *val) 115{ 116 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_COMMAND_BUFFER); 117 vn_encode_uint64_t(enc, &id); 118} 119 120static inline void 121vn_decode_VkCommandBuffer(struct vn_cs_decoder *dec, VkCommandBuffer *val) 122{ 123 uint64_t id; 124 vn_decode_uint64_t(dec, &id); 125 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_COMMAND_BUFFER); 126} 127 128/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDeviceMemory) */ 129 130static inline size_t 131vn_sizeof_VkDeviceMemory(const VkDeviceMemory *val) 132{ 133 return sizeof(uint64_t); 134} 135 136static inline void 137vn_encode_VkDeviceMemory(struct vn_cs_encoder *enc, const VkDeviceMemory *val) 138{ 139 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_DEVICE_MEMORY); 140 vn_encode_uint64_t(enc, &id); 141} 142 143static inline void 144vn_decode_VkDeviceMemory(struct vn_cs_decoder *dec, VkDeviceMemory *val) 145{ 146 uint64_t id; 147 vn_decode_uint64_t(dec, &id); 148 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_DEVICE_MEMORY); 149} 150 151/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkCommandPool) */ 152 153static inline size_t 154vn_sizeof_VkCommandPool(const VkCommandPool *val) 155{ 156 return sizeof(uint64_t); 157} 158 159static inline void 160vn_encode_VkCommandPool(struct vn_cs_encoder *enc, const VkCommandPool *val) 161{ 162 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_COMMAND_POOL); 163 vn_encode_uint64_t(enc, &id); 164} 165 166static inline void 167vn_decode_VkCommandPool(struct vn_cs_decoder *dec, VkCommandPool *val) 168{ 169 uint64_t id; 170 vn_decode_uint64_t(dec, &id); 171 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_COMMAND_POOL); 172} 173 174/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBuffer) */ 175 176static inline size_t 177vn_sizeof_VkBuffer(const VkBuffer *val) 178{ 179 return sizeof(uint64_t); 180} 181 182static inline void 183vn_encode_VkBuffer(struct vn_cs_encoder *enc, const VkBuffer *val) 184{ 185 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_BUFFER); 186 vn_encode_uint64_t(enc, &id); 187} 188 189static inline void 190vn_decode_VkBuffer(struct vn_cs_decoder *dec, VkBuffer *val) 191{ 192 uint64_t id; 193 vn_decode_uint64_t(dec, &id); 194 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_BUFFER); 195} 196 197/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkBufferView) */ 198 199static inline size_t 200vn_sizeof_VkBufferView(const VkBufferView *val) 201{ 202 return sizeof(uint64_t); 203} 204 205static inline void 206vn_encode_VkBufferView(struct vn_cs_encoder *enc, const VkBufferView *val) 207{ 208 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_BUFFER_VIEW); 209 vn_encode_uint64_t(enc, &id); 210} 211 212static inline void 213vn_decode_VkBufferView(struct vn_cs_decoder *dec, VkBufferView *val) 214{ 215 uint64_t id; 216 vn_decode_uint64_t(dec, &id); 217 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_BUFFER_VIEW); 218} 219 220/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImage) */ 221 222static inline size_t 223vn_sizeof_VkImage(const VkImage *val) 224{ 225 return sizeof(uint64_t); 226} 227 228static inline void 229vn_encode_VkImage(struct vn_cs_encoder *enc, const VkImage *val) 230{ 231 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_IMAGE); 232 vn_encode_uint64_t(enc, &id); 233} 234 235static inline void 236vn_decode_VkImage(struct vn_cs_decoder *dec, VkImage *val) 237{ 238 uint64_t id; 239 vn_decode_uint64_t(dec, &id); 240 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_IMAGE); 241} 242 243/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkImageView) */ 244 245static inline size_t 246vn_sizeof_VkImageView(const VkImageView *val) 247{ 248 return sizeof(uint64_t); 249} 250 251static inline void 252vn_encode_VkImageView(struct vn_cs_encoder *enc, const VkImageView *val) 253{ 254 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_IMAGE_VIEW); 255 vn_encode_uint64_t(enc, &id); 256} 257 258static inline void 259vn_decode_VkImageView(struct vn_cs_decoder *dec, VkImageView *val) 260{ 261 uint64_t id; 262 vn_decode_uint64_t(dec, &id); 263 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_IMAGE_VIEW); 264} 265 266/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkShaderModule) */ 267 268static inline size_t 269vn_sizeof_VkShaderModule(const VkShaderModule *val) 270{ 271 return sizeof(uint64_t); 272} 273 274static inline void 275vn_encode_VkShaderModule(struct vn_cs_encoder *enc, const VkShaderModule *val) 276{ 277 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_SHADER_MODULE); 278 vn_encode_uint64_t(enc, &id); 279} 280 281static inline void 282vn_decode_VkShaderModule(struct vn_cs_decoder *dec, VkShaderModule *val) 283{ 284 uint64_t id; 285 vn_decode_uint64_t(dec, &id); 286 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_SHADER_MODULE); 287} 288 289/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipeline) */ 290 291static inline size_t 292vn_sizeof_VkPipeline(const VkPipeline *val) 293{ 294 return sizeof(uint64_t); 295} 296 297static inline void 298vn_encode_VkPipeline(struct vn_cs_encoder *enc, const VkPipeline *val) 299{ 300 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_PIPELINE); 301 vn_encode_uint64_t(enc, &id); 302} 303 304static inline void 305vn_decode_VkPipeline(struct vn_cs_decoder *dec, VkPipeline *val) 306{ 307 uint64_t id; 308 vn_decode_uint64_t(dec, &id); 309 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_PIPELINE); 310} 311 312/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineLayout) */ 313 314static inline size_t 315vn_sizeof_VkPipelineLayout(const VkPipelineLayout *val) 316{ 317 return sizeof(uint64_t); 318} 319 320static inline void 321vn_encode_VkPipelineLayout(struct vn_cs_encoder *enc, const VkPipelineLayout *val) 322{ 323 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_PIPELINE_LAYOUT); 324 vn_encode_uint64_t(enc, &id); 325} 326 327static inline void 328vn_decode_VkPipelineLayout(struct vn_cs_decoder *dec, VkPipelineLayout *val) 329{ 330 uint64_t id; 331 vn_decode_uint64_t(dec, &id); 332 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_PIPELINE_LAYOUT); 333} 334 335/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSampler) */ 336 337static inline size_t 338vn_sizeof_VkSampler(const VkSampler *val) 339{ 340 return sizeof(uint64_t); 341} 342 343static inline void 344vn_encode_VkSampler(struct vn_cs_encoder *enc, const VkSampler *val) 345{ 346 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_SAMPLER); 347 vn_encode_uint64_t(enc, &id); 348} 349 350static inline void 351vn_decode_VkSampler(struct vn_cs_decoder *dec, VkSampler *val) 352{ 353 uint64_t id; 354 vn_decode_uint64_t(dec, &id); 355 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_SAMPLER); 356} 357 358/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSet) */ 359 360static inline size_t 361vn_sizeof_VkDescriptorSet(const VkDescriptorSet *val) 362{ 363 return sizeof(uint64_t); 364} 365 366static inline void 367vn_encode_VkDescriptorSet(struct vn_cs_encoder *enc, const VkDescriptorSet *val) 368{ 369 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_DESCRIPTOR_SET); 370 vn_encode_uint64_t(enc, &id); 371} 372 373static inline void 374vn_decode_VkDescriptorSet(struct vn_cs_decoder *dec, VkDescriptorSet *val) 375{ 376 uint64_t id; 377 vn_decode_uint64_t(dec, &id); 378 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_DESCRIPTOR_SET); 379} 380 381/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorSetLayout) */ 382 383static inline size_t 384vn_sizeof_VkDescriptorSetLayout(const VkDescriptorSetLayout *val) 385{ 386 return sizeof(uint64_t); 387} 388 389static inline void 390vn_encode_VkDescriptorSetLayout(struct vn_cs_encoder *enc, const VkDescriptorSetLayout *val) 391{ 392 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT); 393 vn_encode_uint64_t(enc, &id); 394} 395 396static inline void 397vn_decode_VkDescriptorSetLayout(struct vn_cs_decoder *dec, VkDescriptorSetLayout *val) 398{ 399 uint64_t id; 400 vn_decode_uint64_t(dec, &id); 401 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_DESCRIPTOR_SET_LAYOUT); 402} 403 404/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorPool) */ 405 406static inline size_t 407vn_sizeof_VkDescriptorPool(const VkDescriptorPool *val) 408{ 409 return sizeof(uint64_t); 410} 411 412static inline void 413vn_encode_VkDescriptorPool(struct vn_cs_encoder *enc, const VkDescriptorPool *val) 414{ 415 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_DESCRIPTOR_POOL); 416 vn_encode_uint64_t(enc, &id); 417} 418 419static inline void 420vn_decode_VkDescriptorPool(struct vn_cs_decoder *dec, VkDescriptorPool *val) 421{ 422 uint64_t id; 423 vn_decode_uint64_t(dec, &id); 424 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_DESCRIPTOR_POOL); 425} 426 427/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFence) */ 428 429static inline size_t 430vn_sizeof_VkFence(const VkFence *val) 431{ 432 return sizeof(uint64_t); 433} 434 435static inline void 436vn_encode_VkFence(struct vn_cs_encoder *enc, const VkFence *val) 437{ 438 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_FENCE); 439 vn_encode_uint64_t(enc, &id); 440} 441 442static inline void 443vn_decode_VkFence(struct vn_cs_decoder *dec, VkFence *val) 444{ 445 uint64_t id; 446 vn_decode_uint64_t(dec, &id); 447 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_FENCE); 448} 449 450/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSemaphore) */ 451 452static inline size_t 453vn_sizeof_VkSemaphore(const VkSemaphore *val) 454{ 455 return sizeof(uint64_t); 456} 457 458static inline void 459vn_encode_VkSemaphore(struct vn_cs_encoder *enc, const VkSemaphore *val) 460{ 461 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_SEMAPHORE); 462 vn_encode_uint64_t(enc, &id); 463} 464 465static inline void 466vn_decode_VkSemaphore(struct vn_cs_decoder *dec, VkSemaphore *val) 467{ 468 uint64_t id; 469 vn_decode_uint64_t(dec, &id); 470 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_SEMAPHORE); 471} 472 473/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkEvent) */ 474 475static inline size_t 476vn_sizeof_VkEvent(const VkEvent *val) 477{ 478 return sizeof(uint64_t); 479} 480 481static inline void 482vn_encode_VkEvent(struct vn_cs_encoder *enc, const VkEvent *val) 483{ 484 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_EVENT); 485 vn_encode_uint64_t(enc, &id); 486} 487 488static inline void 489vn_decode_VkEvent(struct vn_cs_decoder *dec, VkEvent *val) 490{ 491 uint64_t id; 492 vn_decode_uint64_t(dec, &id); 493 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_EVENT); 494} 495 496/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkQueryPool) */ 497 498static inline size_t 499vn_sizeof_VkQueryPool(const VkQueryPool *val) 500{ 501 return sizeof(uint64_t); 502} 503 504static inline void 505vn_encode_VkQueryPool(struct vn_cs_encoder *enc, const VkQueryPool *val) 506{ 507 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_QUERY_POOL); 508 vn_encode_uint64_t(enc, &id); 509} 510 511static inline void 512vn_decode_VkQueryPool(struct vn_cs_decoder *dec, VkQueryPool *val) 513{ 514 uint64_t id; 515 vn_decode_uint64_t(dec, &id); 516 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_QUERY_POOL); 517} 518 519/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkFramebuffer) */ 520 521static inline size_t 522vn_sizeof_VkFramebuffer(const VkFramebuffer *val) 523{ 524 return sizeof(uint64_t); 525} 526 527static inline void 528vn_encode_VkFramebuffer(struct vn_cs_encoder *enc, const VkFramebuffer *val) 529{ 530 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_FRAMEBUFFER); 531 vn_encode_uint64_t(enc, &id); 532} 533 534static inline void 535vn_decode_VkFramebuffer(struct vn_cs_decoder *dec, VkFramebuffer *val) 536{ 537 uint64_t id; 538 vn_decode_uint64_t(dec, &id); 539 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_FRAMEBUFFER); 540} 541 542/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkRenderPass) */ 543 544static inline size_t 545vn_sizeof_VkRenderPass(const VkRenderPass *val) 546{ 547 return sizeof(uint64_t); 548} 549 550static inline void 551vn_encode_VkRenderPass(struct vn_cs_encoder *enc, const VkRenderPass *val) 552{ 553 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_RENDER_PASS); 554 vn_encode_uint64_t(enc, &id); 555} 556 557static inline void 558vn_decode_VkRenderPass(struct vn_cs_decoder *dec, VkRenderPass *val) 559{ 560 uint64_t id; 561 vn_decode_uint64_t(dec, &id); 562 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_RENDER_PASS); 563} 564 565/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPipelineCache) */ 566 567static inline size_t 568vn_sizeof_VkPipelineCache(const VkPipelineCache *val) 569{ 570 return sizeof(uint64_t); 571} 572 573static inline void 574vn_encode_VkPipelineCache(struct vn_cs_encoder *enc, const VkPipelineCache *val) 575{ 576 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_PIPELINE_CACHE); 577 vn_encode_uint64_t(enc, &id); 578} 579 580static inline void 581vn_decode_VkPipelineCache(struct vn_cs_decoder *dec, VkPipelineCache *val) 582{ 583 uint64_t id; 584 vn_decode_uint64_t(dec, &id); 585 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_PIPELINE_CACHE); 586} 587 588/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkDescriptorUpdateTemplate) */ 589 590static inline size_t 591vn_sizeof_VkDescriptorUpdateTemplate(const VkDescriptorUpdateTemplate *val) 592{ 593 return sizeof(uint64_t); 594} 595 596static inline void 597vn_encode_VkDescriptorUpdateTemplate(struct vn_cs_encoder *enc, const VkDescriptorUpdateTemplate *val) 598{ 599 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE); 600 vn_encode_uint64_t(enc, &id); 601} 602 603static inline void 604vn_decode_VkDescriptorUpdateTemplate(struct vn_cs_decoder *dec, VkDescriptorUpdateTemplate *val) 605{ 606 uint64_t id; 607 vn_decode_uint64_t(dec, &id); 608 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_DESCRIPTOR_UPDATE_TEMPLATE); 609} 610 611/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkSamplerYcbcrConversion) */ 612 613static inline size_t 614vn_sizeof_VkSamplerYcbcrConversion(const VkSamplerYcbcrConversion *val) 615{ 616 return sizeof(uint64_t); 617} 618 619static inline void 620vn_encode_VkSamplerYcbcrConversion(struct vn_cs_encoder *enc, const VkSamplerYcbcrConversion *val) 621{ 622 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION); 623 vn_encode_uint64_t(enc, &id); 624} 625 626static inline void 627vn_decode_VkSamplerYcbcrConversion(struct vn_cs_decoder *dec, VkSamplerYcbcrConversion *val) 628{ 629 uint64_t id; 630 vn_decode_uint64_t(dec, &id); 631 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_SAMPLER_YCBCR_CONVERSION); 632} 633 634/* VK_DEFINE_NON_DISPATCHABLE_HANDLE(VkPrivateDataSlot) */ 635 636static inline size_t 637vn_sizeof_VkPrivateDataSlot(const VkPrivateDataSlot *val) 638{ 639 return sizeof(uint64_t); 640} 641 642static inline void 643vn_encode_VkPrivateDataSlot(struct vn_cs_encoder *enc, const VkPrivateDataSlot *val) 644{ 645 const uint64_t id = vn_cs_handle_load_id((const void **)val, VK_OBJECT_TYPE_PRIVATE_DATA_SLOT); 646 vn_encode_uint64_t(enc, &id); 647} 648 649static inline void 650vn_decode_VkPrivateDataSlot(struct vn_cs_decoder *dec, VkPrivateDataSlot *val) 651{ 652 uint64_t id; 653 vn_decode_uint64_t(dec, &id); 654 vn_cs_handle_store_id((void **)val, id, VK_OBJECT_TYPE_PRIVATE_DATA_SLOT); 655} 656 657#endif /* VN_PROTOCOL_DRIVER_HANDLES_H */ 658