⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 utilcollect.c

📁 Pro.TOOLKIT.Wildfire插件设计.配套光盘-141M.zip
💻 C
📖 第 1 页 / 共 5 页
字号:
		*p_geomitems = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectFamtableInstance()    Purpose:	Return a list of instance in famtable    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectFamtableInstance(     ProFamtable     *p_famtable,     /* In:  The famtable */    ProFaminstance **famtable_instance /* Out: ProArray with famtable items.					    The function allocates 					    memory for this argument, but 					    you must free it. To free 					    the memory, call the function 					    ProArrayFree() */){    ProError	    status;    if( famtable_instance != NULL )    {	status=ProArrayAlloc(0,sizeof(ProFaminstance),1,(ProArray*)famtable_instance);	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectFamtableInstance()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE( "ProFamtableInstanceAction", 		"ProFamtableInstanceFilter" )	    status = ProFamtableInstanceVisit( p_famtable,                 (ProFamtableInstanceAction)ProUtilCollect3ParamDBVisitAction,		(ProFamtableInstanceFilter)ProUtilDefaultFilter,                (ProAppData)&famtable_instance );	    TEST_CALL_REPORT("ProFamtableInstanceVisit()", 		"ProUtilCollectFamtableInstance()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)famtable_instance );		*famtable_instance = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectFamtableItem()    Purpose:	Return a list of items in famtable    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectFamtableItem(     ProFamtable     *p_famtable,     /* In:  The famtable */    ProFamtableItem **famtable_item /* Out: ProArray with famtable items.					    The function allocates 					    memory for this argument, but 					    you must free it. To free 					    the memory, call the function 					    ProArrayFree() */){    ProError	    status;    if( famtable_item != NULL )    {	status=ProArrayAlloc(0,sizeof(ProFamtableItem),1,(ProArray*)famtable_item);	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectFamtableItem()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE( "ProFamtableItemAction", "ProFamtableItemFilter" )	    status = ProFamtableItemVisit( p_famtable,                 (ProFamtableItemAction)ProUtilCollect3ParamDBVisitAction,		(ProFamtableItemFilter)ProUtilDefaultFilter,                (ProAppData)&famtable_item );	    TEST_CALL_REPORT("ProFamtableItemVisit()", 		"ProUtilCollectFamtableItem()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)famtable_item );		*famtable_item = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectAnimFrames()    Purpose:	Return a list of frames conteained in the animation movie    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectAnimFrames(     ProAnimMovie    anim_movie,	    /* In:  The handle to the animation 					    movie */    ProAnimFrame    **p_frames	    /* Out: ProArray with collected frames. 					    The function allocates memory 					    for this argument, but you must 					    free it. To free the memory, 					    call the function ProArrayFree()*/){    ProError	    status;    if( p_frames != NULL )    {	status = ProArrayAlloc(0, sizeof(ProAnimFrame), 1,(ProArray*)p_frames);	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectAnimFrames()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE ("ProAnimFrameAct", "ProAnimFrameAct")	    status = ProAnimmovieFrameVisit( anim_movie, 		(ProAnimFrameAct)ProUtilCollect2ParamOpaqueVisitAction,                (ProAnimFrameAct)ProUtilDefaultFilter,		(ProAppData)&p_frames );	    TEST_CALL_REPORT("ProAnimmovieFrameVisit()", 		"ProUtilCollectAnimFrames()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)p_frames );		*p_frames = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectAnimObjects()    Purpose:	Return a list of objects conteained in the animation frame    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectAnimObjects(     ProAnimFrame    anim_frame,	    /* In:  The handle to the animation 					    frame */    ProAnimObj	    **p_objects	    /* Out: ProArray with collected objects. 					    The function allocates memory 					    for this argument, but you must 					    free it. To free the memory, 					    call the function ProArrayFree()*/){    ProError	    status;    if( p_objects != NULL )    {	status = ProArrayAlloc(0, sizeof(ProAnimObj), 1, (ProArray*)p_objects);	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectAnimObjects()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE ("ProAnimObjAct", "ProAnimObjAct")	    status = ProAnimframeObjVisit( anim_frame, 		(ProAnimObjAct)ProUtilCollect2ParamOpaqueVisitAction,		(ProAnimObjAct)ProUtilDefaultFilter,		(ProAppData)&p_objects );	    TEST_CALL_REPORT("ProAnimframeObjVisit()", 		"ProUtilCollectAnimObjects()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)p_objects );		*p_objects = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectParameters()    Purpose:	Return a list of parameters which belong to the model item    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectParameters(     ProModelitem    *p_modelitem,   /* In:  The model item */    ProParameter    **p_parameters  /* Out: ProArray with collected parameters.					    The function allocates 					    memory for this argument, but 					    you must free it. To free 					    the memory, call the function 					    ProArrayFree() */){    ProError	    status;    if( p_parameters != NULL )    {	status=ProArrayAlloc(0,sizeof(ProParameter),1,(ProArray*)p_parameters);	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectParameters()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE( "ProParameterAction", "ProParameterFilter" )	    status = ProParameterVisit( p_modelitem,                 (ProParameterFilter)ProUtilDefaultFilter,		(ProParameterAction)ProUtilCollect3ParamDBVisitAction,                (ProAppData)&p_parameters );	    TEST_CALL_REPORT("ProParameterVisit()", 		"ProUtilCollectParameters()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)p_parameters );		*p_parameters = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectModelNotes()    Purpose:	Return a list of notes which belong to the model    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectModelNotes(     ProMdl	    p_model,	    /* In:  The handle to the model */    ProModelitem    **p_notes	    /* Out: ProArray with collected notes.					    The function allocates 					    memory for this argument, but 					    you must free it. To free 					    the memory, call the function 					    ProArrayFree() */){#ifndef PT_PRODUCTS_BUILD    ProError	    status;    if( p_notes != NULL )    {	status = ProArrayAlloc(0, sizeof(ProModelitem), 1, (ProArray*)p_notes);	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectModelNotes()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE( "ProMdlNoteVisitAction", "ProMdlNoteFilterAction" )	    status = ProMdlNoteVisit( p_model, 		(ProMdlNoteVisitAction)ProUtilCollect3ParamDBVisitAction,                (ProMdlNoteFilterAction)ProUtilDefaultFilter,                (ProAppData)&p_notes );	    TEST_CALL_REPORT("ProMdlNoteVisit()", 		"ProUtilCollectModelNotes()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)p_notes );		*p_notes = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);#endif}/*=========================================================================*\    Function:	ProUtilCollectMfgTools()    Purpose:	Return a list of tools in the manufacturing model    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectMfgTools(     ProMfg	    p_mfg,	    /* In:  The manufacturing model */    ProTool	    **p_tools	    /* Out: ProArray with collected tools. 					    The function allocates 					    memory for this argument, but 					    you must free it. To free 					    the memory, call the function 					    ProArrayFree() */){    ProError	    status;    if( p_tools != NULL )    {	status = ProArrayAlloc( 0, sizeof(ProTool), 1, (ProArray*)p_tools );	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectMfgTools()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{	    ACTION_TYPE( "ProMfgToolAction", "" )	    status = ProMfgToolVisit( p_mfg,		(ProMfgToolAction)ProUtilCollect2ParamDBVisitAction,                (ProAppData)&p_tools );	    TEST_CALL_REPORT("ProMfgToolVisit()", 		"ProUtilCollectMfgTools()", status, 		status != PRO_TK_NO_ERROR && status != PRO_TK_E_NOT_FOUND);	    if( status != PRO_TK_NO_ERROR )	    {		ProArrayFree( (ProArray*)p_tools );		*p_tools = NULL;	    }	}    }    else	status = PRO_TK_BAD_INPUTS;    return (status);}/*=========================================================================*\    Function:	ProUtilCollectRelset()    Purpose:	Return a list of tools in the manufacturing model    Returns:	PRO_TK_NO_ERROR - success;		PRO_TK_BAD_INPUTS - invalid parameters\*=========================================================================*/ProError ProUtilCollectRelset(     ProMdl	    p_mdl,	    /* In:  The model */    ProRelset	    **p_relset	    /* Out: ProArray with collected relsets. 					    The function allocates 					    memory for this argument, but 					    you must free it. To free 					    the memory, call the function 					    ProArrayFree() */){    ProError	    status;    if( p_relset != NULL )    {	status = ProArrayAlloc( 0, sizeof(ProRelset), 1, (ProArray*)p_relset );	TEST_CALL_REPORT("ProArrayAlloc()", "ProUtilCollectRelset()",					    status, status != PRO_TK_NO_ERROR);	if( status == PRO_TK_NO_ERROR )	{

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -