00001 00073 #ifndef _APOLPARM_H_ 00074 #define _APOLPARM_H_ 00075 00076 /* Generic header files */ 00077 #include "maloc/maloc.h" 00078 #include "apbs/vhal.h" 00079 #include "apbs/vstring.h" 00080 #include "apbs/vparam.h" 00081 00086 enum eAPOLparm_calcEnergy { 00087 ACE_NO=0, 00088 ACE_TOTAL=1, 00089 ACE_COMPS=2 00090 }; 00091 00096 typedef enum eAPOLparm_calcEnergy APOLparm_calcEnergy; 00097 00102 enum eAPOLparm_calcForce { 00103 ACF_NO=0, 00104 ACF_TOTAL=1, 00105 ACF_COMPS=2 00106 }; 00107 00112 typedef enum eAPOLparm_calcForce APOLparm_calcForce; 00113 00118 enum eAPOLparm_doCalc { 00119 ACD_NO=0, 00120 ACD_YES=1, 00121 ACD_ERROR=2 00122 }; 00123 00128 typedef enum eAPOLparm_doCalc APOLparm_doCalc; 00129 00130 00136 struct sAPOLparm { 00137 00138 int parsed; 00140 double grid[3]; 00141 int setgrid; 00143 int molid; 00144 int setmolid; 00146 double bconc; 00147 int setbconc; 00149 double sdens; 00150 int setsdens; 00152 double dpos; 00153 int setdpos; 00155 double press; 00156 int setpress; 00158 Vsurf_Meth srfm; 00159 int setsrfm; 00161 double srad; 00162 int setsrad; 00164 double swin; 00165 int setswin; 00167 double temp; 00168 int settemp; 00170 double gamma; 00172 int setgamma; 00174 APOLparm_calcEnergy calcenergy; 00175 int setcalcenergy; 00177 APOLparm_calcForce calcforce; 00178 int setcalcforce; 00180 double watsigma; 00181 double watepsilon; 00182 double sasa; 00183 double sav; 00184 double wcaEnergy; 00185 double totForce[3]; 00186 }; 00187 00192 typedef struct sAPOLparm APOLparm; 00193 00194 /* /////////////////////////////////////////////////////////////////////////// 00195 // Class NOsh: Non-inlineable methods (nosh.c) 00197 00203 APOLparm* APOLparm_ctor(); 00204 00211 int APOLparm_ctor2(APOLparm *thee); 00212 00218 void APOLparm_dtor(APOLparm **thee); 00219 00225 void APOLparm_dtor2(APOLparm *thee); 00226 00234 int APOLparm_check(APOLparm *thee); 00235 00242 void APOLparm_copy(APOLparm *thee, APOLparm *source); 00243 00254 Vrc_Codes APOLparm_parseToken(APOLparm *thee, char tok[VMAX_BUFSIZE], 00255 Vio *sock); 00256 00257 #endif 00258 00259