int cvxCmFrameDelete
(
int idx_frame         /* I: index of the frame */
)
/*
DESCRIPTION:
Delete the frame in CamPlan.

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

int cvxCmFrameGetAttr
(
int idx_frame,            /* I: index of the frame */
evxCmFrameAttr attr,      /* I: enumeration of the attribute */
svxCmAttrValue *value   /* O: return value; user needs to free the memory */
)
/*
DESCRIPTION:
Inquire the Frame attributes. 

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

int cvxCmFrameGetMatrix
(
int idxFrame,        /* I: index of the frame */
svxMatrix *frameMat  /* O: frame matrix */
)
/*
DESCRIPTION:
Get the frame matrix.

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

int cvxCmFrameInsert
(
vxName frame_name,         /* I: fame name wanna set */
svxPoint origin_point,      /*   I: origin point to construct the coordinate system */
svxPoint x_point,            /* I: point in axis X */
svxPoint y_point,            /* I: point in axis Y */
int *idx_frame               /* O: index of the frame */
)
/*
DESCRIPTION:
Insert the Frame based on Cartesian coordinate system in the active CamPlan. 
The 3 svxPoints are not used at this version.

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

int cvxCmFrameInsert2
(
vxName frame_name,         /* I: frame name wanna set */
svxMatrix frame_mat,       /* I: frame matrix */
int *idx_frame             /* O: index of the frame */
)
/*
DESCRIPTION:
Insert the Frame based on Cartesian coordinate system in the active CamPlan. 
The 3 svxPoints are not used at this version.

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

int cvxCmFrameSetAttr
(
int idx_frame,               /* I: index of the frame */
evxCmFrameAttr attr,         /* I: enumeration of the attribute */
svxCmAttrValue *value      /* I: the value wanna set */
)
/*
DESCRIPTION:
Set the Frame attributes. 

"value->type"                 &     "value->cnt" depends on "attr", as follows:
ZW_CAM_ATTR_VALUE_TYPE_STRING       <=32     CM_FRAME_NAME
ZW_CAM_ATTR_VALUE_TYPE_DOUBLE       1        CM_FRAME_CLEAR_Z
                                             CM_FRAME_APPROACH_Z
                                             CM_FRAME_RETRACT_Z

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________

int cvxCmOpAddFrame
(
int idxOp,      /* I: index of the operation */
int idxFrame    /* I: index of the frame */
)
/*
DESCRIPTION:
Insert the Frame into the operation

Returns 1 if function fails; 0 if it succeeds.
*/
________________________________________________________________________________