summaryrefslogtreecommitdiffstats
path: root/Project/glm/ext/scalar_relational.inl
diff options
context:
space:
mode:
authorThales Lima Oliveira <thaleslima.ufu@gmail.com>2020-07-08 12:05:44 -0300
committerThales Lima Oliveira <thaleslima.ufu@gmail.com>2020-07-08 12:05:44 -0300
commitcc2e40324d884bc0417809980a696a5084e661d7 (patch)
tree9620dfa32e44af5c125aac2c9bce36011ad27b8b /Project/glm/ext/scalar_relational.inl
parentae765504642759ba4addbf91d62f167ba5f063a3 (diff)
downloadPSP.git-cc2e40324d884bc0417809980a696a5084e661d7.tar.gz
PSP.git-cc2e40324d884bc0417809980a696a5084e661d7.tar.xz
PSP.git-cc2e40324d884bc0417809980a696a5084e661d7.zip
GLM folder changed
Diffstat (limited to 'Project/glm/ext/scalar_relational.inl')
-rw-r--r--Project/glm/ext/scalar_relational.inl40
1 files changed, 40 insertions, 0 deletions
diff --git a/Project/glm/ext/scalar_relational.inl b/Project/glm/ext/scalar_relational.inl
new file mode 100644
index 0000000..c85583e
--- /dev/null
+++ b/Project/glm/ext/scalar_relational.inl
@@ -0,0 +1,40 @@
+#include "../common.hpp"
+#include "../ext/scalar_int_sized.hpp"
+#include "../ext/scalar_uint_sized.hpp"
+#include "../detail/type_float.hpp"
+
+namespace glm
+{
+ template<typename genType>
+ GLM_FUNC_QUALIFIER GLM_CONSTEXPR bool equal(genType const& x, genType const& y, genType const& epsilon)
+ {
+ return abs(x - y) <= epsilon;
+ }
+
+ template<typename genType>
+ GLM_FUNC_QUALIFIER GLM_CONSTEXPR bool notEqual(genType const& x, genType const& y, genType const& epsilon)
+ {
+ return abs(x - y) > epsilon;
+ }
+
+ template<typename genType>
+ GLM_FUNC_QUALIFIER GLM_CONSTEXPR bool equal(genType const& x, genType const& y, int MaxULPs)
+ {
+ detail::float_t<genType> const a(x);
+ detail::float_t<genType> const b(y);
+
+ // Different signs means they do not match.
+ if(a.negative() != b.negative())
+ return false;
+
+ // Find the difference in ULPs.
+ typename detail::float_t<genType>::int_type const DiffULPs = abs(a.i - b.i);
+ return DiffULPs <= MaxULPs;
+ }
+
+ template<typename genType>
+ GLM_FUNC_QUALIFIER GLM_CONSTEXPR bool notEqual(genType const& x, genType const& y, int ULPs)
+ {
+ return !equal(x, y, ULPs);
+ }
+}//namespace glm