00001
00049 #ifndef _VALIST_H_
00050 #define _VALIST_H_
00051
00052
00053 #include "maloc/maloc.h"
00054 #include "apbs/vhal.h"
00055
00056
00057 #include "apbs/vatom.h"
00058 #include "apbs/vparam.h"
00059
00065 struct sValist {
00066
00067 int number;
00068 double center[3];
00069 double mincrd[3];
00070 double maxcrd[3];
00071 double maxrad;
00072 double charge;
00073 Vatom *atoms;
00074 Vmem *vmem;
00076 };
00077
00082 typedef struct sValist Valist;
00083
00084 #if !defined(VINLINE_VATOM)
00085
00092 Vatom* Valist_getAtomList(Valist *thee);
00093
00100 double Valist_getCenterX(Valist *thee);
00101
00108 double Valist_getCenterY(Valist *thee);
00109
00116 double Valist_getCenterZ(Valist *thee);
00117
00118
00125 int Valist_getNumberAtoms(Valist *thee);
00126
00134 Vatom* Valist_getAtom(Valist *thee, int i);
00135
00142 int Valist_memChk(Valist *thee);
00143
00144 #else
00145 # define Valist_getAtomList(thee) ((thee)->atoms)
00146 # define Valist_getNumberAtoms(thee) ((thee)->number)
00147 # define Valist_getAtom(thee, i) (&((thee)->atoms[i]))
00148 # define Valist_memChk(thee) (Vmem_bytes((thee)->vmem))
00149 # define Valist_getCenterX(thee) ((thee)->center[0])
00150 # define Valist_getCenterY(thee) ((thee)->center[1])
00151 # define Valist_getCenterZ(thee) ((thee)->center[2])
00152 #endif
00153
00154
00155
00157
00163
00164
00171
00172
00178
00179
00185
00186
00203
00204
00205
00223
00224
00225
00247
00248
00249
00250
00251