diff HuffmanString.cpp @ 21:3bcdb8bb6914

Huffman representations.
author Tom Fredrik Blenning Klaussen <bfg@blenning.no>
date Wed, 05 Sep 2012 21:54:53 +0200
parents
children fda70a362ed5
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/HuffmanString.cpp	Wed Sep 05 21:54:53 2012 +0200
@@ -0,0 +1,33 @@
+#include "HuffmanString.hpp"
+
+HuffmanSet* HuffmanString::set = 0;
+
+HuffmanString::HuffmanString(const QString& str, HuffmanSet* set)
+{
+  set = this->set;
+  if (!set)
+    set = new HuffmanSet();
+  this->set = set;
+  
+  key = set->insert(str);
+}
+
+QString HuffmanString::toString() const
+{
+  return set->value(key);
+}
+
+HuffmanString::operator QString() const
+{
+  return toString();
+}
+
+bool HuffmanString::operator<(const HuffmanString& rhs) const
+{
+  return this->toString() < rhs.toString();
+}
+
+bool HuffmanString::operator==(const HuffmanString& rhs) const
+{
+  return this->toString() == rhs.toString();
+}