summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoe Zhao <ztuowen@gmail.com>2015-05-13 20:55:00 +0800
committerJoe Zhao <ztuowen@gmail.com>2015-05-13 20:55:00 +0800
commit565b014e8102a36673a000e1ceb720ec20eceaf0 (patch)
treef9458b9b2cc12e4b04d47cddc66d944d37225a23
parent47296445b3c5cbea101a5961ef784eb05c84f854 (diff)
downloadranksvm-565b014e8102a36673a000e1ceb720ec20eceaf0.tar.gz
ranksvm-565b014e8102a36673a000e1ceb720ec20eceaf0.tar.bz2
ranksvm-565b014e8102a36673a000e1ceb720ec20eceaf0.zip
add ignore
-rw-r--r--tools/dataProvider.h2
-rw-r--r--tools/fileDataProvider.cpp5
2 files changed, 6 insertions, 1 deletions
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;