diff --git a/openVulkanoCpp/Base/Utils.cpp b/openVulkanoCpp/Base/Utils.cpp index 95c2ca7..d3f8fd1 100644 --- a/openVulkanoCpp/Base/Utils.cpp +++ b/openVulkanoCpp/Base/Utils.cpp @@ -18,6 +18,8 @@ namespace OpenVulkano { + std::atomic_int Utils::uniqueTypeID = 0; + void Utils::SetThreadName(const std::string& name) { #ifdef _MSC_VER diff --git a/openVulkanoCpp/Base/Utils.hpp b/openVulkanoCpp/Base/Utils.hpp index 34fc5dc..6c744ef 100644 --- a/openVulkanoCpp/Base/Utils.hpp +++ b/openVulkanoCpp/Base/Utils.hpp @@ -12,12 +12,15 @@ #include #include #include +#include #include "Data/Containers/Array.hpp" namespace OpenVulkano { class Utils { + static std::atomic_int uniqueTypeID; + public: static void SetThreadName(const std::string& name); static std::string GetThreadName(); @@ -138,5 +141,12 @@ namespace OpenVulkano } static Array ReadFile(const std::string& filePath, bool emptyOnMissing = false); + + template + int GetUniqueTypeId() + { + static const int id = uniqueTypeID++; + return id; + } }; }