1c1b6dda1765ca2e70875c761a26fe990512a42d
[alexxy/gromacs.git] / src / ngmx / fgrid.h
1 /*
2  * $Id$
3  * 
4  *       This source code is part of
5  * 
6  *        G   R   O   M   A   C   S
7  * 
8  * GROningen MAchine for Chemical Simulations
9  * 
10  *               VERSION 2.0
11  * 
12  * Copyright (c) 1991-1999
13  * BIOSON Research Institute, Dept. of Biophysical Chemistry
14  * University of Groningen, The Netherlands
15  * 
16  * Please refer to:
17  * GROMACS: A message-passing parallel molecular dynamics implementation
18  * H.J.C. Berendsen, D. van der Spoel and R. van Drunen
19  * Comp. Phys. Comm. 91, 43-56 (1995)
20  * 
21  * Also check out our WWW page:
22  * http://md.chem.rug.nl/~gmx
23  * or e-mail to:
24  * gromacs@chem.rug.nl
25  * 
26  * And Hey:
27  * Great Red Oystrich Makes All Chemists Sane
28  */
29
30 #ifndef _fgrid_h
31 #define _fgrid_h
32
33 static char *SRCID_fgrid_h = "$Id$";
34
35 #ifdef HAVE_IDENT
36 #ident  "@(#) fgrid.h 1.3 9/29/92"
37 #endif /* HAVE_IDENT */
38
39 #include <typedefs.h>
40 #include <xdlg.h>
41
42 typedef struct {
43   edlgitem edlg;
44   bool bDef;
45   int  nname;
46   char **name;
47   char *set,*get,*def,*help;
48 } t_fitem;
49
50 typedef struct {
51   char *name;
52   int x,y,w,h;
53   int nfitem;
54   t_fitem **fitem;
55 } t_fgroup;
56
57 typedef struct {
58   int x,y,w,h;
59   t_fitem *fitem;
60 } t_fsimple;
61
62 typedef struct {
63   int       w,h;
64   int       nfgroup;
65   t_fgroup  **fgroup;
66   int       nfsimple;
67   t_fsimple **fsimple;
68 } t_fgrid;
69
70 typedef enum {
71   eGRIDEXP, eACCOEXP, eACCCEXP, eGRPEXP, eITEMEXP, eSAMEPOINT, 
72   eTOOWIDE, eTOOHIGH, eQUOTE,   eNOVALS 
73   } eDLGERR;
74
75 extern void ReadDlgErr(char *infile, eDLGERR err, char *s);
76
77 extern t_fgrid *FGridFromFile(char *infile);
78
79 extern void DoneFGrid(t_fgrid *fgrid);
80
81 extern void DumpFGrid(t_fgrid *fgrid);
82
83 extern void ReadQuoteString(char *infile, FILE *in, char *buf);
84
85 #endif  /* _fgrid_h */