Home | History | Annotate | Line # | Download | only in vulkan
      1 /*
      2  * Copyright 2019 Google LLC
      3  * SPDX-License-Identifier: MIT
      4  *
      5  * based in part on anv and radv which are:
      6  * Copyright  2015 Intel Corporation
      7  * Copyright  2016 Red Hat.
      8  * Copyright  2016 Bas Nieuwenhuizen
      9  */
     10 
     11 #ifndef VN_PIPELINE_H
     12 #define VN_PIPELINE_H
     13 
     14 #include "vn_common.h"
     15 
     16 struct vn_shader_module {
     17    struct vn_object_base base;
     18 };
     19 VK_DEFINE_NONDISP_HANDLE_CASTS(vn_shader_module,
     20                                base.base,
     21                                VkShaderModule,
     22                                VK_OBJECT_TYPE_SHADER_MODULE)
     23 
     24 struct vn_pipeline_layout {
     25    struct vn_object_base base;
     26 };
     27 VK_DEFINE_NONDISP_HANDLE_CASTS(vn_pipeline_layout,
     28                                base.base,
     29                                VkPipelineLayout,
     30                                VK_OBJECT_TYPE_PIPELINE_LAYOUT)
     31 
     32 struct vn_pipeline_cache {
     33    struct vn_object_base base;
     34 };
     35 VK_DEFINE_NONDISP_HANDLE_CASTS(vn_pipeline_cache,
     36                                base.base,
     37                                VkPipelineCache,
     38                                VK_OBJECT_TYPE_PIPELINE_CACHE)
     39 
     40 struct vn_pipeline {
     41    struct vn_object_base base;
     42 };
     43 VK_DEFINE_NONDISP_HANDLE_CASTS(vn_pipeline,
     44                                base.base,
     45                                VkPipeline,
     46                                VK_OBJECT_TYPE_PIPELINE)
     47 
     48 #endif /* VN_PIPELINE_H */
     49