summaryrefslogtreecommitdiffstats
path: root/include/query/wirs.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/query/wirs.h')
-rw-r--r--include/query/wirs.h13
1 files changed, 10 insertions, 3 deletions
diff --git a/include/query/wirs.h b/include/query/wirs.h
index ae82194..62b43f6 100644
--- a/include/query/wirs.h
+++ b/include/query/wirs.h
@@ -219,9 +219,7 @@ public:
return result;
}
- static std::vector<R> merge(std::vector<std::vector<Wrapped<R>>> &results, void *parms) {
- std::vector<R> output;
-
+ static std::vector<R> merge(std::vector<std::vector<Wrapped<R>>> &results, void *parms, std::vector<R> &output) {
for (size_t i=0; i<results.size(); i++) {
for (size_t j=0; j<results[i].size(); j++) {
output.emplace_back(results[i][j].rec);
@@ -240,5 +238,14 @@ public:
auto s = (BufferState<R> *) state;
delete s;
}
+
+ static bool repeat(void *parms, std::vector<R> &results, std::vector<void*> states, void* buffer_state) {
+ auto p = (Parms<R> *) parms;
+
+ if (results.size() < p->sample_size) {
+ return true;
+ }
+ return false;
+ }
};
}}