diff --git a/modules/io/src/mol/dcd_io.cc b/modules/io/src/mol/dcd_io.cc index c580ce1b244361b28e85199f2c206f3d8c61c1be..0ac5a745632802c16be0b7a49a0e27c3aba9bb1c 100644 --- a/modules/io/src/mol/dcd_io.cc +++ b/modules/io/src/mol/dcd_io.cc @@ -78,7 +78,7 @@ mol::CoordGroupHandle load_dcd(const mol::AtomHandleList& alist2, bool gap_flag = true; boost::filesystem::path trj_f(trj_fn); - boost::filesystem::ifstream ff(trj_f); + boost::filesystem::ifstream ff(trj_f, std::ios::binary); DCDHeader header; char dummy[4]; @@ -165,6 +165,7 @@ mol::CoordGroupHandle load_dcd(const mol::AtomHandleList& alist2, for(uint j=0;j<clist.size();++j) { clist[j].SetX(xlist[j]); } + // y coord if(gap_flag) ff.read(dummy,sizeof(dummy)); ff.read(reinterpret_cast<char*>(&xlist[0]),sizeof(float)*xlist.size()); @@ -173,6 +174,7 @@ mol::CoordGroupHandle load_dcd(const mol::AtomHandleList& alist2, for(uint j=0;j<clist.size();++j) { clist[j].SetY(xlist[j]); } + // z coord if(gap_flag) ff.read(dummy,sizeof(dummy)); ff.read(reinterpret_cast<char*>(&xlist[0]),sizeof(float)*xlist.size());