static void deleteMidBufs (PINST g) { PRINT0 (_T("deleteMidBufs\n")); if (g->pbMidInBuf != NULL) IP_MEM_FREE (g->pbMidInBuf); if (g->pbMidOutBuf != NULL) IP_MEM_FREE (g->pbMidOutBuf); g->pbMidInBuf = NULL; g->pbMidOutBuf = NULL; }
static WORD thumb_closeXform (IP_XFORM_HANDLE hXform) { PTN_INST g; HANDLE_TO_PTR (hXform, g); if (g->pulSums != NULL) IP_MEM_FREE (g->pulSums); g->dwValidChk = 0; IP_MEM_FREE (g); /* free memory for the instance */ return IP_DONE; fatal_error: return IP_FATAL_ERROR; }
EXPORT(WORD) ipClose (IP_HANDLE hJob) { PINST g; PXFORM_INFO pXform; WORD n; PRINT0 (_T("ipClose: hJob=%p\n"), (void*)hJob); HANDLE_TO_PTR (hJob, g); /**** Delete All Buffers ****/ deleteMidBufs (g); g->dwMidLen = 0; g->dwMidValidLen = 0; if (g->gbIn.pbBuf != NULL) IP_MEM_FREE (g->gbIn.pbBuf); if (g->gbOut.pbBuf != NULL) IP_MEM_FREE (g->gbOut.pbBuf); /**** Delete All Xform Instances ****/ for (n=0; n<g->xfCount; n++) { pXform = &(g->xfArray[n]); if (pXform->hXform != NULL) pXform->pXform->closeXform (pXform->hXform); } IP_MEM_FREE (g); /* Delete our instance, and we're done */ #ifdef HPIP_DEBUG close(infd); close(outfd); #endif return IP_DONE; fatal_error: return IP_FATAL_ERROR; }
FUNC_STATUS WORD invert_closeXform (IP_XFORM_HANDLE hXform) { PINVERT_INST g; HANDLE_TO_PTR (hXform, g); g->dwValidChk = 0; IP_MEM_FREE (g); /* free memory for the instance */ return IP_DONE; fatal_error: return IP_FATAL_ERROR; }
static WORD tonemap_closeXform (IP_XFORM_HANDLE hXform) { PTMAP_INST g; HANDLE_TO_PTR (hXform, g); g->dwValidChk = 0; IP_MEM_FREE (g); /* free memory for the instance */ return IP_DONE; fatal_error: return IP_FATAL_ERROR; }