MCPcopy Create free account
hub / github.com/cinder/Cinder / FreeEXRImage

Function FreeEXRImage

include/tinyexr/tinyexr.h:8660–8695  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

8658}
8659
8660int FreeEXRImage(EXRImage *exr_image) {
8661 if (exr_image == NULL) {
8662 return TINYEXR_ERROR_INVALID_ARGUMENT;
8663 }
8664
8665 if (exr_image->next_level) {
8666 FreeEXRImage(exr_image->next_level);
8667 delete exr_image->next_level;
8668 }
8669
8670 for (int i = 0; i < exr_image->num_channels; i++) {
8671 if (exr_image->images && exr_image->images[i]) {
8672 free(exr_image->images[i]);
8673 }
8674 }
8675
8676 if (exr_image->images) {
8677 free(exr_image->images);
8678 }
8679
8680 if (exr_image->tiles) {
8681 for (int tid = 0; tid < exr_image->num_tiles; tid++) {
8682 for (int i = 0; i < exr_image->num_channels; i++) {
8683 if (exr_image->tiles[tid].images && exr_image->tiles[tid].images[i]) {
8684 free(exr_image->tiles[tid].images[i]);
8685 }
8686 }
8687 if (exr_image->tiles[tid].images) {
8688 free(exr_image->tiles[tid].images);
8689 }
8690 }
8691 free(exr_image->tiles);
8692 }
8693
8694 return TINYEXR_SUCCESS;
8695}
8696
8697int ParseEXRHeaderFromFile(EXRHeader *exr_header, const EXRVersion *exr_version,
8698 const char *filename, const char **err) {

Callers 3

DecodeEXRImageFunction · 0.85
LoadEXRWithLayerFunction · 0.85
LoadEXRFromMemoryFunction · 0.85

Calls

no outgoing calls

Tested by

no test coverage detected