Pro/T00LKIT都是用c语言编写的,每个对象都用结构体来描述,因此需要了解对象是如何使用的。
为了使用结构体,需要定义它,Pro/TO0LKIT提供许多“typedef”,这些typedef 只不过是Creo结构体的伪指令。例如:
typedef struc t entity*ProPoint ;
typedef struct sld_part* ProSolid;
这些也叫做Handles(from Opaque handles),在Creo中它们直接获得对象的内存地址。在某些情况下,这样做可能是危险的,因此PTC提供了另外一种结构体类型,它只包含Creo的内部数据库中项目的必要信息。这种结构体(labeled DHandle fromdata handle) 是一种类的结构,它包括对象的类型、ID 等。许多函数命令都和下面的结构体相联系。
大部分Pro/Toolkit函数的返回值类型都是ProError。ProError是一个枚举类型,它包含了Pro/Toolkit函数执行成功或失败的具体状态值。
函数执行成功最常见的返回值是PRO_TK_NO_ERROR。当函数执行过程中确实出现了问题或是由于一些正常操作上的原因(即良性原因),都会返回错误状态。
例如,以下错误状态表明函数执行确实出现了问题:
PRO_TK_BAD_INPUT:输入有误
PRO_TK_OUT_OF_MEMORY:内存不足
PRO_TK_COMM_ERROR:系统错误
以下错误则是良性的:
PRO_TK_USER_ABORT:用户放弃交互过程;
PRO_TK_E_NOT_FOUND:操作对象列表为空。
必须小心应对Pro/Toolkit函数返回的错误状态,对应不同的返回值应当有对应的处理。不管是执行成功还是失败,都会有好几种状态值,每一种一般都要求有不同的处理。
每一个Pro/Toolkit函数可能的返回值在API文档中对应函数的下面都有描述。并且在头文件中函数原型的下面的注释中也有。