#define TOOL_NODES   0
#define TOOL_CONNECT 1
#define TOOL_REPORT  2
#define TOOL_NREPORT 3
#define TOOL_ARCS    4
#define TOOL_TURNTABLE    5


struct opt {
    struct Option *input, *points;
    struct Option *output;
    struct Option *action;
    struct Option *afield_opt, *tfield, *tucfield, *nfield_opt, *thresh_opt;
    struct Option *file;
    struct Option *type;
    struct Flag *cats_flag, *snap_flag;
};

/* arcs.c */
int create_arcs(FILE *, struct Map_info *,
		struct Map_info *, int, int);

/* argc.c */
void define_options(struct opt *);
void parse_arguments(const struct opt *,
		     int *, int *, double *, int *);

/* connect.c */
int connect_arcs(struct Map_info *, struct Map_info *,
		 struct Map_info *, int, int, double, int);

/* nodes.c */
int nodes(struct Map_info *, struct Map_info *, int,
	  int);

/* report.c */
int report(struct Map_info *, int, int,
	   int);

void turntable(struct opt *);
