int cvxCmHolderInsertAsTemplate ( vxPath template_path, /* I: template path */ vxName file_name, /* I: file name */ vxName library_name, /* I: library name */ vxName holder_name, /* I: holder name */ int *idx_holder /* O: holder index */ ) /* DESCRIPTION: Insert the holder from the library into CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmSpeedInsertAsTemplate ( vxPath template_path, /* I: template path */ vxName file_name, /* I: file name */ vxName library_name, /* I: library name */ vxName spdfd_name, /* I: speed name */ int *idx_speed /* O: speed index */ ) /* DESCRIPTION: Insert the speed from the library into CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmToolDelete ( int idx_tool /* I: index of the tool */ ) /* DESCRIPTION: Delete the tool in CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmToolGetAttr ( int id, /* I: index of the tool */ evxCmToolAttr attr, /* I: enumeration of tool attribute */ svxCmAttrValue *value /* O: the values return; user needs to free the memory */ ) /* DESCRIPTION: Inquire the tool's attribute. See cvxCmToolSetAttr. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmToolInsert ( evxCmToolType tltype, /* I: tool type */ evxCmToolSubType subtype, /* I: sub type of tool */ int *idx_tool /* O: index of the new tool */ ) /* DESCRIPTION: Insert a tool into active CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmToolInsertAsTemplate ( vxPath template_path, /* I: template path */ vxName file_name, /* I: file name */ vxName library_name, /* I: library name */ vxName tool_name, /* I: tool name */ int *idx_tool /* O: tool index */ ) /* DESCRIPTION: Insert the tool from the library into CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmToolSetAttr ( int id, /* I: index of the tool */ evxCmToolAttr attr, /* I: enumeration of tool attribute */ svxCmAttrValue *value /* I: the values needed */ ) /* DESCRIPTION: Set the tool's attribute. "attr" can't be CM_TOOL_TYPE or CM_TOOL_SUBTYPE. While "attr" is CM_TOOL_HOLDER, holder (depends on its name) is from active CAM plan or current Library or default Library in proper older. "value->type" & "value->cnt" depends on "attr", as follows: ZW_CAM_ATTR_VALUE_TYPE_STRING <=32 CM_TOOL_NAME CM_TOOL_ID CM_TOOL_HOLDER ZW_CAM_ATTR_VALUE_TYPE_DOUBLE 1 CM_TOOL_LEN CM_TOOL_CUTTERDIAMETER ZW_CAM_ATTR_VALUE_TYPE_INTEGER 1 CM_TOOLCHANGER_LOCATION CM_TOOLCHANGER_DIAMETER CM_TOOLCHANGER_HEIGHT The following is a simple code to set tool name and length: void TestApi(void) -{ svxCmAttrValue attr; int index=-1; char toolName[32]={"MillTool"}; double toolLen=99.0; cvxCmToolInsert(CM_TOOL_TYPE_MILL, CM_TOOL_SUBTYPE_ENDNOSE, &index); if (index < 0) return; attr.type = ZW_CAM_ATTR_VALUE_TYPE_STRING; attr.cnt = 32; attr.data = (void *)toolName; cvxCmToolSetAttr(index, CM_TOOL_NAME, &attr); attr.type = ZW_CAM_ATTR_VALUE_TYPE_DOUBLE; attr.cnt = 1; attr.data = (void *)&toolLen; cvxCmToolSetAttr(index, CM_TOOL_LEN, &attr); return; -} Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________