io_utils.h 933 B

123456789101112131415161718192021222324252627282930313233
  1. #include <iostream>
  2. #include <memory>
  3. #include <vector>
  4. #include <string>
  5. #ifndef PADDLE_MODEL_PROTECT_IO_UTILS_H
  6. #define PADDLE_MODEL_PROTECT_IO_UTILS_H
  7. namespace ioutil {
  8. int read_file(const char* file_path, unsigned char** dataptr, size_t* sizeptr);
  9. int read_with_pos_and_length(const char* file_path, unsigned char* dataptr, size_t pos, size_t length);
  10. int read_with_pos(const char* file_path, size_t pos, unsigned char** dataptr, size_t* sizeptr);
  11. int write_file(const char* file_path, const unsigned char* dataptr, size_t sizeptr);
  12. int append_file(const char* file_path, const unsigned char* data, size_t len);
  13. size_t read_file_size(const char* file_path);
  14. int read_file_to_file(const char* src_path, const char* dst_path);
  15. int dir_exist_or_mkdir(const char* dir);
  16. /**
  17. * @return files.size()
  18. */
  19. int read_dir_files(const char* dir_path, std::vector<std::string>& files);
  20. }
  21. #endif //PADDLE_MODEL_PROTECT_IO_UTILS_H