Woolz Image Processing
Version 1.7.5
|
Files | |
file | AlcFreeStack.c |
A general purpose free stack which allows a single pointer to be used to keep a list of data to be free'd. | |
Functions | |
void * | AlcFreeStackPush (void *prev, void *data, AlcErrno *dstErr) |
Push's the given pointer onto the free stack on top of the previous free stack pointer. More... | |
void * | AlcFreeStackPop (void *prev, void **dstData, AlcErrno *dstErr) |
Pop's the top entry from the free stack. Returns a free stack pointer and set's the given destination pointer to the entry's data. The entry's data is NOT free'd. More... | |
AlcErrno | AlcFreeStackFree (void *stack) |
Free's all entries on the given free stack. More... | |
void* AlcFreeStackPush | ( | void * | prev, |
void * | data, | ||
AlcErrno * | dstErr | ||
) |
Push's the given pointer onto the free stack on top of the previous free stack pointer.
prev | Previous free stack pointer. |
data | New pointer to push onto the free stack. |
dstErr | Destination error pointer, may be NULL |
References ALC_ER_ALLOC, ALC_ER_NONE, AlcMalloc(), _AlcFreeStack::data, and _AlcFreeStack::prev.
Referenced by AlcVectorExtend(), AlcVectorNew(), AlgMatrixLLRExpand(), Wlz3DSectionSegmentObject(), Wlz3DViewStructSetupTransformLuts(), Wlz3DViewTransformObj(), WlzCbThreshold(), WlzChangeEMAPProperty(), WlzClipObjToBox2D(), WlzConvexHullVtxD3ToI3(), WlzCutObjToValBox2D(), WlzCutObjToValBox3D(), WlzDiffDomain(), WlzDilation(), WlzDynItvAdd(), WlzEffReadObjJpeg(), WlzErosion(), WlzErosion4(), WlzFromArray1D(), WlzFromArray2D(), WlzFromArray3D(), WlzIDomainFromPItv2D(), WlzIntersectN(), WlzIntRescaleObj(), WlzLabel(), WlzLBTDomain2DFromIDomain(), WlzLBTDomain3DFromPDomain(), WlzMakeCircleObject(), WlzMakeCuboid(), WlzMakeEMAPProperty(), WlzMakeGreyProperty(), WlzMakeHistogramDomain(), WlzMakeIntervalValues(), WlzMakeLUTValues(), WlzMakeNameProperty(), WlzMakeQuadrilateral(), WlzMakeSimpleProperty(), WlzMakeSpecialStructElement(), WlzMakeTextProperty(), WlzNewIDomain(), WlzNewValueTb(), WlzPDomainFromPItv3D(), WlzPolarSample(), WlzPolyToObj(), WlzReadObj(), WlzSampleObj(), WlzSampleObjPoint2D(), WlzSkeleton3D(), WlzStructDilation(), WlzStructErosion(), WlzThreshold(), WlzTransposeObj(), and WlzUnionN().
void* AlcFreeStackPop | ( | void * | prev, |
void ** | dstData, | ||
AlcErrno * | dstErr | ||
) |
Pop's the top entry from the free stack. Returns a free stack pointer and set's the given destination pointer to the entry's data. The entry's data is NOT free'd.
prev | The free stack. |
dstData | Destination data pointer, may be NULL. |
dstErr | Destination error pointer, may be NULL. |
References ALC_ER_NONE, ALC_ER_NULLPTR, AlcFree(), _AlcFreeStack::data, and _AlcFreeStack::prev.
Referenced by WlzToArray2D(), and WlzToArray3D().
AlcErrno AlcFreeStackFree | ( | void * | stack | ) |
Free's all entries on the given free stack.
stack | The stack of pointers to be free'd. |
References ALC_ER_NONE, ALC_ER_NULLPTR, AlcFree(), _AlcFreeStack::data, and _AlcFreeStack::prev.
Referenced by AlcVectorFree(), AlgMatrixLLRFree(), WlzFree3DViewStruct(), WlzFreeDomain(), WlzFreeEMAPProperty(), WlzFreeLUTValues(), WlzFreeProperty(), WlzFreePropertyListEntry(), WlzFreeSimpleProperty(), WlzFreeValues(), WlzFreeVoxelValueTb(), and WlzInit3DViewStruct().