bool opj_tile_buf_alloc_component_data_encode(opj_tile_buf_component_t* buf) { if (!buf) return false; if ((buf->data == 00) || ((buf->data_size_needed > buf->data_size) && (buf->owns_data == false))) { buf->data = (int32_t *)opj_aligned_malloc(buf->data_size_needed); if (!buf->data) { return false; } buf->data_size = buf->data_size_needed; buf->owns_data = true; } else if (buf->data_size_needed > buf->data_size) { /* We don't need to keep old data */ opj_aligned_free(buf->data); buf->data = (int32_t *)opj_aligned_malloc(buf->data_size_needed); if (!buf->data) { buf->data_size = 0; buf->data_size_needed = 0; buf->owns_data = false; return false; } buf->data_size = buf->data_size_needed; buf->owns_data = true; } return true; }
bool OPJ_CALLCONV opj_image_single_component_data_alloc(opj_image_comp_t* comp) { int32_t* data = NULL; if (!comp) return false; data = (int32_t*)opj_aligned_malloc(comp->w * comp->h * sizeof(uint32_t)); if (!data) return false; opj_image_single_component_data_free(comp); comp->data = data; return true; }
bool opj_tile_buf_alloc_component_data_decode(opj_tile_buf_component_t* buf) { if (!buf) return false; if (!buf->data ) { int64_t area = opj_rect_get_area(&buf->tile_dim); if (area) { buf->data = (int32_t *)opj_aligned_malloc(area * sizeof(int32_t)); if (!buf->data) { return false; } } buf->data_size = area * sizeof(int32_t); buf->data_size_needed = buf->data_size; buf->owns_data = true; } return true; }
void* OPJ_CALLCONV opj_image_data_alloc(OPJ_SIZE_T size) { void* ret = opj_aligned_malloc(size); /* printf("opj_image_data_alloc %p\n", ret); */ return ret; }