APBS  1.5
valist.h
Go to the documentation of this file.
1 
62 #ifndef _VALIST_H_
63 #define _VALIST_H_
64 
65 #include "apbscfg.h"
66 
67 #include "maloc/maloc.h"
68 
69 #include "generic/vhal.h"
70 #include "generic/vatom.h"
71 #include "generic/vparam.h"
72 
78 struct sValist {
79 
80  int number;
81  double center[3];
82  double mincrd[3];
83  double maxcrd[3];
84  double maxrad;
85  double charge;
87  Vmem *vmem;
89 };
90 
95 typedef struct sValist Valist;
96 
97 #if !defined(VINLINE_VATOM)
98 
105 VEXTERNC Vatom* Valist_getAtomList(
106  Valist *thee
107  );
108 
114 VEXTERNC double Valist_getCenterX(
115  Valist *thee
116  );
117 
123 VEXTERNC double Valist_getCenterY(
124  Valist *thee
125  );
126 
132 VEXTERNC double Valist_getCenterZ(
133  Valist *thee
134  );
135 
141 VEXTERNC int Valist_getNumberAtoms(
142  Valist *thee
143  );
144 
150 VEXTERNC Vatom* Valist_getAtom(
151  Valist *thee,
152  int i
153  );
154 
160 VEXTERNC unsigned long int Valist_memChk(
161  Valist *thee
162  );
163 
164 #else /* if defined(VINLINE_VATOM) */
165 # define Valist_getAtomList(thee) ((thee)->atoms)
166 # define Valist_getNumberAtoms(thee) ((thee)->number)
167 # define Valist_getAtom(thee, i) (&((thee)->atoms[i]))
168 # define Valist_memChk(thee) (Vmem_bytes((thee)->vmem))
169 # define Valist_getCenterX(thee) ((thee)->center[0])
170 # define Valist_getCenterY(thee) ((thee)->center[1])
171 # define Valist_getCenterZ(thee) ((thee)->center[2])
172 #endif /* if !defined(VINLINE_VATOM) */
173 
179 VEXTERNC Valist* Valist_ctor();
180 
186 VEXTERNC Vrc_Codes Valist_ctor2(
187  Valist *thee
188  );
189 
194 VEXTERNC void Valist_dtor(
195  Valist **thee
196  );
197 
202 VEXTERNC void Valist_dtor2(
203  Valist *thee
204  );
205 
217 VEXTERNC Vrc_Codes Valist_readPQR(
218  Valist *thee,
219  Vparam *param,
220  Vio *sock
221  );
222 
232 VEXTERNC Vrc_Codes Valist_readPDB(
233  Valist *thee,
234  Vparam *param,
235  Vio *sock
236  );
237 
247 VEXTERNC Vrc_Codes Valist_readXML(
248  Valist *thee,
249  Vparam *param,
250  Vio *sock
251  );
252 
259 VEXTERNC Vrc_Codes Valist_getStatistics(Valist *thee);
260 
261 
262 #endif /* ifndef _VALIST_H_ */
double maxrad
Definition: valist.h:84
double charge
Definition: valist.h:85
VEXTERNC Vrc_Codes Valist_ctor2(Valist *thee)
FORTRAN stub to construct the atom list object.
Definition: valist.c:155
VEXTERNC int Valist_getNumberAtoms(Valist *thee)
Get number of atoms in the list.
Definition: valist.c:105
VEXTERNC unsigned long int Valist_memChk(Valist *thee)
Get total memory allocated for this object and its members.
Definition: valist.c:129
VEXTERNC double Valist_getCenterX(Valist *thee)
Get x-coordinate of molecule center.
Definition: valist.c:66
VEXTERNC Vrc_Codes Valist_readXML(Valist *thee, Vparam *param, Vio *sock)
Fill atom list with information from an XML file.
Definition: valist.c:725
Contains declarations for class Vatom.
VEXTERNC double Valist_getCenterY(Valist *thee)
Get y-coordinate of molecule center.
Definition: valist.c:76
Contains declarations for class Vparam.
double mincrd[3]
Definition: valist.h:82
double center[3]
Definition: valist.h:81
VEXTERNC Vatom * Valist_getAtom(Valist *thee, int i)
Get pointer to particular atom in list.
Definition: valist.c:115
Reads and assigns charge/radii parameters.
Definition: vparam.h:135
VEXTERNC Vrc_Codes Valist_getStatistics(Valist *thee)
Load up Valist with various statistics.
Definition: valist.c:869
Contains generic macro definitions for APBS.
Vatom * atoms
Definition: valist.h:86
double maxcrd[3]
Definition: valist.h:83
VEXTERNC Vrc_Codes Valist_readPDB(Valist *thee, Vparam *param, Vio *sock)
Fill atom list with information from a PDB file.
Definition: valist.c:515
VEXTERNC Vatom * Valist_getAtomList(Valist *thee)
Get actual array of atom objects from the list.
Definition: valist.c:95
Vmem * vmem
Definition: valist.h:87
Contains public data members for Vatom class/module.
Definition: vatom.h:84
Container class for list of atom objects.
Definition: valist.h:78
VEXTERNC double Valist_getCenterZ(Valist *thee)
Get z-coordinate of molecule center.
Definition: valist.c:85
int number
Definition: valist.h:80
VEXTERNC Vrc_Codes Valist_readPQR(Valist *thee, Vparam *param, Vio *sock)
Fill atom list with information from a PQR file.
Definition: valist.c:606
VEXTERNC void Valist_dtor2(Valist *thee)
FORTRAN stub to destroy atom list object.
Definition: valist.c:176
VEXTERNC void Valist_dtor(Valist **thee)
Destroys atom list object.
Definition: valist.c:167
VEXTERNC Valist * Valist_ctor()
Construct the atom list object.
Definition: valist.c:138