UIImage
以下の関数では、作成されたポインターを返そうとしていますNSData
- オプションを指定すると、ここから返され
freeWhenDone = YES
たUIImage
表示は白い画像です。 私がオプションを与えるとき
freeWhenDone = NO
UIImage
ここで返されたフォームは、黒いイメージとして表示されます。rgb_buffer
function1 と function2の代わりに (char array)を渡す[rgbData bytes]
と、正しく機能します。すべて順調。
ARCと関係あるの?
Myfunction
{
char *pu1_out_buffer = malloc(length);
int width, height, stride;
char *rgb_buffer = malloc(BUFFER_LENGTH);
pu1_out_buffer = datafromfile(FILE_PATH) // initialized with some data , not important
/* rgb NSdata created from malloced rub buffer */
NSMutableData *rgbData = [NSMutableData dataWithBytesNoCopy:rgb_buffer
length:(u4_stride * u4_height * 3)
freeWhenDone:YES];
[self function1:pu1_out_buffer
rgb_buffer:(UWORD16 *)[rgbData bytes]
…]
free(pu1_out_buffer);
UIImage *outUIImage = [self function2:rgbData
width:u4_width
height:u4_height
stride:u4_stride];
return outUIImage;
}