fixed reading/writing hyperpoints to use the actual number of dimensions

This commit is contained in:
Zeno Rogue 2019-04-21 01:01:02 +02:00
parent a07afdc0a7
commit ddf7f6100a
1 changed files with 3 additions and 0 deletions

View File

@ -4546,6 +4546,9 @@ inline void hread(hstream& hs, ld& h) { double d; hs.read_chars((char*) &d, size
template<class T, size_t X> void hwrite(hstream& hs, const array<T, X>& a) { for(auto &ae: a) hwrite(hs, ae); }
template<class T, size_t X> void hread(hstream& hs, array<T, X>& a) { for(auto &ae: a) hread(hs, ae); }
inline void hread(hstream& hs, hyperpoint& h) { for(int i=0; i<MDIM; i++) hread(hs, h[i]); }
inline void hwrite(hstream& hs, hyperpoint h) { for(int i=0; i<MDIM; i++) hwrite(hs, h[i]); }
template<class T> void hwrite(hstream& hs, const vector<T>& a) { hwrite<int>(hs, isize(a)); for(auto &ae: a) hwrite(hs, ae); }
template<class T> void hread(hstream& hs, vector<T>& a) { a.resize(hs.get<int>()); for(auto &ae: a) hread(hs, ae); }