| /*! |
| * Copyright (c) 2017 by Contributors |
| * \file file_util.h |
| * \brief Minimum file manipulation util for runtime. |
| */ |
| #ifndef TVM_RUNTIME_FILE_UTIL_H_ |
| #define TVM_RUNTIME_FILE_UTIL_H_ |
| |
| #include <string> |
| #include "meta_data.h" |
| |
| namespace tvm { |
| namespace runtime { |
| /*! |
| * \brief Get file format from given file name or format argument. |
| * \param file_name The name of the file. |
| * \param format The format of the file. |
| */ |
| std::string GetFileFormat(const std::string& file_name, |
| const std::string& format); |
| |
| /*! |
| * \return the directory in which TVM stores cached files. |
| * May be set using TVM_CACHE_DIR; defaults to system locations. |
| */ |
| std::string GetCacheDir(); |
| |
| /*! |
| * \brief Get meta file path given file name and format. |
| * \param file_name The name of the file. |
| */ |
| std::string GetMetaFilePath(const std::string& file_name); |
| |
| /*! |
| * \brief Get file basename (i.e. without leading directories) |
| * \param file_name The name of the file. |
| * \return the base name |
| */ |
| std::string GetFileBasename(const std::string& file_name); |
| |
| /*! |
| * \brief Load binary file into a in-memory buffer. |
| * \param file_name The name of the file. |
| * \param data The data to be loaded. |
| */ |
| void LoadBinaryFromFile(const std::string& file_name, |
| std::string* data); |
| |
| /*! |
| * \brief Load binary file into a in-memory buffer. |
| * \param file_name The name of the file. |
| * \param data The binary data to be saved. |
| */ |
| void SaveBinaryToFile(const std::string& file_name, |
| const std::string& data); |
| |
| /*! |
| * \brief Save meta data to file. |
| * \param file_name The name of the file. |
| * \param fmap The function info map. |
| */ |
| void SaveMetaDataToFile( |
| const std::string& file_name, |
| const std::unordered_map<std::string, FunctionInfo>& fmap); |
| |
| /*! |
| * \brief Load meta data to file. |
| * \param file_name The name of the file. |
| * \param fmap The function info map. |
| */ |
| void LoadMetaDataFromFile( |
| const std::string& file_name, |
| std::unordered_map<std::string, FunctionInfo>* fmap); |
| |
| /*! |
| * \brief Remove (unlink) a file. |
| * \param file_name The file name. |
| */ |
| void RemoveFile(const std::string& file_name); |
| } // namespace runtime |
| } // namespace tvm |
| #endif // TVM_RUNTIME_FILE_UTIL_H_ |