40using namespace checkpoint_utils;
41namespace fs = std::filesystem;
60bool FileExists(
const std::string& fileName) {
return fs::exists(fileName); }
66 : fileName_(fN), accessLevel_(access) {
69 H5::Exception::dontPrint();
70 hid_t fcpl_id = H5Pcreate(H5P_FILE_CREATE);
71 H5::FileCreatPropList fcpList(fcpl_id);
87 }
catch (H5::Exception&) {
88 std::stringstream message;
89 message <<
"Could not access file " <<
fileName_;
90 message <<
" with permission to " <<
accessLevel_ <<
"." << std::endl;
92 throw std::runtime_error(message.str());
102 throw std::runtime_error(
"Checkpoint file opened as read only.");
107 }
catch (H5::Exception&) {
110 }
catch (H5::Exception&) {
111 std::stringstream message;
112 message <<
"Could not create or open " <<
fileName_ <<
":" << path_
115 throw std::runtime_error(message.str());
125 }
catch (H5::Exception&) {
126 std::stringstream message;
127 message <<
"Could not open " <<
fileName_ <<
":" << path_ << std::endl;
129 throw std::runtime_error(message.str());
CheckpointAccessLevel accessLevel_
CheckpointFile(std::string fN)
CheckpointReader getReader()
std::string getFileName()
CheckpointWriter getWriter()
bool FileExists(const std::string &fileName)
base class for all analysis tools