diff --git a/configure.ac b/configure.ac index ee2c8c7a91770a3dee458dbe7c5f7e629a34a652..806329ac3898091275f8c3f613ec8ca3a4e606d9 100755 --- a/configure.ac +++ b/configure.ac @@ -16,6 +16,7 @@ m4_ifdef([AX_BOOST_BASE],,[m4_include([m4/ax_boost_base.m4])]) m4_ifdef([AX_BOOST_IOSTREAMS],,[m4_include([m4/ax_boost_iostreams.m4])]) m4_ifdef([AX_BOOST_PROGRAM_OPTIONS],,[m4_include([m4/ax_boost_program_options.m4])]) m4_ifdef([AX_BOOST_UNIT_TEST_FRAMEWORK],,[m4_include([m4/ax_boost_unit_test_framework.m4])]) +m4_ifdef([AX_LIB_HDF5],,[m4_include([m4/ax_lib_hdf5.m4])]) case $host_os in *cygwin*) diff --git a/csv_out_test.csv b/csv_out_test.csv index 9ba91bdd2429ccad6e213bf885cd1df1fe94f8c2..a282d1bf36e8166650172be409bd953650989d0d 100644 --- a/csv_out_test.csv +++ b/csv_out_test.csv @@ -1,4 +1,4 @@ -x[0],x[1],x[2],column_0,column_1,column_2,column_3,column_4_[0],column_4_[1],column_4_[2],column_5_[0][0],column_5_[0][1],column_5_[0][2],column_5_[1][0],column_5_[1][1],column_5_[1][2],column_5_[2][0],column_5_[2][1],column_5_[2][2] +x[0],x[1],x[2],x,y,z,s,v_[0],v_[1],v_[2],t_[0][0],t_[0][1],t_[0][2],t_[1][0],t_[1][1],t_[1][2],t_[2][0],t_[2][1],t_[2][2] 1,2,3,1,2,3,4,1,2,7,10,13,8,19,23,5,4,3,11 1,2,3,1,2,3,4,2,3,8,11,14,9,20,24,6,5,4,12 1,2,3,1,2,3,4,3,4,9,12,15,10,21,25,7,6,5,13 diff --git a/src/CSVWriter/CSVWriter.hpp b/src/CSVWriter/CSVWriter.hpp index fc6822c8af1ad00d00f7305eafbf2c7256d76d86..7cd9388646dab9b5eea786c596d99536b57e67a5 100644 --- a/src/CSVWriter/CSVWriter.hpp +++ b/src/CSVWriter/CSVWriter.hpp @@ -86,15 +86,12 @@ struct csv_col //! It call the functor for each member template - void operator()(T& t) + inline void operator()(T& t) { // This is the type of the csv column - typedef decltype(std::declval.template get()) col_type; - - // Remove the reference from the column type - typedef typename boost::remove_reference::type col_rtype; + typedef typename boost::mpl::at>::type col_type; - csv_col_str(std::string(Tobj::attributes::name[T::value]),str); + csv_col_str(std::string(Tobj::attributes::name[T::value]),str); } }; diff --git a/src/CSVWriter/CSVWriter_unit_tests.hpp b/src/CSVWriter/CSVWriter_unit_tests.hpp index 048ed8598a9b82bcaf94463744164b087a756af3..0e23363017d8dd97ef7251d1044d95ec0a847b00 100644 --- a/src/CSVWriter/CSVWriter_unit_tests.hpp +++ b/src/CSVWriter/CSVWriter_unit_tests.hpp @@ -10,7 +10,7 @@ BOOST_AUTO_TEST_SUITE( csv_writer_test ) BOOST_AUTO_TEST_CASE( csv_writer_particles ) { // Allocate a property vector - auto v_prp = allocate_openfpm(16); + auto v_prp = allocate_openfpm_prp(16); // Vector of position openfpm::vector> v_pos; @@ -23,7 +23,7 @@ BOOST_AUTO_TEST_CASE( csv_writer_particles ) } // CSVWriter test - CSVWriter>, openfpm::vector> > csv_writer; + CSVWriter>, openfpm::vector> > csv_writer; // Write the CSV csv_writer.write("csv_out.csv",v_pos,v_prp);