From 49f81a649909c7d817fcce810fefeb5a68981838 Mon Sep 17 00:00:00 2001 From: baldurk Date: Fri, 11 Dec 2015 14:58:45 +0100 Subject: [PATCH] Move strhash to string_utils.h --- renderdoc/driver/d3d11/d3d11_debug.cpp | 18 ------------------ renderdoc/serialise/string_utils.cpp | 18 ++++++++++++++++++ renderdoc/serialise/string_utils.h | 3 +++ 3 files changed, 21 insertions(+), 18 deletions(-) diff --git a/renderdoc/driver/d3d11/d3d11_debug.cpp b/renderdoc/driver/d3d11/d3d11_debug.cpp index 74d39648f..e790eb096 100644 --- a/renderdoc/driver/d3d11/d3d11_debug.cpp +++ b/renderdoc/driver/d3d11/d3d11_debug.cpp @@ -359,24 +359,6 @@ D3D11DebugManager::~D3D11DebugManager() ////////////////////////////////////////////////////// // debug/replay functions -static uint32_t strhash(const char *str, uint32_t seed = 5381) -{ - if(str == NULL) return seed; - - uint32_t hash = seed; - int c = *str; - str++; - - while(c) - { - hash = ((hash << 5) + hash) + c; /* hash * 33 + c */ - c = *str; - str++; - } - - return hash; -} - string D3D11DebugManager::GetShaderBlob(const char *source, const char *entry, const uint32_t compileFlags, const char *profile, ID3DBlob **srcblob) { uint32_t hash = strhash(source); diff --git a/renderdoc/serialise/string_utils.cpp b/renderdoc/serialise/string_utils.cpp index c32fe6c4b..81e802b8c 100644 --- a/renderdoc/serialise/string_utils.cpp +++ b/renderdoc/serialise/string_utils.cpp @@ -28,6 +28,24 @@ #include #include +uint32_t strhash(const char *str, uint32_t seed) +{ + if(str == NULL) return seed; + + uint32_t hash = seed; + int c = *str; + str++; + + while(c) + { + hash = ((hash << 5) + hash) + c; /* hash * 33 + c */ + c = *str; + str++; + } + + return hash; +} + string strlower(const string& str) { string newstr(str); diff --git a/renderdoc/serialise/string_utils.h b/renderdoc/serialise/string_utils.h index 58d15646c..6fe2a7d83 100644 --- a/renderdoc/serialise/string_utils.h +++ b/renderdoc/serialise/string_utils.h @@ -24,6 +24,7 @@ #pragma once +#include #include #include using std::string; @@ -35,6 +36,8 @@ std::wstring strlower(const std::wstring& str); std::string strupper(const std::string& str); std::wstring strupper(const std::wstring& str); +uint32_t strhash(const char *str, uint32_t existingHash = 5381); + template strType basename(const strType &path) { strType base = path;