fork download
  1. #include <iostream>
  2. #include "matio.h"
  3. #include "boost/multi_array.hpp"
  4.  
  5. void save_file(array_type& Var1, array_type& Var2, array_type& Var3) {
  6.  
  7. const char* filename = "filename.mat";
  8.  
  9. mat_t *mat;
  10. matvar_t *matvar;
  11.  
  12. //gernerating the file
  13. mat = Mat_Open(filename, MAT_ACC_RDWR);
  14.  
  15. // Var1
  16. matvar = Mat_VarCreate("Name1", MAT_C_DOUBLE, MAT_T_DOUBLE, 2, {Var1.shape()[1], Var1.shape()[0]}, &Var1 [0][0], 0);
  17. Mat_VarWrite( mat, matvar, 0);
  18. Mat_VarFree(matvar);
  19.  
  20. // Var2
  21. matvar = Mat_VarCreate("Name2", MAT_C_DOUBLE, MAT_T_DOUBLE, 2, {Var2.shape()[1], Var2.shape()[0]}, &Var2 [0][0], 0);
  22. Mat_VarWrite( mat, matvar, 0);
  23. Mat_VarFree(matvar);
  24.  
  25. // Var3
  26. matvar = Mat_VarCreate("Name3", MAT_C_DOUBLE, MAT_T_DOUBLE, 2, {Var3.shape()[1], Var3.shape()[0]}, &Var3 [0][0], 0);
  27. Mat_VarWrite( mat, matvar, 0);
  28. Mat_VarFree(matvar);
  29.  
  30. Mat_Close(mat);
  31. }
  32.  
  33. void save_matrix(mat_t *mat, matvar_t *matvar, array_type& matrix) {
  34.  
  35. // arbitrary matrix
  36. matvar = Mat_VarCreate("Name", MAT_C_DOUBLE, MAT_T_DOUBLE, 2, {matrix.shape()[1], matrix.shape()[0]}, &matrix [0][0], 0);
  37. Mat_VarWrite( mat, matvar, 0);
  38. Mat_VarFree(matvar);
  39. }
  40.  
  41. template<typename ...Args>
  42. void save_file2(Args ...Arguments) {
  43.  
  44. }
Success #stdin #stdout 0.02s 2280KB
stdin
Standard input is empty
stdout
Standard output is empty