ede15483b3150c457db6571223bef81b53d10c83
[alexxy/gromacs.git] / include / sheader.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  * Green Red Orange Magenta Azure Cyan Skyblue
28  */
29
30 #ifndef _sheader_h
31 #define _sheader_h
32
33 static char *SRCID_sheader_h = "$Id$";
34
35 #ifdef HAVE_CONFIG_H
36 #include <config.h>
37 #endif
38
39 #ifdef HAVE_IDENT
40 #ident  "@(#) sheader.h 1.4 11/23/92"
41 #endif /* HAVE_IDENT */
42
43 #include <stdio.h>
44 #include "typedefs.h"
45 #include "tpxio.h"
46
47 typedef struct          /* This struct describes the order and the      */
48   /* sizes of the structs in a statusfile, sizes are given in bytes.    */
49 {
50   int   ir_size;        /* Non zero if input_rec is present             */
51   int   e_size;         /* Non zero if energies are present             */
52   int   box_size;       /* Non zero if a box is present                 */
53   int   vir_size;       /* Non zero if a virial is present              */
54   int   pres_size;      /* Non zero if a pressure is present            */
55   int   top_size;       /* Non zero if a topology is present            */
56   int   sym_size;       /* Non zero if a symbol table is present        */
57   int   x_size;         /* Non zero if coordinates are present          */
58   int   v_size;         /* Non zero if velocities are present           */
59   int   f_size;         /* Non zero if forces are present               */
60
61   int   natoms;         /* The total number of atoms                    */
62   int   step;           /* Current step number                          */
63   int   nre;            /* Nr of energies                               */
64   real  t;              /* Current time                                 */
65   real  lambda;         /* Current value of lambda                      */
66 } t_statheader;
67
68 extern void pr_header(FILE *fp,int indent,char *title,t_tpxheader *sh);
69      /*
70       * This routine prints out a (human) readable representation of
71       * a header to the file fp. Ident specifies the number of spaces
72       * the text should be indented. Title is used to print a header text.
73       */
74
75 #endif  /* _sheader_h */