34 template<
class Form,
class Type>
45 template<
class Form,
class Type>
51 is.
fatalCheck(
"operator>>(Istream&, Matrix<Form, Type>&)");
55 is.
fatalCheck(
"operator>>(Istream&, Matrix<Form, Type>&) : reading first token");
80 for (
register label i=0; i<M.
n(); i++)
84 for (
register label j=0; j<M.
m(); j++)
90 "operator>>(Istream&, Matrix<Form, Type>&) : "
105 "operator>>(Istream&, Matrix<Form, Type>&) : "
106 "reading the single entry"
109 for (
register label i=0; i<nm; i++)
126 is.
read(reinterpret_cast<char*>(v), nm*
sizeof(Type));
130 "operator>>(Istream&, Matrix<Form, Type>&) : "
131 "reading the binary block"
139 <<
"incorrect first token, expected <int>, found "
148 template<
class Form,
class Type>
151 label nm =
M.n_*
M.m_;
162 const Type* v =
M.v_[0];
164 if (nm > 1 && contiguous<Type>())
168 for (
register label i=0; i< nm; i++)
189 else if (nm < 10 && contiguous<Type>())
197 for (
register label i=0; i<
M.n(); i++)
202 for (
register label j=0; j<
M.m(); j++)
222 for (
register label i=0; i<
M.n(); i++)
227 for (
register label j=0; j<
M.m(); j++)
248 os.write(reinterpret_cast<const char*>(
M.v_[0]), nm*
sizeof(Type));
253 os.check(
"Ostream& operator<<(Ostream&, const Matrix&)");