mtzdata.h

Go to the documentation of this file.
00001 /*
00002      mtzdata.h: Definition of MTZ data structure.
00003      Copyright (C) 2001  CCLRC, Martyn Winn
00004 
00005      This library is free software; you can redistribute it and/or
00006      modify it under the terms of the GNU Lesser General Public
00007      License as published by the Free Software Foundation; either
00008      version 2.1 of the License, or (at your option) any later
00009      version.
00010 
00011      This library is distributed in the hope that it will be useful,
00012      but WITHOUT ANY WARRANTY; without even the implied warranty of
00013      MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00014      Lesser General Public License for more details.
00015 
00016      You should have received a copy of the GNU Lesser General Public
00017      License along with this library; if not, write to the Free
00018      Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
00019      Boston, MA 02110-1301 USA
00020 
00021 */
00022 
00033 #ifndef __CMTZData__
00034 #define __CMTZData__
00035 
00036 #define MTZVERSN "MTZ:V1.1"         
00039 #define SIZE1 20                    
00040 #define MTZRECORDLENGTH 80          
00041 #define MAXSPGNAMELENGTH 20         
00043 #define NBATCHWORDS 185       
00044 #define NBATCHINTEGERS 29     
00045 #define NBATCHREALS 156       
00047 #define MXTALS      100      
00048 #define MSETS      1000      
00049 #define MCOLUMNS  10000      
00054 typedef struct { char label[31];       
00055                  char type[3];         
00056                  int active;           
00057                  unsigned int source;  
00058                  float min;            
00059                  float max;            
00060                  float *ref;           
00061                } MTZCOL;               
00062 
00065 typedef struct { int setid;            
00066                  char dname[65];       
00067                  float wavelength;     
00068                  int ncol;             
00069                  MTZCOL **col;         
00070                } MTZSET;
00071 
00074 typedef struct { int xtalid;           
00075                  char xname[65];       
00076                  char pname[65];       
00077                  float cell[6];        
00078                  float resmin;         
00079                  float resmax;         
00080                  int nset;             
00081                  MTZSET **set;         
00082                } MTZXTAL;
00083 
00086 typedef struct bathead { int num;              
00087                  char title[71];       
00088                  char gonlab[3][9];    
00089                  int iortyp;           
00091                  int lbcell[6];        
00092                  int misflg;           
00093                  int jumpax;           
00095                  int ncryst;           
00096                  int lcrflg;           
00098                  int ldtype;           
00100                  int jsaxs;            
00101                  int nbscal;           
00103                  int ngonax;           
00104                  int lbmflg;           
00107                  int ndet;             
00109                  int nbsetid;          
00110                  float cell[6];        
00111                  float umat[9];        
00113                  float phixyz[2][3];   
00115                  float crydat[12];     
00116                  float datum[3];       
00117                  float phistt;         
00118                  float phiend;         
00119                  float scanax[3];      
00120                  float time1;          
00121                  float time2;          
00122                  float bscale;         
00123                  float bbfac;          
00124                  float sdbscale;       
00125                  float sdbfac;         
00126                  float phirange;       
00127                  float e1[3];          
00129                  float e2[3];          
00131                  float e3[3];          
00133                  float source[3];      
00134                  float so[3];          
00135                  float alambd;         
00136                  float delamb;         
00137                  float delcor;         
00138                  float divhd;          
00139                  float divvd;          
00140                  float dx[2];          
00141                  float theta[2];       
00142                  float detlm[2][2][2]; 
00144                  struct bathead *next; 
00145                } MTZBAT;               
00149 typedef struct { int spcgrp;           
00150                  char spcgrpname[MAXSPGNAMELENGTH+1];  
00151                  int nsym;             
00152                  float sym[192][4][4]; 
00154                  int nsymp;            
00155                  char symtyp;          
00156                  char pgname[11];      
00157                } SYMGRP;
00158 
00161 typedef union { char amnf[4];          
00162                 float fmnf;            
00163               } MNF;
00164 
00168 typedef struct { CCP4File *filein;     
00169                  CCP4File *fileout;    
00170                  char title[71];       
00171                  char *hist;           
00172                  int histlines;        
00173                  int nxtal;            
00174                  int ncol_read;        
00175                  int nref;             
00176                  int nref_filein;      
00177                  int refs_in_memory;   
00178                  int n_orig_bat;       
00179                  float resmax_out;     
00180                  float resmin_out;     
00181                  MNF mnf;              
00182                  SYMGRP mtzsymm;       
00183                  MTZXTAL **xtal;       
00184                  MTZBAT *batch;        
00185                  MTZCOL *order[5];     
00186                } MTZ;
00187 
00188 #endif
00189 
00190 /*
00191   Local variables:
00192   mode: font-lock
00193   End:
00194 */

Generated on Wed Oct 29 21:14:36 2008 for gpp4 by  doxygen 1.4.7