diff options
| author | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-08-24 07:55:34 +0000 |
|---|---|---|
| committer | Tatsuhiro Tsujikawa <tatsuhiro.t@gmail.com> | 2008-08-24 07:55:34 +0000 |
| commit | 02dde388b8cd7dd914b07ffa67a326b0dad8ad88 (patch) | |
| tree | 28040cb0b1cfd71db27b8eb26a935aeb6aac7251 /src/Util.h | |
| parent | ed25d2e245a84704389692478343de5d8f2f8771 (diff) | |
2008-08-24 Tatsuhiro Tsujikawa <tujikawa at rednoah dot com>
Added ntoh64 and hton64 as inline functions.
* src/Util.cc
* test/UtilTest.cc
Diffstat (limited to 'src/Util.h')
| -rw-r--r-- | src/Util.h | 13 |
1 files changed, 13 insertions, 0 deletions
@@ -61,6 +61,19 @@ class FileEntry; #define DIV_FLOOR(X,Y) ((X)/(Y)+((X)%(Y)? 1:0)) +#ifdef WORDS_BIGENDIAN +inline uint64_t ntoh64(uint64_t x) { return x; } +inline uint64_t hton64(uint64_t x) { return x; } +#else // !WORDS_BIGENDIAN +inline uint64_t byteswap64(uint64_t x) { + uint64_t v1 = ntohl(x & 0x00000000ffffffff); + uint64_t v2 = ntohl(x >> 32); + return (v1 << 32)|v2; +} +inline uint64_t ntoh64(uint64_t x) { return byteswap64(x); } +inline uint64_t hton64(uint64_t x) { return byteswap64(x); } +#endif // !WORDS_BIGENDIAN + class Util { public: static void split(std::pair<std::string, std::string>& hp, |
