1 /***********************************************************************/ 2 /* Open Visualization Data Explorer */ 3 /* (C) Copyright IBM Corp. 1989,1999 */ 4 /* ALL RIGHTS RESERVED */ 5 /* This code licensed under the */ 6 /* "IBM PUBLIC LICENSE - Open Visualization Data Explorer" */ 7 /***********************************************************************/ 8 /* 9 * $Header: /src/master/dx/src/exec/dxmods/interact.h,v 1.8 2006/06/13 15:08:35 davidt Exp $ 10 */ 11 12 #include <dxconfig.h> 13 14 #ifndef _INTERACT_H_ 15 #define _INTERACT_H_ 16 17 #include <dx/dx.h> 18 #if HAVE_VALUES_H 19 #include <values.h> 20 #endif 21 #include <math.h> 22 23 #define CLAMP(c,a,b) ((c < a) ? a: ((c > b) ? b: c)) 24 #define CLAMPMIN(c,a) ((c < a) ? a: c) 25 #define CLAMPMAX(c,b) ((c > b) ? b: c) 26 #define OUTOFRANGE(c,a,b) ((c < a) ? 1: ((c > b) ? 1: 0)) 27 #define MAXPRINT 7 28 /* MAX_MSGLEN should be less than or equal to MSG_BUFLEN in dpexec/distp.h */ 29 #define MAX_MSGLEN 4000 30 #define SLOP 64 31 #define AtEnd(p) ((p)->atend) 32 33 #define NUMBER_CHARS 16 /* number of print characters for each number*/ 34 #define NAME_CHARS 10 /* number of print characters for each name */ 35 #define METHOD_CHARS 10 /* number of print characters for method */ 36 37 #if (defined(intelnt) || defined(WIN32)) && defined(ABSOLUTE) 38 #undef ABSOLUTE 39 #endif 40 41 typedef enum { 42 PERCENT_ROUND = 1, 43 PERCENT = 2, 44 ABSOLUTE = 3 45 } method_type; 46 47 typedef enum { 48 START_MINIMUM = 1, 49 START_MIDPOINT = 2, 50 START_MAXIMUM = 3 51 } start_type; 52 53 struct einfo { 54 int maxlen; 55 int atend; 56 char *mp; 57 char *msgbuf; 58 }; 59 60 Error _dxfinteract_float(char *, Object,float *, float *, 61 float *,int *,char *,int,method_type,int *,int *); 62 Error _dxfprint_message(Pointer ,struct einfo *,Type ,int ,int *,int); 63 int _dxfcheck_obj_cache(Object ,char *,int ,Object); 64 65 #endif /* _INTERACT_H_ */ 66