25#include <rocprofiler-sdk/defines.h>
27#include <rocprofiler-sdk/rocjpeg/details/rocjpeg_headers.h>
29#if ROCPROFILER_SDK_USE_SYSTEM_ROCJPEG > 0
30# include <rocjpeg/rocjpeg.h>
32# include <rocprofiler-sdk/rocjpeg/details/rocjpeg.h>
37ROCPROFILER_EXTERN_C_INIT
42typedef struct rocprofiler_rocjpeg_api_no_args
45} rocprofiler_rocjpeg_api_no_args;
47typedef union rocprofiler_rocjpeg_api_retval_t
49 int32_t rocJpegStatus_retval;
50 const char* const_charp_retval;
51} rocprofiler_rocjpeg_api_retval_t;
53typedef union rocprofiler_rocjpeg_api_args_t
57 RocJpegStreamHandle* jpeg_stream_handle;
58 } rocJpegStreamCreate;
62 const unsigned char* data;
64 RocJpegStreamHandle jpeg_stream_handle;
69 RocJpegStreamHandle jpeg_stream_handle;
70 } rocJpegStreamDestroy;
74 RocJpegBackend backend;
76 RocJpegHandle* handle;
87 RocJpegStreamHandle jpeg_stream_handle;
88 uint8_t* num_components;
89 RocJpegChromaSubsampling* subsampling;
92 } rocJpegGetImageInfo;
97 RocJpegStreamHandle jpeg_stream_handle;
98 const RocJpegDecodeParams* decode_params;
99 RocJpegImage* destination;
104 RocJpegHandle handle;
105 RocJpegStreamHandle* jpeg_stream_handles;
107 const RocJpegDecodeParams* decode_params;
108 RocJpegImage* destinations;
109 } rocJpegDecodeBatched;
113 RocJpegStatus rocjpeg_status;
114 } rocJpegGetErrorName;
115} rocprofiler_rocjpeg_api_args_t;
117ROCPROFILER_EXTERN_C_FINI