00001
00002
00003
00004
00020 #ifndef MDIO_PARAM_H
00021 #define MDIO_PARAM_H
00022
00023 #include "adt/list.h"
00024 #include "adt/table.h"
00025 #include "mdio/file.h"
00026 #include "mdapi/mdtypes.h"
00027
00028 #ifdef __cplusplus
00029 extern "C" {
00030 #endif
00031
00036 typedef struct mdio_Param_t {
00037 mdio_File file;
00038 adt_List atomprm;
00039 adt_List bondprm;
00040 adt_List angleprm;
00041 adt_List dihedprm;
00042 adt_List imprprm;
00043 adt_List nbfixprm;
00044 adt_Table tokentable;
00045 char *token;
00046 char *buffer;
00047 int bufferlen;
00048 int tokenflags;
00049 char tokenfmt[32];
00050 char *startbuf;
00051 } mdio_Param;
00052
00053
00054
00055
00062 mdio_Param *mdio_createParam(void);
00063
00064
00073 void mdio_destroyParam(mdio_Param *);
00074
00075
00076
00077
00090 int mdio_readParam(mdio_Param *, const char *name);
00091
00092
00099 MD_AtomPrm *mdio_getAtomParam(mdio_Param *, int *nelems);
00100
00101
00108 MD_BondPrm *mdio_getBondParam(mdio_Param *, int *nelems);
00109
00110
00117 MD_AnglePrm *mdio_getAngleParam(mdio_Param *, int *nelems);
00118
00119
00126 MD_TorsPrm *mdio_getDihedParam(mdio_Param *, int *nelems);
00127
00128
00135 MD_TorsPrm *mdio_getImprParam(mdio_Param *, int *nelems);
00136
00137
00147 MD_NbfixPrm *mdio_getNbfixParam(mdio_Param *, int *nelems);
00148
00149
00150
00151
00157 int mdio_initializeParam(mdio_Param *);
00158
00159
00165 void mdio_cleanupParam(mdio_Param *);
00166
00167 #ifdef __cplusplus
00168 }
00169 #endif
00170
00171 #endif