diff --git a/openVulkanoCpp/Base/Utils.hpp b/openVulkanoCpp/Base/Utils.hpp index 1e56708..675d45c 100644 --- a/openVulkanoCpp/Base/Utils.hpp +++ b/openVulkanoCpp/Base/Utils.hpp @@ -157,6 +157,24 @@ namespace OpenVulkano return str.size() >= suffix.size() && 0 == str.compare(str.size()-suffix.size(), suffix.size(), suffix); } + static void ToLower(std::string& str) + { + std::transform(str.begin(), str.end(), str.begin(), [](char c) { std::tolower(c); }); + } + + static void ToLower(const std::string& str, char* dest) + { + std::transform(str.begin(), str.end(), dest, [](char c) { std::tolower(c); }); + } + + static std::string ToLower(const std::string& str) + { + std::string dest; + dest.reserve(str.size()); + std::transform(str.begin(), str.end(), dest.begin(), [](char c) { std::tolower(c); }); + return dest; + } + static std::pair SplitAtLastOccurrence(const std::string& str, char splitAt) { size_t pos = str.rfind(splitAt); @@ -187,11 +205,11 @@ namespace OpenVulkano } template - static Array ReadFile(const T& filePath, bool emptyOnMissing = true, + static Array ReadFile(const T& filePath, bool emptyOnMissing = false, bool nullTerminateString = false); template - static Array ReadFile(const char (&filePath)[N], bool emptyOnMissing = true, + static Array ReadFile(const char (&filePath)[N], bool emptyOnMissing = false, bool nullTerminateString = false) { return ReadFile(std::string(filePath), emptyOnMissing, nullTerminateString);