summaryrefslogtreecommitdiffstats
path: root/kpat/freecell-solver/fcs_cl.h
diff options
context:
space:
mode:
Diffstat (limited to 'kpat/freecell-solver/fcs_cl.h')
-rw-r--r--kpat/freecell-solver/fcs_cl.h65
1 files changed, 65 insertions, 0 deletions
diff --git a/kpat/freecell-solver/fcs_cl.h b/kpat/freecell-solver/fcs_cl.h
new file mode 100644
index 00000000..e739c98e
--- /dev/null
+++ b/kpat/freecell-solver/fcs_cl.h
@@ -0,0 +1,65 @@
+
+#ifndef FC_SOLVE__FCS_CL_H
+#define FC_SOLVE__FCS_CL_H
+
+#include "fcs_user.h"
+
+#ifdef __cplusplus
+extern "C" {
+#endif
+
+typedef int (*freecell_solver_user_cmd_line_known_commands_callback_t)
+ (
+ void * instance,
+ int argc,
+ char * argv[],
+ int arg_index,
+ int * num_to_skip,
+ int * ret,
+ void * context
+ );
+
+enum FCS_CMD_LINE_CALLBACK_RET_VALUES
+{
+ FCS_CMD_LINE_OK,
+ FCS_CMD_LINE_SKIP,
+ FCS_CMD_LINE_STOP,
+ FCS_CMD_LINE_UNRECOGNIZED_OPTION,
+ FCS_CMD_LINE_PARAM_WITH_NO_ARG,
+ FCS_CMD_LINE_ERROR_IN_ARG,
+
+ FCS_CMD_LINE_USER = 0x10000
+};
+
+extern int freecell_solver_user_cmd_line_parse_args(
+ void * instance,
+ int argc,
+ const char * argv[],
+ int start_arg,
+ char * * known_parameters,
+ freecell_solver_user_cmd_line_known_commands_callback_t callback,
+ void * callback_context,
+ char * * error_string,
+ int * last_arg
+ );
+
+extern int freecell_solver_user_cmd_line_parse_args_with_file_nesting_count(
+ void * instance,
+ int argc,
+ const char * argv[],
+ int start_arg,
+ char * * known_parameters,
+ freecell_solver_user_cmd_line_known_commands_callback_t callback,
+ void * callback_context,
+ char * * error_string,
+ int * last_arg,
+ int file_nesting_count,
+ char * opened_files_dir
+ );
+
+
+#ifdef __cplusplus
+}
+#endif
+
+#endif /* #ifndef FC_SOLVE__FCS_CL_H */