#pragma once #include <string> #include <algorithm> namespace math { template<typename T> T cap(T value, T min_value, T max_value) { value = std::min<T>(value, max_value); value = std::max<T>(value, min_value); return value; } }