GLYLIB
0.3.0b
|
00001 /** file PDB.h 00002 00003 Contains header info relevant to reading and writing PDB files. */ 00004 00005 #if !defined(GLYLIB_PDB) 00006 #define GLYLIB_PDB 00007 #include <molecules.h> 00008 #include <gly_codeutils.h> 00009 #include <gly_fileutils.h> 00010 #include <structures.h> 00011 00012 /* 00013 PDB Writing Utilities 00014 00015 In the following: 00016 00017 isource = 'n' to use values stored in r.n and a.n 00018 'i' to assign numbers automatically 00019 ai = the index to use for a current atom (serial) 00020 ri = the index to use for a current residue (resSeq) 00021 ainit = the atom number (serial) to start a list with 00022 if -1 then the value saved in a.n will be used 00023 rinit = the residue number (resSeq) to start a list with 00024 if -1 then the value saved in r.n will be used 00025 isave = common setting for asave and rsave 00026 asave = the index in a.i where the assigned serial should be saved 00027 this is used for setting CONECT and LINK cards 00028 if -1, will not be saved 00029 rsave = the index in r.i where the assigned resSeq should be saved 00030 this is used for setting CONECT and LINK cards 00031 if -1, will not be saved 00032 raltname = if 'y', use the residue name stored in r.altname 00033 instead of r.N -- if used with oneres='y', set them 00034 all to be the same 00035 oneres = 'y' to make the whole molecule one residue 00036 'n' to leave it as separate residues 00037 00038 */ 00039 int NUMAT; /* Would like to get rid of this eventually */ 00040 00041 /** \addtogroup PDB 00042 * @{ 00043 */ 00044 fileslurp get_ensemble_PDB_ATOM_lines(ensemble *E,char isource, int savei,char raltname, int xs); 00045 00046 fileslurp get_assembly_PDB_ATOM_lines(assembly *A,char isource, int savei,char raltname, int xs); 00047 fileslurp get_assembly_PDB_CONECT_lines(assembly *A, char isource, int savei); 00048 fileslurp get_molecule_PDB_CONECT_lines(molecule *m, int savei); 00049 fileslurp get_atom_PDB_CONECT_lines_assembly(assembly *A, atom *a, int savei); 00050 00051 const char *get_PDB_line_for_ATOM(atom *a, residue *r,int ai, int ri, int asave, char raltname, int xs); 00052 00053 void make_ATOM_HETATM(char *pdbline); 00054 00055 fileslurp get_residue_PDB_ATOM_lines(residue *r,int ri,int ainit, int rsave, int asave,char raltname, int xs); 00056 00057 fileslurp get_molecule_PDB_ATOM_lines(molecule *mol,int rinit,int ainit, int rsave,int asave, char oneres, char raltname, int xs); 00058 00059 void outputMolPDB(molecule*,char*); /* Writes a pdb using a given molecule -- deprecated */ 00060 void outputAsmblPDB(assembly*,char*);/* Writes a pdb using a given assembly -- deprecated */ 00061 /** @}*/ 00062 00063 #endif