[Debtags-commits] [svn] r1839 - in debtags/1.6.0: . tools
Enrico Zini
enrico at costa.debian.org
Mon Aug 14 14:54:19 UTC 2006
Author: enrico
Date: Mon Aug 14 14:54:17 2006
New Revision: 1839
Modified:
debtags/1.6.0/ (props changed)
debtags/1.6.0/tools/SmartSearcher.cc
debtags/1.6.0/tools/SmartSearcher.h
Log:
r3137 at viaza: enrico | 2006-08-14 15:54:01 +0100
Use smart search support from tagcoll 2.0
Modified: debtags/1.6.0/tools/SmartSearcher.cc
==============================================================================
--- debtags/1.6.0/tools/SmartSearcher.cc (original)
+++ debtags/1.6.0/tools/SmartSearcher.cc Mon Aug 14 14:54:17 2006
@@ -93,14 +93,11 @@
if (utils::set_contains(wanted, *i)
|| utils::set_contains(unwanted, *i)
|| utils::set_contains(ignored, *i)
- || collMetrics.get(*i) == 0)
+ || coll.getCardinality(*i) == 0)
continue;
- //size_t itemCount = coll.itemCount();
- //int discr = collMetrics.discriminance(*i, itemCount) * 200 / itemCount;
- //int discr = collMetrics.discriminance(*i, itemCount);
tagsInMenu.push_back(*i);
cout << tagsInMenu.size() << ") " << i->fullname()
- << " (" << collMetrics.get(*i) << "/" << coll.itemCount() << ")" << endl;
+ << " (" << coll.getCardinality(*i) << "/" << coll.itemCount() << ")" << endl;
--max;
}
}
@@ -108,7 +105,7 @@
void SmartSearcher::showDiscriminant(int max)
{
// Compute the most interesting tags by discriminance
- vector<Tag> discr = collMetrics.tagsSortedByDiscriminance(coll.itemCount());
+ vector<Tag> discr = coll.tagsInDiscriminanceOrder();
for (std::vector<Tag>::const_reverse_iterator i = discr.rbegin();
i != discr.rend() && max > 0; ++i)
@@ -118,12 +115,9 @@
|| utils::set_contains(unwanted, *i)
|| utils::set_contains(ignored, *i))
continue;
- //size_t itemCount = coll.itemCount();
- //int discr = collMetrics.discriminance(*i, itemCount) * 200 / itemCount;
- //int discr = collMetrics.discriminance(*i, itemCount);
tagsInMenu.push_back(*i);
cout << tagsInMenu.size() << ") " << i->fullname()
- << " (" << collMetrics.get(*i) << "/" << coll.itemCount() << ")" << endl;
+ << " (" << coll.getCardinality(*i) << "/" << coll.itemCount() << ")" << endl;
--max;
}
}
@@ -146,34 +140,6 @@
// Regenerate coll
coll = coll::Fast<Package, Tag>();
fullColl.output(filter(inserter(coll)));
-
- collMetrics = TagMetrics<Tag, int>::computeFromTags(coll);
-
-#if 0
- // Compute the most interesting tags by discriminance
- interesting = collMetrics.tagsSortedByDiscriminance(coll.itemCount());
-
- // Select them as interesting to be displayed
- autoSelect(tags, 0);
-
- // Compute the most interesting tags by jumps
- coll::Fast<Package, Tag> coll1;
- for (coll::Fast<Package, Tag>::const_iterator i = coll.begin();
- i != coll.end(); ++i)
- if (patternMatch(i->first))
- coll1.insert(wibble::singleton(i->first), i->second);
-
- // Compute the set of tags that better represent the keyword search
- TagMetrics<Tag, int> metrics2 = TagMetrics<Tag, int>::computeFromTags(coll1);
- TagMetrics<Tag, int> jumps = metrics2.jumpsFrom(collMetrics);
- interesting = jumps.tagsSortedByMetrics();
-
- //metrics1.dump("BEF ", cout);
- //metrics2.dump("AFT ", cout);
- //jumps.dump("JMP ", cout);
-
- //autoSelect(tags, 0);
-#endif
}
void SmartSearcher::computeInteresting(const std::string& pattern)
@@ -213,7 +179,6 @@
computeInteresting(pattern);
coll = fullColl;
- collMetrics = TagMetrics<Tag, int>::computeFromTags(coll);
}
void SmartSearcher::interact()
@@ -329,7 +294,7 @@
if (utils::set_contains(wanted, *i)
|| utils::set_contains(unwanted, *i)
|| utils::set_contains(ignored, *i)
- || collMetrics.get(*i) == 0)
+ || coll.getCardinality(*i) == 0)
continue;
cout << i->fullname() << " - " << i->shortDescription() << endl;
}
Modified: debtags/1.6.0/tools/SmartSearcher.h
==============================================================================
--- debtags/1.6.0/tools/SmartSearcher.h (original)
+++ debtags/1.6.0/tools/SmartSearcher.h Mon Aug 14 14:54:17 2006
@@ -21,6 +21,7 @@
#include "Ept.h"
#include <tagcoll/coll/fast.h>
+#if 0
template<typename Tag, typename Number = int>
class TagMetrics : public std::map<Tag, Number>
{
@@ -208,6 +209,7 @@
{
return TagMetricsInserter< TagMetrics<Tag, Number> >(out);
}
+#endif
class SmartSearcher
@@ -222,7 +224,6 @@
coll::Fast<Package, Tag> fullColl;
coll::Fast<Package, Tag> coll;
- TagMetrics<Tag, int> collMetrics;
std::vector<std::string> patterns;
std::set<Tag> wanted;
More information about the Debtags-commits
mailing list