Main Page | Modules | Alphabetical List | Data Structures | File List | Data Fields | Globals | Related Pages

pbeparm.h

Go to the documentation of this file.
00001 
00072 #ifndef _PBEPARM_H_
00073 #define _PBEPARM_H_
00074 
00075 /* Generic headers */
00076 #include "maloc/maloc.h"
00077 
00078 /* Headers specific to this file */
00079 #include "apbs/vhal.h"
00080 
00084 #define PBEPARM_MAXWRITE 10
00085 
00090 enum ePBEparm_calcEnergy {
00091     PCE_NO=0, 
00092     PCE_TOTAL=1, 
00093     PCE_COMPS=2 
00094 };
00095 
00100 typedef enum ePBEparm_calcEnergy PBEparm_calcEnergy;
00101 
00106 enum ePBEparm_calcForce {
00107     PCF_NO=0, 
00108     PCF_TOTAL=1, 
00109     PCF_COMPS=2 
00110 };
00111 
00116 typedef enum ePBEparm_calcForce PBEparm_calcForce;
00117 
00126 struct sPBEparm {
00127 
00128     int molid;  
00129     int setmolid;  
00130     int useDielMap;  
00132     int dielMapID;  
00133     int useKappaMap;  
00135     int kappaMapID;  
00136     int useChargeMap;  
00138     int chargeMapID;  
00139     Vhal_PBEType pbetype;  
00140     int setpbetype;  
00141     Vbcfl bcfl;  
00142     int setbcfl;  
00143     int nion;  
00144     int setnion;  
00145     double ionq[MAXION];  
00146     double ionc[MAXION];  
00147     double ionr[MAXION];  
00148     int setion[MAXION];  
00149     double pdie;  
00150     int setpdie;  
00151     double sdens; 
00152     int setsdens; 
00153     double sdie;  
00154     int setsdie;  
00155     Vsurf_Meth srfm;  
00156     int setsrfm;  
00157     double srad;  
00158     int setsrad;  
00159     double swin;  
00160     int setswin;  
00161     double temp;  
00162     int settemp;  
00164         double smsize; 
00165         int setsmsize; 
00167         double smvolume; 
00168         int setsmvolume; 
00170     PBEparm_calcEnergy calcenergy;  
00171     int setcalcenergy;  
00172     PBEparm_calcForce calcforce;  
00173     int setcalcforce;  
00174     int numwrite;  
00175     char writestem[PBEPARM_MAXWRITE][VMAX_ARGLEN]; 
00177     Vdata_Type writetype[PBEPARM_MAXWRITE];  
00178     Vdata_Format writefmt[PBEPARM_MAXWRITE];  
00180     int writemat;  
00183     int setwritemat;  
00184     char writematstem[VMAX_ARGLEN];  
00185     int writematflag;  
00190     int parsed;  
00192 };
00193 
00198 typedef struct sPBEparm PBEparm;
00199 
00200 /* ///////////////////////////////////////////////////////////////////////////
00201 // Class NOsh: Non-inlineable methods (mcsh.c)
00203 
00209 double PBEparm_getIonCharge(
00210         PBEparm *thee, 
00211         int iion  
00212         );
00213 
00219 double PBEparm_getIonConc(
00220         PBEparm *thee, 
00221         int iion 
00222         );
00223 
00229 double PBEparm_getIonRadius(
00230         PBEparm *thee, 
00231         int iion 
00232         );
00233 
00234 
00240 PBEparm* PBEparm_ctor();
00241 
00247 int PBEparm_ctor2(
00248         PBEparm *thee 
00249         );
00250 
00255 void PBEparm_dtor(
00256         PBEparm **thee 
00257         );
00258 
00263 void PBEparm_dtor2(
00264         PBEparm *thee 
00265         );
00266 
00272 int PBEparm_check(
00273         PBEparm *thee 
00274         );
00275 
00280 void PBEparm_copy(
00281         PBEparm *thee, 
00282         PBEparm *parm 
00283         );
00284 
00291 int PBEparm_parseToken(
00292         PBEparm *thee, 
00293         char tok[VMAX_BUFSIZE], 
00294         Vio *sock 
00295         );
00296 
00297 
00298 #endif 
00299 
00300 

Generated on Thu Jul 12 11:49:45 2007 for APBS by doxygen 1.3.4