00001
00010 #ifndef BS_BOS_CORE_RESULTS_HDF5_WRITER_H_
00011 #define BS_BOS_CORE_RESULTS_HDF5_WRITER_H_
00012
00013 #ifdef _HDF5
00014 #include "bs_hdf5_storage.h"
00015 #include "well_results_storage.h"
00016 #include "fip_results_storage.h"
00017 #include "rs_smesh_iface.h"
00018
00019 namespace blue_sky
00020 {
00021 namespace hdf5
00022 {
00023
00030 void write_well_results (const bs_hdf5_storage &hdf5, smart_ptr <well_results_storage> &well_res, bool write_conn_data);
00031
00037 void write_fip_results (const bs_hdf5_storage &hdf5, smart_ptr <fip_results_storage> &fip_res);
00038
00044 template<class strategy_t>
00045 void write_mesh_to_hdf5 (const smart_ptr <bs_hdf5_storage, true> &hdf5, const smart_ptr <rs_smesh_iface<strategy_t>, true> &mesh);
00046
00047 namespace detail
00048 {
00052 template <typename params_t>
00053 void add_params (const bs_hdf5_storage &hdf5, const hid_t &hid, const std::string &name, const params_t ¶ms, size_t size);
00054
00058 template <typename dates_t>
00059 void add_dates (const bs_hdf5_storage &hdf5, const hid_t &hid, const dates_t &dates);
00060 }
00061
00062 }
00063 }
00064
00065 #endif // #ifdef _HDF5
00066
00067 #endif // #ifndef BS_BOS_CORE_RESULTS_HDF5_WRITER_H_
00068