|
10 | 10 |
|
11 | 11 | #include "common.hpp"
|
12 | 12 |
|
13 |
| -#include <unordered_map> |
14 |
| - |
15 |
| -const std::unordered_map<ur_image_channel_order_t, cl_channel_order> |
16 |
| - ChannelOrderMap = { |
17 |
| - {UR_IMAGE_CHANNEL_ORDER_A, CL_A}, |
18 |
| - {UR_IMAGE_CHANNEL_ORDER_R, CL_R}, |
19 |
| - {UR_IMAGE_CHANNEL_ORDER_RG, CL_RG}, |
20 |
| - {UR_IMAGE_CHANNEL_ORDER_RA, CL_RA}, |
21 |
| - {UR_IMAGE_CHANNEL_ORDER_RGB, CL_RGB}, |
22 |
| - {UR_IMAGE_CHANNEL_ORDER_RGBA, CL_RGBA}, |
23 |
| - {UR_IMAGE_CHANNEL_ORDER_BGRA, CL_BGRA}, |
24 |
| - {UR_IMAGE_CHANNEL_ORDER_ARGB, CL_ARGB}, |
25 |
| - {UR_IMAGE_CHANNEL_ORDER_ABGR, CL_ABGR}, |
26 |
| - {UR_IMAGE_CHANNEL_ORDER_INTENSITY, CL_INTENSITY}, |
27 |
| - {UR_IMAGE_CHANNEL_ORDER_LUMINANCE, CL_LUMINANCE}, |
28 |
| - {UR_IMAGE_CHANNEL_ORDER_RX, CL_Rx}, |
29 |
| - {UR_IMAGE_CHANNEL_ORDER_RGX, CL_RGx}, |
30 |
| - {UR_IMAGE_CHANNEL_ORDER_RGBX, CL_RGBx}, |
31 |
| - {UR_IMAGE_CHANNEL_ORDER_SRGBA, CL_sRGBA}, |
32 |
| -}; |
33 |
| - |
34 |
| -const std::unordered_map<ur_image_channel_type_t, cl_channel_type> |
35 |
| - ChannelTypeMap = { |
36 |
| - {UR_IMAGE_CHANNEL_TYPE_SNORM_INT8, CL_SNORM_INT8}, |
37 |
| - {UR_IMAGE_CHANNEL_TYPE_SNORM_INT16, CL_SNORM_INT16}, |
38 |
| - {UR_IMAGE_CHANNEL_TYPE_UNORM_INT8, CL_UNORM_INT8}, |
39 |
| - {UR_IMAGE_CHANNEL_TYPE_UNORM_INT16, CL_UNORM_INT16}, |
40 |
| - {UR_IMAGE_CHANNEL_TYPE_UNORM_SHORT_565, CL_UNORM_SHORT_565}, |
41 |
| - {UR_IMAGE_CHANNEL_TYPE_UNORM_SHORT_555, CL_UNORM_SHORT_555}, |
42 |
| - {UR_IMAGE_CHANNEL_TYPE_INT_101010, CL_UNORM_INT_101010}, |
43 |
| - {UR_IMAGE_CHANNEL_TYPE_SIGNED_INT8, CL_SIGNED_INT8}, |
44 |
| - {UR_IMAGE_CHANNEL_TYPE_SIGNED_INT16, CL_SIGNED_INT16}, |
45 |
| - {UR_IMAGE_CHANNEL_TYPE_SIGNED_INT32, CL_SIGNED_INT32}, |
46 |
| - {UR_IMAGE_CHANNEL_TYPE_UNSIGNED_INT8, CL_UNSIGNED_INT8}, |
47 |
| - {UR_IMAGE_CHANNEL_TYPE_UNSIGNED_INT16, CL_UNSIGNED_INT16}, |
48 |
| - {UR_IMAGE_CHANNEL_TYPE_UNSIGNED_INT32, CL_UNSIGNED_INT32}, |
49 |
| - {UR_IMAGE_CHANNEL_TYPE_HALF_FLOAT, CL_HALF_FLOAT}, |
50 |
| - {UR_IMAGE_CHANNEL_TYPE_FLOAT, CL_FLOAT}, |
51 |
| -}; |
52 |
| - |
53 |
| -cl_image_format mapURImageFormatToCL(const ur_image_format_t &PImageFormat) { |
54 |
| - cl_image_format CLImageFormat = {UR_IMAGE_CHANNEL_ORDER_FORCE_UINT32, |
55 |
| - UR_IMAGE_CHANNEL_TYPE_FORCE_UINT32}; |
56 |
| - |
57 |
| - auto channelOrderIt = ChannelOrderMap.find(PImageFormat.channelOrder); |
58 |
| - if (channelOrderIt != ChannelOrderMap.end()) { |
59 |
| - CLImageFormat.image_channel_order = channelOrderIt->second; |
60 |
| - } |
61 |
| - |
62 |
| - auto channelTypeIt = ChannelTypeMap.find(PImageFormat.channelType); |
63 |
| - if (channelTypeIt != ChannelTypeMap.end()) { |
64 |
| - CLImageFormat.image_channel_data_type = channelTypeIt->second; |
65 |
| - } |
66 |
| - |
67 |
| - return CLImageFormat; |
68 |
| -} |
69 |
| - |
70 |
| -ur_image_format_t mapCLImageFormatToUR(const cl_image_format *PImageFormat) { |
71 |
| - ur_image_format_t URImageFormat = {UR_IMAGE_CHANNEL_ORDER_FORCE_UINT32, |
72 |
| - UR_IMAGE_CHANNEL_TYPE_FORCE_UINT32}; |
73 |
| - |
74 |
| - auto reverseChannelOrderIt = |
75 |
| - std::find_if(ChannelOrderMap.begin(), ChannelOrderMap.end(), |
76 |
| - [PImageFormat](const auto &pair) { |
77 |
| - return pair.second == PImageFormat->image_channel_order; |
78 |
| - }); |
79 |
| - if (reverseChannelOrderIt != ChannelOrderMap.end()) { |
80 |
| - URImageFormat.channelOrder = reverseChannelOrderIt->first; |
81 |
| - } |
82 |
| - |
83 |
| - URImageFormat.channelOrder = (reverseChannelOrderIt != ChannelOrderMap.end()) |
84 |
| - ? reverseChannelOrderIt->first |
85 |
| - : UR_IMAGE_CHANNEL_ORDER_FORCE_UINT32; |
86 |
| - |
87 |
| - auto reverseChannelTypeIt = std::find_if( |
88 |
| - ChannelTypeMap.begin(), ChannelTypeMap.end(), |
89 |
| - [PImageFormat](const auto &pair) { |
90 |
| - return pair.second == PImageFormat->image_channel_data_type; |
91 |
| - }); |
92 |
| - if (reverseChannelTypeIt != ChannelTypeMap.end()) { |
93 |
| - URImageFormat.channelType = reverseChannelTypeIt->first; |
94 |
| - } |
95 |
| - |
96 |
| - return URImageFormat; |
97 |
| -} |
98 |
| - |
99 | 13 | cl_image_format mapURImageFormatToCL(const ur_image_format_t *PImageFormat) {
|
100 | 14 | cl_image_format CLImageFormat;
|
101 | 15 | switch (PImageFormat->channelOrder) {
|
@@ -260,12 +174,6 @@ cl_int mapURMemImageInfoToCL(ur_image_info_t URPropName) {
|
260 | 174 | return CL_IMAGE_HEIGHT;
|
261 | 175 | case UR_IMAGE_INFO_DEPTH:
|
262 | 176 | return CL_IMAGE_DEPTH;
|
263 |
| - case UR_IMAGE_INFO_ARRAY_SIZE: |
264 |
| - return CL_IMAGE_ARRAY_SIZE; |
265 |
| - case UR_IMAGE_INFO_NUM_MIP_LEVELS: |
266 |
| - return CL_IMAGE_NUM_MIP_LEVELS; |
267 |
| - case UR_IMAGE_INFO_NUM_SAMPLES: |
268 |
| - return CL_IMAGE_NUM_SAMPLES; |
269 | 177 | default:
|
270 | 178 | return -1;
|
271 | 179 | }
|
@@ -489,14 +397,7 @@ UR_APIEXPORT ur_result_t UR_APICALL urMemImageGetInfo(ur_mem_handle_t hMemory,
|
489 | 397 | CL_RETURN_ON_FAILURE(ClResult);
|
490 | 398 | if (pPropSizeRet) {
|
491 | 399 | *pPropSizeRet = CheckPropSize;
|
492 |
| - } else { |
493 |
| - if (propName == UR_IMAGE_INFO_FORMAT) { |
494 |
| - ur_image_format_t format = mapCLImageFormatToUR( |
495 |
| - reinterpret_cast<const cl_image_format *>(pPropValue)); |
496 |
| - return ReturnValue(format); |
497 |
| - } |
498 | 400 | }
|
499 |
| - |
500 | 401 | return UR_RESULT_SUCCESS;
|
501 | 402 | }
|
502 | 403 |
|
|
0 commit comments