int cvxCmOpAddComp ( int idx_Op, /* I: index of the operation */ int idx_CmComp /* I: index of the component */ ) /* DESCRIPTION: Add the component into the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpAddFtr ( int idx_Op, /* I: index of the operation */ int idx_FtrGrp /* I: index of the feature */ ) /* DESCRIPTION: Add the feature into the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpAddTool ( int idx_Op, /* I: index of the operation */ int idx_Tool /* I: index of the tool */ ) /* DESCRIPTION: Add a tool in the target operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpCalTPath ( int idx_Op /* I: index of the operation */ ) /* DESCRIPTION: Calculate the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpDelete ( int idx_Op /* I: index of operation */ ) /* DESCRIPTION: Delete an operation in the active CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpDuplicate ( int idx_Op, /* I: index of source operation */ int *cpyOp /* O: index of destination op */ ) /* DESCRIPTION: Duplicate an operation in the active CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpGetAttr ( int idx_Op, /* I: index of the operation */ int cnt, /* I: count of the attributes */ int *attr, /* I: enumerations user wanna get */ svxCmAttrValue *value /* O: the values return */ ) /* DESCRIPTION: Inquire the attributes of the operation. Output a list of svxCmAttrValue via "value". Not all evxCmQmOpAttr is available for different type of Operation. As follows are 5 Operation Type, value->type & value->cnt & value->data depend on "attr" ZW_CAM_OPERATION_PROFILECUT: ZW_CAM_ATTR_VALUE_TYPE_STRING <=32 ZW_CAM_QM_OPERATION_ATTR_NAME ZW_CAM_QM_OPERATION_ATTR_CLASS ZW_CAM_QM_OPERATION_ATTR_FRAME ZW_CAM_ATTR_VALUE_TYPE_INTEGER 1 index of tool ZW_CAM_QM_OPERATION_ATTR_TOOL ZW_CAM_OPERATION_SMOOTHFLOW ZW_CAM_OPERATION_OFFSET2D ZW_CAM_OPERATION_OFFSET3D ZW_CAM_OPERATION_ZLEVEL: ZW_CAM_ATTR_VALUE_TYPE_STRING <=32 ZW_CAM_QM_OPERATION_ATTR_NAME ZW_CAM_QM_OPERATION_ATTR_CLASS ZW_CAM_QM_OPERATION_ATTR_FRAME ZW_CAM_ATTR_VALUE_TYPE_DOUBLE 1 ZW_CAM_QM_OPERATION_ATTR_SURF_THICK ZW_CAM_QM_OPERATION_ATTR_MINTOOLHEIGHT ZW_CAM_ATTR_VALUE_TYPE_INTEGER 1 index of tool ZW_CAM_QM_OPERATION_ATTR_TOOL The following is a simple code to get operation's frame and surface thick: void TestApi(void) -{ int cnt=0, *list=NULL; cvxCmInqAl(CM_OPERATION, &cnt, &list); if (cnt > 0) -{ svxCmAttrValue attrs[2]; int num=2; int types[2]={ZW_CAM_QM_OPERATION_ATTR_FRAME, ZW_CAM_QM_OPERATION_ATTR_SURF_THICK}; cvxCmOpGetAttr(list[0], num, types, attrs); -{ char frame[32]; strcpy(frame, (char *)attrs[0].data); -} -{ double thick; thick = *(double*)attrs[1].data; -} cvxMemFree((void **)&attrs[0].data); cvxMemFree((void **)&attrs[1].data); -} cvxMemFree((void**)&list); return; -} MEMORY MANAGEMENT: User needs to allocate memory for "value", and free memory for "value->data". Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpGetAttr2 ( int idx_op, /* I: index of the operation */ int field, /* I: field id of the attribute */ int item, /* I: item id of the attribute */ int *is_on, /* I: on/off flag (MAYBE NULL) */ char *value /* O: value of the attribute, caller should allocate memory */ ) /* DESCRIPTION: Inquire the attributes of the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpGetIdxFromName ( vxLongName op_name, /* I: name of operation */ int *op_index /* O: index of operation */ ) /* DESCRIPTION: Get the operation index with the specified name. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpInsert ( evxCmOpType opType, /* I: Operation type */ int *idx_Op /* O: index of this inserted Operation */ ) /* DESCRIPTION: Create an operation in the active CamPlan. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpRemoveComp ( int idx_Op, /* I: index of the operation */ int idx_CmComp /* I: index of the component */ ) /* DESCRIPTION: Remove the component of the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpRemoveFtr ( int idx_Op, /* I: index of the operation */ int idx_ftrgrp /* I: index of the feature */ ) /* DESCRIPTION: Remove the feature of the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpRemoveTool ( int idx_Op /* I: index of the operation */ ) /* DESCRIPTION: Remove the tool of the target operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpSetAttr ( int op, /* I: index of the operation */ int cnt, /* I: count of the attributes */ int *attr, /* I: enumerations user wanna set */ svxCmAttrValue *value /* I: the values needed */ ) /* DESCRIPTION: Modify the attributes of the operation. Not all evxCmQmOpAttr is available for different type of Operation. As follows are 5 Operation Type, value->type & value->cnt & value->data depend on "attr" ZW_CAM_OPERATION_PROFILECUT: ZW_CAM_ATTR_VALUE_TYPE_STRING <=32 ZW_CAM_QM_OPERATION_ATTR_NAME ZW_CAM_OPERATION_SMOOTHFLOW ZW_CAM_OPERATION_OFFSET2D ZW_CAM_OPERATION_OFFSET3D ZW_CAM_OPERATION_ZLEVEL: ZW_CAM_ATTR_VALUE_TYPE_STRING <=32 ZW_CAM_QM_OPERATION_ATTR_NAME ZW_CAM_ATTR_VALUE_TYPE_DOUBLE 1 ZW_CAM_QM_OPERATION_ATTR_SURF_THICK Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpSetAttr2 ( int idx_op, /* I: index of the operation */ int field, /* I: field id of the attribute */ int item, /* I: item id of the attribute */ const char *value /* I: value of the attribute */ ) /* DESCRIPTION: Modify the attributes of the operation. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpSetAttrAsCfg ( int idx_Op, /* I: index of the operation */ vxPath cfg_location /* I: cfg file location with file name */ ) /* DESCRIPTION: Set the attributes of the operation depends on the config file. To get a config file: 1. Open an operation form, and set your parameters. 2. Click "Save" button. Notice that, config file will ignore those parameters which have their own objects, such as "frame", "point"... Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmOpSetSpeed ( int idx_op, /* I: idx of opdef */ vxName spdfdName /* I: name of speed & feed */ ) /* DESCRIPTION: Set speed & feed for the operation. The speed & feed is from active Cam plan or current Library or default Library in proper order. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmSetOpPoint ( int idx_op, /* I: index of operation */ svxPoint p0, /* I: point value */ int field /* I: operation parameter's field */ ) /* DESCRIPTION: Set one point to operation parameter. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________ int cvxCmSetOpPoints ( int idx_op, /* I: index of operation */ int num, /* I: number of points */ svxPoint *pts, /* I: points value */ int field /* I: operation parameter's field */ ) /* DESCRIPTION: Set points to operation parameter. Returns 1 if function fails; 0 if it succeeds. */ ________________________________________________________________________________