// Copyright (C) 2021 Jérôme "Lynix" Leclercq (lynix680@gmail.com) // This file is part of the "Nazara Engine - Shader module" // For conditions of distribution and use, see copyright notice in Config.hpp #pragma once #ifndef NAZARA_SHADER_CONFIGCHECK_HPP #define NAZARA_SHADER_CONFIGCHECK_HPP /// This file is used to check the constant values defined in Config.hpp #include #define CheckType(name, type, err) static_assert(std::is_ ##type ::value, #type err) #define CheckTypeAndVal(name, type, op, val, err) static_assert(std::is_ ##type ::value && name op val, #type err) // We force the value of MANAGE_MEMORY in debug #if defined(NAZARA_DEBUG) && !NAZARA_SHADER_MANAGE_MEMORY #undef NAZARA_SHADER_MANAGE_MEMORY #define NAZARA_SHADER_MANAGE_MEMORY 0 #endif #endif // NAZARA_SHADER_CONFIGCHECK_HPP