| 19 | */ |
| 20 | template<typename T> |
| 21 | inline T clamp(const T& value, const T& min, const T& max) |
| 22 | { |
| 23 | assert(min <= max && "invalid clamp range"); |
| 24 | #if 0 |
| 25 | return std::min<T>(std::max<T>(value, min), max); |
| 26 | #else |
| 27 | if(value < min) return min; |
| 28 | if(value > max) return max; |
| 29 | return value; |
| 30 | #endif |
| 31 | } |
| 32 | |
| 33 | /* |
| 34 | template<typename T> |
nothing calls this directly
no outgoing calls
no test coverage detected