X-Git-Url: http://info.iut-bm.univ-fcomte.fr/pub/gitweb/simgrid.git/blobdiff_plain/f725137b36b0a847bfab6401dc3130670a62910a..172a73b13fe909117c7fbf3d69d4ce5e87efdbc6:/include/xbt/file.hpp diff --git a/include/xbt/file.hpp b/include/xbt/file.hpp new file mode 100644 index 0000000000..e642320631 --- /dev/null +++ b/include/xbt/file.hpp @@ -0,0 +1,33 @@ +/* Copyright (c) 2017. The SimGrid Team. + * All rights reserved. */ + +/* This program is free software; you can redistribute it and/or modify it + * under the terms of the license (GNU LGPL) which comes with this package. */ + +#ifndef XBT_FILE_HPP +#define XBT_FILE_HPP + +#include +#include + +namespace simgrid { +namespace xbt { + +class Path { +public: + explicit Path(const char* path): path_(path) {} + explicit Path(std::string path): path_(std::move(path)) {} + + /** @brief Returns the full path name */ + std::string getName() { return path_; } + /** @brief Returns the directory component of a path (reimplementation of POSIX dirname) */ + std::string getDirname(); + /** @brief Returns the file component of a path (reimplementation of POSIX basename) */ + std::string getBasename(); + +private: + std::string path_; +}; +}} + +#endif /* XBT_FILE_HPP */