From 95c853f60e39da03b602cc3d9b55a7dcd5eb086f Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?David=20Proch=C3=A1zka?= <david@prochazka.dev>
Date: Tue, 4 May 2021 20:29:38 +0200
Subject: [PATCH] ADD: k into rank

---
 src/mhtree/MHTree.java                   | 6 +++---
 src/mhtree/benchmarking/SearchState.java | 2 +-
 2 files changed, 4 insertions(+), 4 deletions(-)

diff --git a/src/mhtree/MHTree.java b/src/mhtree/MHTree.java
index fb71ff5..8ed418d 100644
--- a/src/mhtree/MHTree.java
+++ b/src/mhtree/MHTree.java
@@ -88,7 +88,7 @@ public class MHTree extends Algorithm implements Serializable {
                 }
             } else {
                 for (Node child : ((InternalNode) node).getChildren()) {
-                    searchState.queue.add(new ObjectToNodeDistanceRank(searchState.queryObject, child));
+                    searchState.queue.add(new ObjectToNodeDistanceRank(searchState.queryObject, child, operation.getK()));
                 }
             }
         }
@@ -100,7 +100,7 @@ public class MHTree extends Algorithm implements Serializable {
         LocalAbstractObject queryObject = operation.getQueryObject();
 
         PriorityQueue<ObjectToNodeDistanceRank> queue = new PriorityQueue<>();
-        queue.add(new ObjectToNodeDistanceRank(queryObject, root));
+        queue.add(new ObjectToNodeDistanceRank(queryObject, root, operation.getK()));
 
         while (!queue.isEmpty()) {
             if (approxState != null && approxState.stop()) {
@@ -121,7 +121,7 @@ public class MHTree extends Algorithm implements Serializable {
                 }
             } else {
                 for (Node child : ((InternalNode) node).getChildren()) {
-                    queue.add(new ObjectToNodeDistanceRank(queryObject, child));
+                    queue.add(new ObjectToNodeDistanceRank(queryObject, child, operation.getK()));
                 }
             }
         }
diff --git a/src/mhtree/benchmarking/SearchState.java b/src/mhtree/benchmarking/SearchState.java
index f3a5dcf..eccc121 100644
--- a/src/mhtree/benchmarking/SearchState.java
+++ b/src/mhtree/benchmarking/SearchState.java
@@ -16,7 +16,7 @@ public class SearchState {
 
     public SearchState(MHTree tree, ApproxKNNQueryOperation operation) {
         this.queue = new PriorityQueue<>();
-        this.queue.add(new ObjectToNodeDistanceRank(operation.getQueryObject(), tree.getRoot()));
+        this.queue.add(new ObjectToNodeDistanceRank(operation.getQueryObject(), tree.getRoot(), operation.getK()));
         this.queryObject = operation.getQueryObject();
         this.approxState = ApproxState.create(operation, tree);
         this.recall = 0d;
-- 
GitLab