summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDave Parks <davep@lindenlab.com>2010-01-22 18:30:34 -0600
committerDave Parks <davep@lindenlab.com>2010-01-22 18:30:34 -0600
commit89f6504a27cd8a92faeba1c39f8afef232ea660f (patch)
treebbd6e3b4c1686529f52a8fe86a0559d1387f1bd5
parent9e0920df2c8ada63397ea6e439b02ee5b40d1bf6 (diff)
parenteeaa7a7593d839a3c8be784e6b383657cd9b2e13 (diff)
merge
-rw-r--r--indra/llmath/m4math.cpp17
-rw-r--r--indra/llmath/m4math.h1
2 files changed, 18 insertions, 0 deletions
diff --git a/indra/llmath/m4math.cpp b/indra/llmath/m4math.cpp
index 7c7f60154d..3700142982 100644
--- a/indra/llmath/m4math.cpp
+++ b/indra/llmath/m4math.cpp
@@ -785,6 +785,23 @@ bool operator!=(const LLMatrix4 &a, const LLMatrix4 &b)
return FALSE;
}
+bool operator<(const LLMatrix4& a, const LLMatrix4 &b)
+{
+ U32 i, j;
+ for (i = 0; i < NUM_VALUES_IN_MAT4; i++)
+ {
+ for (j = 0; j < NUM_VALUES_IN_MAT4; j++)
+ {
+ if (a.mMatrix[i][j] != b.mMatrix[i][j])
+ {
+ return a.mMatrix[i][j] < b.mMatrix[i][j];
+ }
+ }
+ }
+
+ return false;
+}
+
const LLMatrix4& operator*=(LLMatrix4 &a, F32 k)
{
U32 i, j;
diff --git a/indra/llmath/m4math.h b/indra/llmath/m4math.h
index de981b7646..6007b96bd9 100644
--- a/indra/llmath/m4math.h
+++ b/indra/llmath/m4math.h
@@ -237,6 +237,7 @@ public:
friend bool operator==(const LLMatrix4 &a, const LLMatrix4 &b); // Return a == b
friend bool operator!=(const LLMatrix4 &a, const LLMatrix4 &b); // Return a != b
+ friend bool operator<(const LLMatrix4 &a, const LLMatrix4& b); // Return a < b
friend const LLMatrix4& operator+=(LLMatrix4 &a, const LLMatrix4 &b); // Return a + b
friend const LLMatrix4& operator-=(LLMatrix4 &a, const LLMatrix4 &b); // Return a - b