C++ Library to handle BagIt structures. BagIt is a standard format to create transfer packages for digital preservation purposes. See https://en.wikipedia.org/wiki/BagIt for details http://andreas-romeyke.de
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

23 lines
569 B

  1. #ifndef LIBCBAG_PAYLOAD
  2. #define LIBCBAG_PAYLOAD
  3. #include <string>
  4. #include <list>
  5. #include <boost/filesystem.hpp>
  6. #include <list>
  7. //namespace fs = std::filesystem;
  8. namespace fs = boost::filesystem;
  9. using namespace std;
  10. class Payload{
  11. private:
  12. string basedir;
  13. void scan_dir_recursively( fs::path directory, list<fs::path> &paths );
  14. public:
  15. Payload( string basedir );
  16. list<string> get_all_relative_paths();
  17. list<string> get_all_absolute_paths();
  18. bool validate();
  19. };
  20. #endif
  21. // vim: set tabstop=4 softtabstop=0 expandtab shiftwidth=4 smarttab