9 // void* idct_example_alloc(const uint32_t* quant_table);
10 typedef void* (idct_alloc_t)(const uint32_t*);
12 // void idct_example_free(const void* userdata);
13 // userdata is the same as returned by the alloc function.
14 typedef void (idct_free_t)(void*);
16 // void idct_example(const int16_t* input, const void* userdata, uint8_t* output);
17 // userdata is the same as returned by the alloc function.
18 typedef void (idct_func_t)(const int16_t*, const void*, uint8_t*);
20 // Non-factorized reference version (section A.3.3 of the JPEG standard).
21 void* idct_reference_alloc(const uint32_t* quant_table);
22 void idct_reference_free(void* userdata);
23 void idct_reference(const int16_t* input, const void* userdata, uint8_t* output);
25 // Floating-point IDCT due to Arai, Agui and Nakajima (also known as AA&N).
26 // See idct.c for more details.
27 void* idct_float_alloc(const uint32_t* quant_table);
28 void idct_float_free(void* userdata);
29 void idct_float(const int16_t* input, const void* userdata, uint8_t* output);
31 #endif /* !defined(_IDCT_H) */