#ifndef __PHIPSI_H__
#define __PHIPSI_H__

#include "vec3D.h"
#include "pdbfile.h"

// increase 100 --> 150 (by Beomsoo Han, 27 Sep 2011)
#define MAX_ATOMS 150 /* 32 maximum number of atom slots in a ResData struct */

#define Np		0 // The N atom preceding CA.
#define CA		1
#define C1		2
#define O		3
#define N		4 // The N atom following CA.
#define CA2		5
#define HN		6 // H atom for N.
#define HNp		7 // 1st H atom for Np (only for first residue).
#define HNp2	8 // 2nd H atom for Np (only for first residue).
#define HNp3	9 // 3rd H atom for Np (only for first residue).
#define HA		10 // H atom for CA.
#define HA2     11 // Second alpha hydrogen for Glycine. Note that this has the same value as CB!
#define CB		11
#define CG		12

void parseResidueFromPDBFile(PDBFile *pdb, int n, Vec3D *atoms,  Vec3D *templ,
		char names[MAX_ATOMS][5], int *numAtoms, int *max_atom_index);

#endif 
