X-Git-Url: https://git.cworth.org/git?a=blobdiff_plain;f=common%2Fos.hpp;h=cc72a0ea5b288184ffeb1759894344d2f5f5de3a;hb=be6b2e76b2a5c529eec85cab10732444143c87d5;hp=b9144052d23be24933711c82d75776c97d808992;hpb=7257d46c8a6938428750e9272dfb4ac47b9b4404;p=apitrace diff --git a/common/os.hpp b/common/os.hpp index b914405..cc72a0e 100644 --- a/common/os.hpp +++ b/common/os.hpp @@ -30,14 +30,11 @@ #ifndef _OS_HPP_ #define _OS_HPP_ -#include #include #include #include #include -#include - #ifdef _WIN32 #ifndef snprintf #define snprintf _snprintf @@ -45,109 +42,10 @@ #ifndef vsnprintf #define vsnprintf _vsnprintf #endif -#define PATH_SEP '\\' -#else /* !_WIN32 */ -#define PATH_SEP '/' #endif /* !_WIN32 */ -#ifndef PATH_MAX -#define PATH_MAX 1024 -#endif - namespace os { -void acquireMutex(void); - -void releaseMutex(void); - - -class Path { -protected: - typedef std::vector Buffer; - Buffer buffer; - - Buffer::iterator rfind(char c) { - Buffer::iterator it = buffer.end(); - while (it != buffer.begin()) { - --it; - if (*it == c) { - return it; - } - } - return buffer.end(); - } - -public: - Path() { - buffer.push_back(0); - } - - Path(const char *s) : - buffer(s, s + strlen(s) + 1) - {} - - template - Path(InputIterator first, InputIterator last) : - buffer(first, last) - { - buffer.push_back(0); - } - - char *buf(size_t size) { - buffer.resize(size); - return &buffer[0]; - } - - void trimDirectory(void) { - Buffer::iterator sep = rfind(PATH_SEP); - if (sep != buffer.end()) { - buffer.erase(buffer.begin(), sep + 1); - } - } - - void trimExtension(void) { - Buffer::iterator dot = rfind('.'); - if (dot != buffer.end()) { - buffer.erase(dot, buffer.end()); - } - } - - size_t length(void) const { - size_t size = buffer.size(); - assert(size > 0); - assert(buffer[size - 1] == 0); - return size - 1; - } - - void truncate(size_t size) { - assert(size > 0); - assert(size <= buffer.size()); - assert(buffer[size - 1] == 0); - buffer.resize(size); - } - - void truncate(void) { - truncate(strlen(str())); - } - - const char *str(void) const { - assert(buffer[buffer.size() - 1] == 0); - return &buffer[0]; - } - - void join(const Path & other) { - size_t len = length(); - if (len > 0 && buffer[len - 1] != PATH_SEP) { - buffer.insert(buffer.begin() + len, PATH_SEP); - } - buffer.insert(buffer.begin() + len, other.buffer.begin(), other.buffer.end() - 1); - } - -}; - -Path getProcessName(); -Path getCurrentDir(); - void log(const char *format, ...) #ifdef __GNUC__ __attribute__ ((format (printf, 1, 2))) @@ -172,11 +70,6 @@ void log(const char *format, ...) #endif #endif -/** - * Get the current time in microseconds from an unknown base. - */ -long long getTime(void); - void abort(void); void setExceptionCallback(void (*callback)(void));