]> Creatis software - clitk.git/blobdiff - common/clitkPortability.h
*** empty log message ***
[clitk.git] / common / clitkPortability.h
index da1b7ba6c710a18e848b3f4fa906196763e6d0df..ca16fcf5809fe5dd5d80c8f8da30a507edf92e24 100755 (executable)
@@ -1,10 +1,23 @@
 #ifndef CLITKPORTABILITY_H
 #define CLITKPORTABILITY_H
-  
+
+#if defined(WIN32)
+#  define _USE_MATH_DEFINES //Before math.h include (i.e. cmath)
+#endif
+#include <cmath>
+
 #if defined(WIN32)
 #  define rint(x)  floor(x+0.5)
 #  define lrint(x) (long)rint(x) 
-#  define _USE_MATH_DEFINES
 #endif
 
+template<typename T>
+int IsNormal(const T val) {
+#if defined(_MSC_VER)
+  return _finite(val);
+#elif defined(unix)
+  return std::isnormal(val);
+#endif
+}
+
 #endif /* end #define CLITKPORTABILITY_H */