diff options
author | Erik Schnetter <schnetter@cct.lsu.edu> | 2010-08-24 12:04:51 -0400 |
---|---|---|
committer | Barry Wardell <barry.wardell@gmail.com> | 2011-12-14 18:21:12 +0000 |
commit | a62e8ee3f1e86100cda633f51c22ee063e28df76 (patch) | |
tree | 96c4522bba984cfb4a1e53ce75733d6cdbf08c01 /CarpetDev/CarpetIOF5_standalone/src/file.hh | |
parent | eb813afcef1be0aba7154fe41d21e4a7657371ad (diff) |
CarpetIOF5: Rename old thorn
Diffstat (limited to 'CarpetDev/CarpetIOF5_standalone/src/file.hh')
-rw-r--r-- | CarpetDev/CarpetIOF5_standalone/src/file.hh | 103 |
1 files changed, 103 insertions, 0 deletions
diff --git a/CarpetDev/CarpetIOF5_standalone/src/file.hh b/CarpetDev/CarpetIOF5_standalone/src/file.hh new file mode 100644 index 000000000..44d8ce00c --- /dev/null +++ b/CarpetDev/CarpetIOF5_standalone/src/file.hh @@ -0,0 +1,103 @@ +#ifndef FILE_HH +#define FILE_HH + +#include <string> +#include <vector> + +#include <hdf5.h> + +#include "cctk.h" + +#include "extending.hh" + + + +namespace CarpetIOF5 { + + using std::string; + using std::vector; + + + + namespace F5 { + + class file_t { + + // File mode for creating directories + static int const mode = 0755; + + cGH const * const m_cctkGH; + + string const m_path; + string const m_basename; + string const m_extension; + string m_filename; + + bool const m_is_metafile; + bool const m_is_datafile; + + hid_t m_hdf5_file; + + hid_t m_hdf5_fiber_contents; + hid_t m_hdf5_fiber_global_charts; + hid_t m_hdf5_fiber_parameter_space; + + file_t (); + file_t (file_t const &); + file_t operator= (file_t const &); + + string + create_filename (int proc, + bool create_directories = false) + const; + + static void + create_or_check_version (hid_t const hdf5_file); + + public: + + file_t (cGH const * cctkGH, + string path, + string basename, + string extension, + bool do_truncate, + bool is_metafile, + bool is_datafile); + + virtual + ~ file_t (); + + cGH const * + get_cctkGH () + const; + + hid_t + get_hdf5_file () + const; + + hid_t + get_hdf5_fiber_parameter_space () + const; + + bool get_is_metafile () + const; + + bool get_is_datafile () + const; + + void + get_link_destination (int proc, + string & filename, + string & objectname) + const; + + virtual bool + invariant () + const; + }; + + } // namespace F5 + +} // namespace CarpetIOF5 + +#endif // #ifndef FILE_HH |