/* ** bins own the points they contain- so this frees them */ void _pullBinDone(pullBin *bin) { unsigned int idx; for (idx=0; idx<bin->pointNum; idx++) { bin->point[idx] = pullPointNix(bin->point[idx]); } bin->pointArr = airArrayNuke(bin->pointArr); bin->neighBin = (pullBin **)airFree(bin->neighBin); return; }
pullTask * _pullTaskNix(pullTask *task) { unsigned int ii; if (task) { for (ii=0; ii<task->pctx->volNum; ii++) { task->vol[ii] = pullVolumeNix(task->vol[ii]); } if (task->pctx->threadNum > 1) { task->thread = airThreadNix(task->thread); } task->rng = airRandMTStateNix(task->rng); task->pointBuffer = pullPointNix(task->pointBuffer); task->neighPoint = airFree(task->neighPoint); airFree(task); } return NULL; }