Newer
Older
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
/*
key.h
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*
* Part of: SExtractor
*
* Author: E.BERTIN (IAP)
*
* Contents: Keyword structure.
*
* Last modify: 14/12/2004
*
*%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%%
*/
/*--------------------------------- constants -------------------------------*/
#define FIND_STRICT 0
#define FIND_NOSTRICT 1
/*--------------------------- structure definitions -------------------------*/
/* Preference keyword */
typedef struct
{
char name[32];
enum {P_FLOAT, P_INT, P_STRING, P_BOOL, P_KEY, P_INTLIST, P_FLOATLIST,
P_BOOLLIST, P_KEYLIST, P_STRINGLIST} type;
void *ptr; /* Pointer to the keyword value */
int imin, imax; /* Range for int's */
double dmin, dmax; /* Range for doubles */
char keylist[32][32]; /* List of keywords */
int nlistmin; /* Minimum number of list members */
int nlistmax; /* Maximum number of list members */
int *nlistptr; /* Ptr to store the nb of read params*/
int flag;
} pkeystruct;
/*---------------------------------- protos --------------------------------*/
int findkeys(char *str, char key[][32], int mode);