#ifndef PROCLCMD_H
#define PROCLCMD_H
#include <ProObjects.h>
typedef struct usr_cl_cmd_data
{
Pro3dPnt location;
ProVector axis;
double feed;
} ProClCmdData;
PRO_BEGIN_C_DECLS
/*===========================================================================*/
typedef ProError (*ProClCommandExpandAction) (ProFeature *pro_feat,
wchar_t (*command)[512], int num_cmd_lines,
ProClCmdData **r_output_arr, int *output_num);
/*
Purpose: This is the callback to interpret the user's CL commands.
<p> If you do not supply a callback, the system uses the CL
command location.
Input Arguments:
pro_feat - The feature.
command - The CL command. This is an array of lines.
num_cmd_lines - The number of lines in the command.
Output Arguments:
r_output_arr - The resultant array.
output_num - The number if items in the array <i>r_output_arr</i>.
Return Values:
PRO_TK_NO_ERROR - The function was successful.
PRO_TK_GENERAL_ERROR - A general error occurred and the function
failed.
PRO_TK_E_NOT_FOUND - The specified CL command was not found.
*/
/*===========================================================================*/
typedef ProBoolean (*ProClCommandGetLocAction) (ProFeature *pro_feat,
wchar_t (*command)[512],
int num_cmd_lines,
ProPoint3d location );
/*
Purpose: Gets the location of the specified CL command.
Input Arguments:
pro_feat - The feature
command - The CL command whose location to get
num_cmd_lines - The number of lines in the CL command
Output Arguments:
location - The location
Return Values:
PRO_B_TRUE - The function found the specified CL command and return its
location.
PRO_B_FALSE - The function did not find the specified CL command.
*/
PRO_END_C_DECLS
#endif