From 565b014e8102a36673a000e1ceb720ec20eceaf0 Mon Sep 17 00:00:00 2001
From: Joe Zhao <ztuowen@gmail.com>
Date: Wed, 13 May 2015 20:55:00 +0800
Subject: add ignore

---
 tools/dataProvider.h       | 2 ++
 tools/fileDataProvider.cpp | 5 ++++-
 2 files changed, 6 insertions(+), 1 deletion(-)

diff --git a/tools/dataProvider.h b/tools/dataProvider.h
index b8c14b2..a740a65 100644
--- a/tools/dataProvider.h
+++ b/tools/dataProvider.h
@@ -69,6 +69,8 @@ public:
     inline int getfSize(){return n;}
     void addEntry(DataEntry* d){
         int ext=false;
+        if (d->qid=="-1")
+            other.push_back(d);
         for (int i=0;i<uniq.size();++i)
             if (uniq[i]->qid==d->qid)
             {
diff --git a/tools/fileDataProvider.cpp b/tools/fileDataProvider.cpp
index 1ff0279..39fae1b 100644
--- a/tools/fileDataProvider.cpp
+++ b/tools/fileDataProvider.cpp
@@ -58,6 +58,9 @@ void RidFileDP::readEntries() {
         d.addEntry(e);
     }
     pos = 0;
+    std::vector<DataEntry*> & dat = d.getData();
+    while (pos<dat.size() && dat[pos]->rank!=-1 && dat[pos]->qid!="-1")
+        ++pos;
     qid = 1;
     read = true;
 }
@@ -95,7 +98,7 @@ int RidFileDP::getDataSet(DataList &out){
     dat[pos]->qid=std::to_string(qid);
     ++qid;
     dat[pos]->rank=qid;
-    while (pos<dat.size() && dat[pos]->rank!=-1)
+    while (pos<dat.size() && dat[pos]->rank!=-1 && dat[pos]->qid=="-1")
         ++pos;
     if (pos==d.getSize())
         eof = true;
-- 
cgit v1.2.3-70-g09d2