From 22f703cab05b7cd368f4de9e03991b7664dc5022 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?J=C3=B6rg=20Frings-F=C3=BCrst?= Date: Mon, 1 Sep 2014 13:56:46 +0200 Subject: Initial import of argyll version 1.5.1-8 --- spectro/instappsup.h | 100 +++++++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 100 insertions(+) create mode 100644 spectro/instappsup.h (limited to 'spectro/instappsup.h') diff --git a/spectro/instappsup.h b/spectro/instappsup.h new file mode 100644 index 0000000..24da6db --- /dev/null +++ b/spectro/instappsup.h @@ -0,0 +1,100 @@ + +#ifndef INSTAPPSUP_H + +/* Instrument command line application support functions */ + +/* + * Argyll Color Correction System + * + * Author: Graeme W. Gill + * Date: 15/3/2001 + * + * Copyright 2001 - 2013 Graeme W. Gill + * All rights reserved. + * + * This material is licenced under the GNU GENERAL PUBLIC LICENSE Version 2 or later :- + * see the License2.txt file for licencing details. + * + */ + +//#include "insttypes.h" /* libinst Includes this functionality */ +//#include "icoms.h" +//#include "conv.h" + +#ifdef __cplusplus + extern "C" { +#endif + +/* ============================================================================= */ +/* a default user interaction callback handler */ + +/* User key types */ +#define DUIH_NONE 0x0000 /* No meaning */ +#define DUIH_ABORT 0x0100 /* User abort operation */ +#define DUIH_TERM 0x0200 /* User terminated operation */ +#define DUIH_CMND 0x0400 /* User command */ +#define DUIH_TRIG 0x0800 /* User trigger */ + +/* The default uicallback function and context. resets uih too. */ +#define DUIH_FUNC_AND_CONTEXT (inst_reset_uih(), inst_get_uicallback()), inst_get_uicontext() + +/* Return the default uicallback function */ +inst_code (*inst_get_uicallback())(void *, inst_ui_purp); + +/* Return the default uicallback context */ +void *inst_get_uicontext(); + +/* Install the default uicallback function in the given inst */ +void inst_set_uicallback(inst *p); + +/* Reset user interaction handling to default (Esc, ^C, q or 'Q' = Abort) */ +void inst_reset_uih(); + +/* Set a key range to the given handling type */ +/* min & max are between 0 and 255, status is one of */ +/* DUIH_OK, DUIH_USER, DUIH_TERM, DUIH_TRIG, DUIH_CMND */ +void inst_set_uih(int min, int max, int status); + +/* Get the character that caused the user trigger or abort */ +/* + its key type in the upper 8 bits. */ +/* Clear it to 0x00 after reading it. */ +int inst_get_uih_char(); + +/* ============================================================================= */ + +#ifndef DISPSUP_H +/* Opaque type as far as inst.h is concerned. */ +typedef struct _disp_win_info disp_win_info; +#endif + +/* A default calibration user interaction handler using the console. */ +/* This handles both normal and display based calibration interaction */ +/* with the instrument, if a disp_setup function and pointer to disp_win_info */ +/* is provided. */ +inst_code inst_handle_calibrate( + inst *p, + inst_cal_type calt, /* Calibration type to do */ + inst_cal_cond calc, /* Current calibration condition */ + inst_code (*disp_setup) (inst *p, inst_cal_cond calc, disp_win_info *dwi), + /* Callback for handling a display calibration - May be NULL */ + disp_win_info *dwi /* Information to be able to open a display test patch - May be NULL */ +); + +/* ============================================================================= */ + +/* A helper function to display -y flag usage for each instrument type available */ +/* Return accumulated capabilities2 of all the instruments. */ +/* If docbib is nz, then only display the base calibration display types */ +inst2_capability inst_show_disptype_options(FILE *fp, char *oline, icompaths *icmps, int docbib); + +/* A helper function to turn a -y flag into a list index */ +/* If docbib is nz, then only allow base calibration display types */ +/* Return 0 on error */ +int inst_get_disptype_index(inst *it, int c, int docbib); + +#ifdef __cplusplus + } +#endif + +#define INSTAPPSUP_H +#endif /* INSTAPPSUP_H */ -- cgit v1.2.3