10 #if defined WIN32 && defined __GLIBCXX__ 11 #include <ext/stdio_filebuf.h> 14 #define BOOST_FILESYSTEM_NO_DEPRECATED 15 #include <boost/filesystem.hpp> 16 #include <boost/filesystem/fstream.hpp> 19 namespace fs = boost::filesystem;
23 FILE *
fopen(
const fs::path& p,
const char *mode);
41 void* hFile = (
void*)-1;
61 #if defined WIN32 && defined __GLIBCXX__ 66 explicit ifstream(
const fs::path& p, std::ios_base::openmode mode = std::ios_base::in) { open(p, mode); }
68 void open(
const fs::path& p, std::ios_base::openmode mode = std::ios_base::in);
69 bool is_open() {
return m_filebuf.is_open(); }
73 __gnu_cxx::stdio_filebuf<char> m_filebuf;
74 FILE* m_file =
nullptr;
83 bool is_open() {
return m_filebuf.is_open(); }
87 __gnu_cxx::stdio_filebuf<char> m_filebuf;
88 FILE* m_file =
nullptr;
90 #else // !(WIN32 && __GLIBCXX__) 93 #endif // WIN32 && __GLIBCXX__ 96 #endif // BITCOIN_FS_H FILE * fopen(const fs::path &p, const char *mode)
Definition: fs.cpp:15
fs::ifstream ifstream
Definition: fs.h:91
fs::ofstream ofstream
Definition: fs.h:92
std::string GetReason()
Definition: fs.h:34
std::string get_filesystem_error_message(const fs::filesystem_error &e)
Definition: fs.cpp:103
file
Definition: linearize-hashes.py:138
~FileLock()
Definition: fs.cpp:39
int fd
Definition: fs.h:39
bool TryLock()
Definition: fs.cpp:46
std::string reason
Definition: fs.h:37