| 83 | |
| 84 | template<typename T> |
| 85 | inline nvcv::DataType GetDataType() |
| 86 | { |
| 87 | #define CVCUDA_BENCH_GET_DATA_TYPE(TYPE, DATA_TYPE) \ |
| 88 | if constexpr (std::is_same_v<T, TYPE>) \ |
| 89 | { \ |
| 90 | return DATA_TYPE; \ |
| 91 | } |
| 92 | |
| 93 | CVCUDA_BENCH_GET_DATA_TYPE(uint8_t, nvcv::TYPE_U8); |
| 94 | CVCUDA_BENCH_GET_DATA_TYPE(uint16_t, nvcv::TYPE_U16); |
| 95 | CVCUDA_BENCH_GET_DATA_TYPE(uint32_t, nvcv::TYPE_U32); |
| 96 | |
| 97 | CVCUDA_BENCH_GET_DATA_TYPE(uchar3, nvcv::TYPE_3U8); |
| 98 | CVCUDA_BENCH_GET_DATA_TYPE(uchar4, nvcv::TYPE_4U8); |
| 99 | CVCUDA_BENCH_GET_DATA_TYPE(float, nvcv::TYPE_F32); |
| 100 | |
| 101 | CVCUDA_BENCH_GET_DATA_TYPE(float3, nvcv::TYPE_3F32); |
| 102 | CVCUDA_BENCH_GET_DATA_TYPE(float4, nvcv::TYPE_4F32); |
| 103 | |
| 104 | CVCUDA_BENCH_GET_DATA_TYPE(int, nvcv::TYPE_S32); |
| 105 | |
| 106 | CVCUDA_BENCH_GET_DATA_TYPE(short, nvcv::TYPE_S16); |
| 107 | |
| 108 | CVCUDA_BENCH_GET_DATA_TYPE(ushort3, nvcv::TYPE_3U16); |
| 109 | CVCUDA_BENCH_GET_DATA_TYPE(ushort4, nvcv::TYPE_4U16); |
| 110 | CVCUDA_BENCH_GET_DATA_TYPE(short4, nvcv::TYPE_4S16); |
| 111 | |
| 112 | #undef CVCUDA_BENCH_GET_DATA_TYPE |
| 113 | |
| 114 | throw std::invalid_argument("Unexpected data type"); |
| 115 | } |
| 116 | |
| 117 | template<typename T> |
| 118 | inline nvcv::ImageFormat GetFormat() |
nothing calls this directly
no outgoing calls
no test coverage detected