void structMatrix :: v_readText (MelderReadText text, int formatVersion) { if (formatVersion < 0) { our xmin = texgetr8 (text); our xmax = texgetr8 (text); our ymin = texgetr8 (text); our ymax = texgetr8 (text); our nx = texgeti4 (text); our ny = texgeti4 (text); our dx = texgetr8 (text); our dy = texgetr8 (text); our x1 = texgetr8 (text); our y1 = texgetr8 (text); } else { Matrix_Parent :: v_readText (text, formatVersion); } if (our xmin > our xmax) Melder_throw (U"xmin should be less than or equal to xmax."); if (our ymin > our ymax) Melder_throw (U"ymin should be less than or equal to ymax."); if (our nx < 1) Melder_throw (U"nx should be at least 1."); if (our ny < 1) Melder_throw (U"ny should be at least 1."); if (our dx <= 0.0) Melder_throw (U"dx should be greater than 0.0."); if (our dy <= 0.0) Melder_throw (U"dy should be greater than 0.0."); our z = NUMmatrix_readText_r8 (1, our ny, 1, our nx, text, "z"); }
void structSampled2 :: v_readText (MelderReadText text, int /*formatVersion*/) { xmin = texgetr8 (text); xmax = texgetr8 (text); nx = texgeti4 (text); dx = texgetr8 (text); x1 = texgetr8 (text); ymin = texgetr8 (text); ymax = texgetr8 (text); ny = texgeti4 (text); dy = texgetr8 (text); y1 = texgetr8 (text); if (xmin > xmax || ymin > ymax) { Melder_throw (U"xmax should be greater than xmax and ymax should be greater than ymin."); } if (nx < 1 || ny < 1) { Melder_throw (U"nx and ny should be at least 1."); } if (dx <= 0 || dy <= 0) { Melder_throw (U"dx and dy should be positive."); } }
void structTableOfReal :: v_readText (MelderReadText a_text) { numberOfColumns = texgeti4 (a_text); if (numberOfColumns >= 1) { columnLabels = NUMvector <wchar_t*> (1, numberOfColumns); for (long i = 1; i <= numberOfColumns; i ++) columnLabels [i] = texgetw2 (a_text); } numberOfRows = texgeti4 (a_text); if (numberOfRows >= 1) { rowLabels = NUMvector <wchar_t*> (1, numberOfRows); } if (numberOfRows >= 1 && numberOfColumns >= 1) { data = NUMmatrix <double> (1, numberOfRows, 1, numberOfColumns); for (long i = 1; i <= numberOfRows; i ++) { rowLabels [i] = texgetw2 (a_text); for (long j = 1; j <= numberOfColumns; j ++) data [i] [j] = texgetr8 (a_text); } } }