У меня есть изображение, хранящееся в указателе на char, и я хочу использовать на нем функции ipp. Как создать образ Ipp8u * в ipp от этого указателя на char? Это тяжелый расчет (строительство)? Могу ли я сделать простое литье? Большое спасибоО построении изображения ipp
4
A
ответ
2
Да, все, что вам нужно сделать, это привести указатель:
Ipp8u *ipp_data = static_cast<Ipp8u*>(your_data);
или, если вы предпочитаете C-стиле бросает по некоторым причинам:
Ipp8u *ipp_data = (Ipp8u *)your_data;
Как отмечалось в Intel documentation, Ipp8u
эквивалентен C unsigned char
- по крайней мере, в типичной реализации, где CHAR_BIT == 8
. Это не требуется, но я считаю, что это относится к большинству (если не все) compilers/platforms supported by Intel-IPP.
Подумайте, почему они говорят 'unsigned char', а не' uint8_t', что более явным. –
@ MahmoudAl-Qudsi: Я могу только догадываться, потому что 'unsigned char' является более распространенным/широко известным, но я должен согласиться с тем, что uint8_t действительно будет соответствовать описанию более точно. –