atom_pos.cc

Go to the documentation of this file.
00001 
00006 #include <stdlib.h>
00007 #include <psifiles.h>
00008 #include <libpsio/psio.hpp>
00009 extern "C" {
00010         #include <libchkpt/chkpt.h>
00011 }
00012 #include <libchkpt/chkpt.hpp>
00013 
00014 using namespace psi;
00015 
00016 int *Chkpt::rd_atom_position(void)
00017 {
00018         int *atom_position, natom;
00019         char *keyword;
00020         keyword = build_keyword("Atomic symm positions");
00021 
00022         natom = rd_natom();
00023         atom_position = array<int>(natom);
00024 
00025         psio->read_entry(PSIF_CHKPT, keyword, (char *) atom_position,
00026                 natom*sizeof(int));
00027 
00028         free(keyword);
00029         return atom_position;
00030 }
00031 
00032 void Chkpt::wt_atom_position(int *atom_position)
00033 {
00034         int natom;
00035         char *keyword;
00036         keyword = build_keyword("Atomic symm positions");
00037 
00038         natom = rd_natom();
00039 
00040         psio->write_entry(PSIF_CHKPT, keyword,
00041                 (char *) atom_position, natom*sizeof(int));
00042 
00043         free(keyword);
00044 }
00045 
00046 extern "C" {
00065         int *chkpt_rd_atom_position(void)
00066         {
00067                 return _default_chkpt_lib_->rd_atom_position();
00068         }
00069 
00070 
00091         void chkpt_wt_atom_position(int *atom_position)
00092         {
00093                 _default_chkpt_lib_->wt_atom_position(atom_position);
00094         }
00095 }
00096 

Generated on Wed Feb 13 16:35:39 2008 for PSI by  doxygen 1.5.4