您当前的位置:首页 > IT编程 > C++
| C语言 | Java | VB | VC | python | Android | TensorFlow | C++ | oracle | 学术与代码 | cnn卷积神经网络 | gnn | 图像修复 | Keras | 数据集 | Neo4j | 自然语言处理 | 深度学习 | 医学CAD | 医学影像 | 超参数 | pointnet | pytorch | 异常检测 | Transformers | 情感分类 | 知识图谱 |

自学教程:C++ AlcFree函数代码示例

51自学网 2021-06-01 19:46:22
  C++
这篇教程C++ AlcFree函数代码示例写得很实用,希望能帮到您。

本文整理汇总了C++中AlcFree函数的典型用法代码示例。如果您正苦于以下问题:C++ AlcFree函数的具体用法?C++ AlcFree怎么用?C++ AlcFree使用的例子?那么恭喜您, 这里精选的函数代码示例或许可以为您提供帮助。

在下文中一共展示了AlcFree函数的28个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于我们的系统推荐出更棒的C++代码示例。

示例1: RecSecFree

/*!* /ingroup	Reconstruct* /brief	Free's the given section.* /param	sec			Section to free.*/void		RecSecFree(RecSection *sec){  REC_DBG((REC_DBG_SEC|REC_DBG_LVL_FN|REC_DBG_LVL_1),	  ("RecSecFree FE 0x%lx/n",	   (unsigned long )sec));  if(sec)  {    REC_DBG((REC_DBG_SEC|REC_DBG_LVL_3),	    ("RecSecFree 01 %d/n",	     sec->linkcount));    if(--(sec->linkcount) <= 0)    {      if(sec->imageFile)      {	AlcFree(sec->imageFile);      }      if(sec->transform)      {	REC_DBG((REC_DBG_SEC|REC_DBG_LVL_3),		("RecSecFree 02 %d/n",		 sec->transform->linkcount));	(void )WlzFreeAffineTransform(sec->transform);      }      if(sec->obj)      {	REC_DBG((REC_DBG_SEC|REC_DBG_LVL_3),		("RecSecFree 03 %d/n",		 sec->obj->linkcount));	(void )WlzFreeObj(sec->obj);      }      if(sec->transObj)      {	REC_DBG((REC_DBG_SEC|REC_DBG_LVL_3),		("RecSecFree 04 %d/n",		 sec->transObj->linkcount));        (void )WlzFreeObj(sec->transObj);      }      if(sec->cumTransform)      {	REC_DBG((REC_DBG_SEC|REC_DBG_LVL_3),		("RecSecFree 05 %d/n",		 sec->cumTransform->linkcount));	(void )WlzFreeAffineTransform(sec->cumTransform);      }      if(sec->cumTransObj && (sec->cumTransObj->linkcount > 0))      {	REC_DBG((REC_DBG_SEC|REC_DBG_LVL_3),		("RecSecFree 05 %d/n",		 sec->cumTransObj->linkcount));        (void )WlzFreeObj(sec->cumTransObj);      }      AlcFree(sec);    }  }  REC_DBG((REC_DBG_SEC|REC_DBG_LVL_FN|REC_DBG_LVL_1),	  ("RecSecFree FX/n"));}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:62,


示例2: WlzDistMetricDirGM

/*!* /return	Woolz error code.* /ingroup	WlzFeatures* /brief	Computes any combination of the directed Hausdorff, mean*		nearest neighbour, median nearest neighbour and minimum*		nearest neighbour distances*		between the vertices of the given geometric models.*		See WlzDistMetricDirVertex2D() for details of the metrics.* /param	model0			First geometric model.* /param	model1			Second geometric model.* /param	dstDistH		Destination pointer for the directed*					Hausdorff distance, may be NULL.* /param	dstDistM		Destination pointer for the directed*					mean nearest neighbour distance, may*					be NULL.* /param	dstDistN		Destination pointer for the directed*					median nearest neighbour distance, may*					be NULL.* /param	dstDistI		Destination pointer for the minimum*					nearest neighbour distance, may*					be NULL.*/WlzErrorNum 	WlzDistMetricDirGM(WlzGMModel *model0, WlzGMModel *model1,			        double *dstDistH, double *dstDistM,				double *dstDistN, double *dstDistI){  int		nV[2];  WlzVertexP	vP[2];  WlzVertexType vType[2];  WlzErrorNum	errNum = WLZ_ERR_NONE;  vP[0].v = vP[1].v = NULL;  if((model0 == NULL) || (model1 == NULL))  {    errNum = WLZ_ERR_DOMAIN_NULL;  }  else if(model0->type != model1->type)  {    errNum = WLZ_ERR_DOMAIN_TYPE;  }  else  {    vP[0] = WlzVerticesFromGM(model0, NULL, NULL, nV + 0, vType + 0, &errNum);   }  if(errNum == WLZ_ERR_NONE)  {    vP[1] = WlzVerticesFromGM(model1, NULL, NULL, nV + 1, vType + 1, &errNum);   }  if(errNum == WLZ_ERR_NONE)  {    if(vType[0] != vType[1])    {      errNum = WLZ_ERR_DOMAIN_TYPE;    }  }  if(errNum == WLZ_ERR_NONE)  {    switch(vType[0])    {      case WLZ_VERTEX_D2:	errNum = WlzDistMetricDirVertex2D(nV[0], vP[0].d2, nV[1], vP[1].d2,				          dstDistH, dstDistM, dstDistN,					  dstDistI);	break;      case WLZ_VERTEX_D3:	errNum = WlzDistMetricDirVertex3D(nV[0], vP[0].d3, nV[1], vP[1].d3,				          dstDistH, dstDistM, dstDistN,					  dstDistI);	break;      default:        errNum = WLZ_ERR_DOMAIN_DATA;	break;    }  }  AlcFree(vP[0].v);  AlcFree(vP[1].v);  return(errNum);}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:78,


示例3: AlcPtr3Calloc

/*!* /return	Error code.* /ingroup	AlcArray* /brief	Allocates a 3 dimensional array of pointers to void.* /note		Should be free'd using Alc3Free().* /note		Array size is limited only by address space.* /param	dest 			Destination for allocated array*					pointer.* /param	mElem 	 		Number of 2D arrays.* /param	nElem 	 		Number of 1D arrays.* /param	oElem 	 		Number of elements in each 1D*					array.*/AlcErrno	AlcPtr3Calloc(void *****dest, size_t mElem, size_t nElem,			       size_t oElem){  size_t	index0,  		index1;  void		**dump0 = NULL,  		***dump1 = NULL,		****dump2 = NULL;  AlcErrno	alcErrno = ALC_ER_NONE;  if((dest) == NULL)  {    alcErrno = ALC_ER_NULLPTR;  }  else if((mElem < 1) || (nElem < 1) || (oElem < 1))  {    alcErrno = ALC_ER_NUMELEM;  }  else if(((dump0 = (void **)AlcCalloc(mElem * nElem * oElem,  				       sizeof(void *))) == NULL) ||          ((dump1 = (void ***)AlcMalloc(mElem * nElem *	                                sizeof(void **))) == NULL) ||          ((dump2 = (void ****)AlcMalloc(mElem * sizeof(void ***))) == NULL))  {    alcErrno = ALC_ER_ALLOC;  }  if(alcErrno == ALC_ER_NONE)  {    *(dest) = dump2;    for(index0 = 0; index0 < mElem; ++index0)    {      for(index1=0; index1 < nElem; ++index1)      {	dump1[index1] = dump0;	dump0 += oElem;      }      (*(dest))[index0] = dump1;      dump1 += nElem;    }  }  else  {    if(dest)    {      *(dest) = NULL;    }    AlcFree(dump2);    AlcFree(dump1);    AlcFree(dump0);  }  return(alcErrno);}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:65,


示例4: WlzBoundaryToPolyObjArray

/*!* /return	Woolz error code.* /ingroup	WlzBoundary* /brief	decomposes a boundary into it's component polygons.* /param	bndObj		Given boundary.* /param	dstNumObjs	Destination pointer for the number of polygons.* /param	dstObjArray	Destination pointer for the array of polygons.*/WlzErrorNum WlzBoundaryToPolyObjArray(  WlzObject	*bndObj,  int		*dstNumObjs,  WlzObject	***dstObjArray){  WlzErrorNum	errNum=WLZ_ERR_NONE;  WlzDomain	domain;  WlzValues	values;  WlzObject	*obj, **objs;  WlzPolygonDomain	**polyArray;  int 		i, numPolys;  /* check inputs */  if( bndObj == NULL ){    errNum = WLZ_ERR_OBJECT_NULL;  }  else if((dstNumObjs == NULL) || (dstObjArray == NULL)){    errNum = WLZ_ERR_PARAM_NULL;  }  else {    /* generate array of poly domains */    errNum = WlzBoundObjToPolyDomArray(bndObj, &numPolys, &polyArray);  }  /* convert to polygon objects */  if( errNum == WLZ_ERR_NONE ){    if((objs = (WlzObject **) AlcMalloc(sizeof(WlzObject *)*numPolys)) == NULL){      errNum = WLZ_ERR_MEM_ALLOC;      for(i=0; i < numPolys; i++){	WlzFreePolyDmn(polyArray[i]);      }      AlcFree(polyArray);      numPolys = 0;    }    else {      for(i=0; i < numPolys; i++){	domain.poly = polyArray[i];	values.core = NULL;	obj = WlzMakeMain(WLZ_2D_POLYGON, domain, values,			  NULL, NULL, &errNum);	objs[i] = WlzAssignObject(obj, NULL);	WlzFreePolyDmn(polyArray[i]);      }      AlcFree(polyArray);    }  }    *dstNumObjs = numPolys;  *dstObjArray = objs;  return errNum;}
开发者ID:dscho,项目名称:Woolz,代码行数:59,


示例5: HGU_XmFileListItemFree

void HGU_XmFileListItemFree(  void	*entry){  HGU_XmFileListCallbackStruct	*cbs;  if( entry ){    cbs = (HGU_XmFileListCallbackStruct *) entry;    if( cbs->file ){      AlcFree(cbs->file);    }    AlcFree(cbs);  }  return;}
开发者ID:ma-tech,项目名称:HGUX,代码行数:14,


示例6: HGU_XmFileListWriteHeader

void HGU_XmFileListWriteHeader(  FILE	*fp){  BibFileRecord		*bibfileRecord;  time_t		tmpTime;  char			*tmpS, tmpBuf[256];  char  		*dateS = NULL;  char  		*hostS = NULL;  char  		*userS = NULL;  static char		unknownS[] = "unknown";  /* write some sort of identifier */  bibfileRecord =     BibFileRecordMake("Ident", "0",		      BibFileFieldMakeVa("Text",					 "HGU_Xm Image File List",					 "Version",	"1.0",					 NULL));  BibFileRecordWrite(fp, NULL, bibfileRecord);  BibFileRecordFree(&bibfileRecord);  /* now a comment with user, machine, date etc. */  tmpS = getenv("USER");  (void )sprintf(tmpBuf, "User: %s", tmpS?tmpS:unknownS);  userS = AlcStrDup(tmpBuf);  tmpTime = time(NULL);  tmpS = ctime(&tmpTime);  *(tmpS + strlen(tmpS) - 1) = '/0';  (void )sprintf(tmpBuf, "Date: %s", tmpS?tmpS:unknownS);  dateS = AlcStrDup(tmpBuf);  tmpS = getenv("HOST");  (void )sprintf(tmpBuf, "Host: %s", tmpS?tmpS:unknownS);  hostS = AlcStrDup(tmpBuf);  bibfileRecord =     BibFileRecordMake("Comment", "0",		      BibFileFieldMakeVa("Text", userS,					 "Text", dateS,					 "Text", hostS,					 NULL));  BibFileRecordWrite(fp, NULL, bibfileRecord);  BibFileRecordFree(&bibfileRecord);  AlcFree(userS);  AlcFree(dateS);  AlcFree(hostS);  return;}
开发者ID:ma-tech,项目名称:HGUX,代码行数:50,


示例7: WlzGreyValueFreeWSp

/*!* /return	void* /ingroup	WlzAccess* /brief	Free's the given grey value work space created by* 		WlzGreyValueMakeWSp().* /param	gVWSp			Given grey value work space.*/void		WlzGreyValueFreeWSp(WlzGreyValueWSpace *gVWSp){  WLZ_DBG((WLZ_DBG_LVL_1),  	   ("WlzGreyValueFreeWSp FE %p/n",	    gVWSp));  if(gVWSp)  {    (void )WlzFreeAffineTransform(gVWSp->invTrans);    AlcFree((void *)(gVWSp->gTabTypes3D));    AlcFree(gVWSp);  }  WLZ_DBG((WLZ_DBG_LVL_FN|WLZ_DBG_LVL_1),  	  ("WlzGreyValueFreeWSp FX/n"));}
开发者ID:ma-tech,项目名称:Woolz,代码行数:21,


示例8: WlzEffAmFreeHead

/*!* /return	<void>* /ingroup	WlzExtFF* /brief	Free's entries in the Amira file header data structure*		before freeing the header data structure itself.* /param	head			The given file header data structure.*/static void	WlzEffAmFreeHead(WlzEffAmHead *head){  WlzEffAmMaterial *e0;  AlcFree(head->imageData);  if(head)  {    e0 = head->materials;    while(e0)    {      AlcFree(e0->name);      e0 = e0->next;    }  }}
开发者ID:dscho,项目名称:Woolz,代码行数:22,


示例9: AlcPtr2Malloc

/*!* /return	Error code.* /ingroup	AlcArray* /brief	Allocates a 2 dimensional non-zero'd array of pointers*		to void.* /note		Should be free'd using Alc2Free().* /note		Array size is limited only by address space.* /param	dest 		 	Destination for allocated array*					pointer.* /param	mElem 	 		Number of 1D arrays.* /param	nElem 	 		Number of elements in each 1D*					array.*/AlcErrno	AlcPtr2Malloc(void ****dest, size_t mElem, size_t nElem){  size_t	index;  void 		**dump0 = NULL;  void   	***dump1 = NULL;  AlcErrno	alcErrno = ALC_ER_NONE;   /* Template doesn't work for pointer types. */  if(dest == NULL)  {    alcErrno = ALC_ER_NULLPTR;  }  else if((mElem < 1) || (nElem < 1))  {    alcErrno = ALC_ER_NUMELEM;  }  else if(((dump0 = (void **)AlcMalloc(mElem * nElem *  				       sizeof(void *))) == NULL) ||          ((dump1 = (void ***)AlcMalloc(mElem * sizeof(void **))) == NULL))  {    alcErrno = ALC_ER_ALLOC;  }  if(alcErrno == ALC_ER_NONE)  {    *dest = dump1;    for(index = 0; index < mElem; ++index)    {      (*dest)[index] = dump0;      dump0 += nElem;    }  }  else  {    if(dest)    {      *dest = NULL;    }    if(dump0)    {      AlcFree(dump0);    }    if(dump1)    {      AlcFree(dump1);    }  }  return(alcErrno);}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:61,


示例10: WlzFreeContour

/*! * /ingroup      WlzAllocation* /brief        Free's a WlzContour data structure.** /return       Error number, values: WLZ_ERR_NONE, WLZ_ERR_DOMAIN_NULL, WLZ_ERR_DOMAIN_TYPE and from WlzUnlink().* /param    ctr				Contour to be freed.* /par      Source:*                WlzFreeSpace.c*/WlzErrorNum	WlzFreeContour(WlzContour *ctr){  WlzErrorNum	errNum = WLZ_ERR_NONE;  if(ctr == NULL)  {    errNum = WLZ_ERR_DOMAIN_NULL;  }  else if(ctr->type != WLZ_CONTOUR)  {    errNum = WLZ_ERR_DOMAIN_TYPE;  }  else  {    if(WlzUnlink(&(ctr->linkcount), &errNum))    {      if(ctr->model && WlzUnlink(&(ctr->model->linkcount), &errNum))      {        (void )WlzGMModelFree(ctr->model);      }      AlcFree((void *)ctr);    }  }  return(errNum);}
开发者ID:omsai,项目名称:Woolz,代码行数:34,


示例11: WlzFreeValues

/*! * /ingroup      WlzAllocation* /brief        Free a values structure, currently only WlzRagRValuesand WlzRectValues DO NOT call this function with anyother values structure types!** /return       Error number, values: WLZ_ERR_NONE, WLZ_ERR_VALUES_DATA.* /param    values	Values union to be freed.* /par      Source:*                WlzFreeSpace.c*/WlzErrorNum WlzFreeValues(WlzValues values){  WlzErrorNum	errNum = WLZ_ERR_NONE;  /* check the object pointer and linkcount */  if (values.v == NULL){    return( WLZ_ERR_NONE );  }  if( WlzUnlink(&(values.v->linkcount), &errNum) ){			    /* if there is a freeptr then free it */    if (values.v->freeptr != NULL){      /* it is illegal for a table to point to itself */      if( values.v->original_table.v != NULL ){	return( WLZ_ERR_VALUES_DATA );      }      (void )AlcFreeStackFree(values.v->freeptr);    }        if( values.v->original_table.v ){      errNum = WlzFreeValues( values.v->original_table );    }    AlcFree((void *) values.v);  }  return( errNum );}
开发者ID:omsai,项目名称:Woolz,代码行数:42,


示例12: WlzRsvFilterFreeFilter

/*!* /return	void* /ingroup      WlzValueFilters* /brief	Free a recursive filter.* /param	ftr			Filter to free.*/void		WlzRsvFilterFreeFilter(WlzRsvFilter *ftr){  if(ftr != NULL)  {    AlcFree(ftr);  }}
开发者ID:omsai,项目名称:Woolz,代码行数:13,


示例13: REC_DBG

/*!* /return	New registration section.* /ingroup	Reconstruct* /brief	Makes a registration section using the given member values.* /param	index			Section index.* /param	iterations		Number of iterations to find*                                       section transform.* /param	correlation		Section correlation value.* /param	imageFile		Image file path, this is duplicated*					so that the original may be freed*					The image file path must not be NULL.* /param	transform		Section transform, if NULL an identity* 					transform is created.* /param	obj			Woolz object corresponding to the given* 					image file. This may be NULL without* 					causing the object to be read from the* 					associated file.*/RecSection	*RecSecMake(int index, int iterations, double correlation,			    char *imageFile,			    WlzAffineTransform *transform, WlzObject *obj){  RecSection	*sec = NULL;  char		*newImageFile = NULL;  WlzAffineTransform	*newTransform = NULL;  WlzErrorNum	wlzErr = WLZ_ERR_NONE;  REC_DBG((REC_DBG_SEC|REC_DBG_LVL_FN|REC_DBG_LVL_1),	  ("RecSecMake FE %d %d %g 0x%lx 0x%lx 0x%lx/n",	   index, iterations, correlation,	   (unsigned long )imageFile, (unsigned long )transform,	   (unsigned long )obj));  if(imageFile)  {    newImageFile = AlcStrDup(imageFile);  }  if(newImageFile && (transform == NULL))  {    newTransform = WlzAffineTransformFromPrimVal(WLZ_TRANSFORM_2D_AFFINE,    					         0.0, 0.0, 0.0,					         1.0, 0.0, 0.0,					         0.0, 0.0, 0.0, 0, &wlzErr);  }  if(newImageFile && (newTransform || transform) && (wlzErr == WLZ_ERR_NONE))  {    sec = (RecSection *)AlcMalloc(sizeof(RecSection));  }  if(sec == NULL)  {    if(newImageFile)    {      AlcFree(newImageFile);    }    if(newTransform)    {      WlzFreeAffineTransform(newTransform);    }  }  else  {    sec->linkcount = 0;    sec->index = index;    sec->iterations = iterations;    sec->correl = correlation;    sec->obj = WlzAssignObject(obj, NULL);    sec->imageFile = newImageFile;    sec->transform = WlzAssignAffineTransform(transform? transform:    							 newTransform, NULL);    sec->transObj = NULL;    sec->cumTransform = NULL;    sec->cumTransObj = NULL;  }  REC_DBG((REC_DBG_SEC|REC_DBG_LVL_FN|REC_DBG_LVL_1),	  ("RecSecMake FX 0x%lx/n",	   (unsigned long )sec));  return(sec);}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:77,


示例14: WlzJavaArray1DFree

/************************************************************************* Function:	WlzJavaArray1DFree				* Returns:	void						* Purpose:	Free's a temporary native 1D array.			* Global refs:	-						* Parameters:	void *aDat:		Array data structure.	*		int aSz:		Array size.		*		int dSKey:		Data structure identification.*		jboolean isCpy:		Copy flag for JNI functions.************************************************************************/void		WlzJavaArray1DFree(void *aDat, int aSz,			      int dSKey, jboolean isCpy){  if(isCpy && aDat && (aSz > 0))  {    AlcFree(aDat);  }}
开发者ID:dscho,项目名称:Woolz,代码行数:18,


示例15: freechain

static int freechain(WlzLLink *l){  if (l != NULL) {    freechain(l->l_link);    AlcFree((char *) l);  }  return( 0 );}
开发者ID:dscho,项目名称:Woolz,代码行数:9,


示例16: WlzMakeMain

/*!* /return	Integer array with values and coordinates from 3D object.* /ingroup	WlzValueUtils* /brief	Allocates a new array (4 ints per value: 0 = value,* 		1 = x coordinate, 2 = y coordinate and 3 = z coordinate.* /param	obj			Given object which must be a valid* 					3D domain object with integer values.* /param	dstNAry			Destination pointer for the number of* 					values, must not be NULL.* /param	dstErr			Destination error pointer, may be NULL.*/static int	*WlzCompDispMakeValAry3D(WlzObject *obj, int *dstNAry,				         WlzErrorNum *dstErr){  int		idO,  		idP,		nAry;  int		*ary,  		*array = NULL;  WlzObject	*obj2D;  WlzPlaneDomain *pDom;  WlzErrorNum	errNum = WLZ_ERR_NONE;  if((nAry = WlzVolume(obj, &errNum)) <= 0)  {    errNum = WLZ_ERR_DOMAIN_DATA;  }  if(errNum == WLZ_ERR_NONE)  {    if((array = AlcMalloc(nAry * 4 * sizeof(int))) == NULL)    {      errNum = WLZ_ERR_MEM_ALLOC;    }  }  if(errNum == WLZ_ERR_NONE)  {    ary = array;    pDom = obj->domain.p;    for(idP = pDom->plane1; (errNum == WLZ_ERR_NONE) && (idP <= pDom->lastpl);        ++idP)    {      idO = idP - pDom->plane1;      obj2D = WlzMakeMain(WLZ_2D_DOMAINOBJ,			  *(obj->domain.p->domains + idO),			  *(obj->values.vox->values + idO),			  NULL, NULL, &errNum);      if(errNum == WLZ_ERR_NONE)      {	errNum = WlzCompDispSetAry(&ary, obj2D, idP, 3);	WlzFreeObj(obj2D);      }    }  }  if(errNum != WLZ_ERR_NONE)  {    AlcFree(ary);    ary = NULL;  }  else  {    *dstNAry = nAry;    if(dstErr != NULL)    {      *dstErr = errNum;    }  }  return(array);}
开发者ID:dscho,项目名称:Woolz,代码行数:68,


示例17: HGU_XmFileListDestroyMenuItems

WlzErrorNum HGU_XmFileListDestroyMenuItems(  MenuItem	*items){  WlzErrorNum	errNum=WLZ_ERR_NONE;  int		i;  /* check inputs */  if( items == NULL ){    errNum = WLZ_ERR_PARAM_NULL;  }  else {    for(i=0; items[i].name != NULL; i++){      AlcFree(items[i].name);    }    AlcFree(items);  }  return errNum;}
开发者ID:ma-tech,项目名称:HGUX,代码行数:19,


示例18: WlzFree3DWarpTrans

/*! * /ingroup      WlzAllocation* /brief        Free a 3D warp transform.** /return       Error number, values: WLZ_ERR_NONE and from WlzFreePlaneDomain().* /param    obj	3D warp transform object to be freed.* /par      Source:*                WlzFreeSpace.c*/WlzErrorNum	WlzFree3DWarpTrans(Wlz3DWarpTrans *obj){  WlzErrorNum	errNum = WLZ_ERR_NONE;  if(obj == NULL)  {     errNum = WLZ_ERR_OBJECT_NULL;  }  else  {    if(obj->intptdoms)    {      (void )AlcFree(obj->intptdoms);    }    if(obj->pdom)    {      errNum = WlzFreePlaneDomain(obj->pdom);    }    (void )AlcFree(obj);  }  return(errNum);}
开发者ID:omsai,项目名称:Woolz,代码行数:31,


示例19: WlzFreeIndexedValues

/*!* /return	Woolz error code.* /ingroup	WlzAllocation* /brief	Frees an indexed valuetable.* /param	ixv			Given indexed valuetable.*/WlzErrorNum	WlzFreeIndexedValues(WlzIndexedValues *ixv){  WlzErrorNum	errNum = WLZ_ERR_NONE;  if(ixv == NULL)  {    errNum = WLZ_ERR_VALUES_NULL;  }  else if(ixv->type != WLZ_INDEXED_VALUES)  {    errNum = WLZ_ERR_VALUES_TYPE;  }  else  {    (void )AlcVectorFree(ixv->values);    if(ixv->rank > 0)    {      AlcFree(ixv->dim);    }    AlcFree(ixv);  }  return(errNum);}
开发者ID:omsai,项目名称:Woolz,代码行数:29,


示例20: switch

/*!* /return	New affine transform initialized to the identity transform.* /ingroup	WlzTransform* /brief	Allocates and initialises space for a 2D or 3D affine*               transform. Sufficient space is always allocated for a*               3D transform.*		The transform should be freed using WlzFreeAffineTransform().* /param	type			Transform type.* /param	dstErr			Destination error pointer, may*                                       be null.*/WlzAffineTransform *WlzMakeAffineTransform(WlzTransformType type,  				           WlzErrorNum *dstErr){  WlzAffineTransform *trans=NULL;  WlzErrorNum	errNum = WLZ_ERR_NONE;  switch(type)  {    case WLZ_TRANSFORM_2D_AFFINE:    case WLZ_TRANSFORM_2D_REG:    case WLZ_TRANSFORM_2D_TRANS:    case WLZ_TRANSFORM_2D_NOSHEAR:    case WLZ_TRANSFORM_3D_AFFINE:    case WLZ_TRANSFORM_3D_REG:    case WLZ_TRANSFORM_3D_TRANS:    case WLZ_TRANSFORM_3D_NOSHEAR:      break;    default:      errNum = WLZ_ERR_TRANSFORM_TYPE;      break;  }  if(errNum == WLZ_ERR_NONE)  {    if(((trans = (WlzAffineTransform *)                 AlcCalloc(1, sizeof(WlzAffineTransform))) == NULL) ||       (AlcDouble2Calloc(&trans->mat, 4, 4) != ALC_ER_NONE))    {      if(trans)      {        AlcFree(trans);	trans = NULL;      }      errNum = WLZ_ERR_MEM_ALLOC;    }  }  if(errNum == WLZ_ERR_NONE)  {    trans->type = type;    /* Initialize to the identity transform */    trans->mat[0][0] = 1.0;    trans->mat[1][1] = 1.0;    trans->mat[2][2] = 1.0;    trans->mat[3][3] = 1.0;  }  if(dstErr)  {    *dstErr = errNum;  }  return(trans);}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:61,


示例21: AlcKDTTreeFree

/*!* /return      	Error code.* /ingroup	AlcKDTree* /brief        Free's the given KD-tree data structure and any nodes*               in the tree.* /param        tree			The KD-tree data structure.*/AlcErrno        AlcKDTTreeFree(AlcKDTTree *tree){  AlcErrno	errNum = ALC_ER_NONE;  if(tree)  {    if(tree->freeStack)    {      errNum = AlcBlockStackFree(tree->freeStack);    }    AlcFree(tree);  }  return(errNum);}
开发者ID:ma-tech,项目名称:Woolz,代码行数:21,


示例22: WlzFreePointValues

/*!* /return	Woolz error code.* /ingroup	WlzAllocation* /brief	Frees a points valuetable.* /param	pv			Given  points valuetable.*/WlzErrorNum	WlzFreePointValues(WlzPointValues *pv){  WlzErrorNum	errNum = WLZ_ERR_NONE;  if(pv == NULL)  {    errNum = WLZ_ERR_VALUES_NULL;  }  else if(pv->type != WLZ_POINT_VALUES)  {    errNum = WLZ_ERR_VALUES_TYPE;  }  else  {    (void )AlcFree(pv->values.v);    if(pv->rank > 0)    {      AlcFree(pv->dim);    }    AlcFree(pv);  }  return(errNum);}
开发者ID:omsai,项目名称:Woolz,代码行数:29,


示例23: WlzFreePolyDmn

/*! * /ingroup      WlzAllocation* /brief        Free a polygon domain.** /return       Error number, values: WLZ_ERR_NONE and from WlzUnlink().* /param    poly	Polygon domain to be freed.* /par      Source:*                WlzFreeSpace.c*/WlzErrorNum WlzFreePolyDmn(WlzPolygonDomain *poly){  WlzErrorNum	errNum=WLZ_ERR_NONE;  /* check the object pointer and linkcount */  if (poly == NULL){    return( WLZ_ERR_NONE );  }  if( WlzUnlink(&(poly->linkcount), &errNum) ){    AlcFree((void *) poly);  }  return errNum;}
开发者ID:omsai,项目名称:Woolz,代码行数:24,


示例24: WlzFreeAffineTransform

/*!* /return	Woolz error code.* /ingroup      WlzTransform* /brief	Frees an affine transform allocated by*		WlzMakeAffineTransform().* /param	trans			Affine transform to free.*/WlzErrorNum 	WlzFreeAffineTransform(WlzAffineTransform *trans){  WlzErrorNum	errNum = WLZ_ERR_NONE;  if(trans && WlzUnlink(&(trans->linkcount), &errNum))  {    /* Free the matrix - assumes allocated by AlcDouble2Alloc       then the structure */    if(trans->mat)    {      AlcDouble2Free(trans->mat);    }    AlcFree(trans);  }  return(errNum);}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:23,


示例25: freeDomainListItem

void freeDomainListItem(  void		*item){  DomainListItem	*dmnItem = (DomainListItem *) item;  if( dmnItem->obj ){    WlzFreeObj(dmnItem->obj);  }  if( dmnItem->currBound ){    WlzFreeObj(dmnItem->currBound);  }  XmStringFree(dmnItem->listStr);  free(dmnItem->file);  AlcFree(item);  return;}
开发者ID:ma-tech,项目名称:MA3DView,代码行数:17,


示例26: AlgDPTotalCosts

/*!* /return	zero* /ingroup	AlgDPSearch* /brief* /param    imax	number of points on the path* /param    jmax	number of locations per path point* /param    optimal_cost	return for optimal path cost through each point* /param    optimal_path	return for optimal path through each point.* /param    non_local_cost	non-local cost function calculated in terms*/int AlgDPTotalCosts(  int 		imax,  int		jmax,  double	**optimal_cost,  int 		**optimal_path,  double 	(*non_local_cost)(int, int, int, int **)){  int		i, j, jp;  double	cost, min_cost, *tmp;  /* now determine the total optimal-costs for each point */  tmp = (double *) AlcMalloc(sizeof(double) * jmax);  for(i=imax-1; i > 0; i--)  {    for(j=0; j < jmax; j++)    {      cost = optimal_cost[i][0]	- optimal_cost[i-1][optimal_path[i][0]]	+ (*non_local_cost)(i,0,j,optimal_path)	- (*non_local_cost)(i,0,optimal_path[i][0],			    optimal_path);      min_cost = cost;      for(jp=1; jp < jmax; jp++)      {	cost = optimal_cost[i][jp]	  - optimal_cost[i-1][optimal_path[i][jp]]	  + (*non_local_cost)(i,jp,j,optimal_path)	  - (*non_local_cost)(i,jp,			      optimal_path[i][jp],			      optimal_path);	if( cost < min_cost )	{	  min_cost = cost;	}      }      tmp[j] = min_cost;    }    for(j=0; j < jmax; j++)    {      optimal_cost[i-1][j] += tmp[j];    }  }  AlcFree( tmp );  return( 0 );}
开发者ID:VirtualFlyBrain,项目名称:Woolz,代码行数:56,


示例27: WlzFreeBoundList

/*! * /ingroup      WlzAllocation* /brief        Recursively free a boundary list.** /return       Error number, values: WLZ_ERR_NONE and from WlzUnlink().* /param    b	Boundary list structure to be freed (note this will call WlzFreeBoundList recursively).* /par      Source:*                WlzFreeSpace.c*/WlzErrorNum WlzFreeBoundList(WlzBoundList *b){  WlzErrorNum	errNum = WLZ_ERR_NONE;  /* check the object pointer and linkcount */  if (b == NULL){    return( WLZ_ERR_NONE );  }  if( WlzUnlink(&(b->linkcount), &errNum) ){    errNum |= WlzFreePolyDmn(b->poly);    errNum |= WlzFreeBoundList(b->next);    errNum |= WlzFreeBoundList(b->down);    AlcFree((void *) b);  }  return( errNum );}
开发者ID:omsai,项目名称:Woolz,代码行数:27,


示例28: HGU_XmFileListResetMenu

WlzErrorNum HGU_XmFileListResetMenu(  AlcDLPList	*fileList,  Widget	cascade,  XtCallbackProc	callbackProc){  WlzErrorNum	errNum=WLZ_ERR_NONE;  Widget	menu=NULL, widget;  MenuItem	*items;  HGU_XmFileListCallbackStruct	*cbs;  int		i;  char		*strbuf;  if( cascade ){    XtVaGetValues(cascade, XmNsubMenuId, &menu, NULL);    if( menu ){      XtDestroyWidget(menu);    }    items = HGU_XmFileListCreateMenuItems(fileList,					  callbackProc, NULL);    menu = HGU_XmBuildPulldownMenu(cascade, XmTEAR_OFF_DISABLED,				   False, False, items);    /* add tool-tips */    for(i=0; items[i].name != NULL; i++){      if( (cbs = (HGU_XmFileListCallbackStruct *) items[i].callback_data) ){	if(strcmp(items[i].name, "separator") &&	   strcmp(items[i].name, "Clear list")){	  strbuf = AlcMalloc(sizeof(char)*(strlen(cbs->file)+4));	  sprintf(strbuf, "*%s", cbs->file);	  if((widget = XtNameToWidget(menu, strbuf))){	    HGU_XmAddToolTip(HGU_XmGetTopShell(cascade), widget,			     cbs->file);	  }	  AlcFree(strbuf);	}      }    }    HGU_XmFileListDestroyMenuItems(items);  }  return errNum;}
开发者ID:ma-tech,项目名称:HGUX,代码行数:41,



注:本文中的AlcFree函数示例整理自Github/MSDocs等源码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。


C++ AlcMalloc函数代码示例
C++ AlarmsSet函数代码示例
万事OK自学网:51自学网_软件自学网_CAD自学网自学excel、自学PS、自学CAD、自学C语言、自学css3实例,是一个通过网络自主学习工作技能的自学平台,网友喜欢的软件自学网站。