void PeakAnalyzer::determineZoomLevel(const QVector<GeoDataPlacemark*> &placemarks) { QVector<GeoDataPlacemark*> peaks; std::copy_if(placemarks.begin(), placemarks.end(), std::back_inserter(peaks), [](GeoDataPlacemark* placemark) { return placemark->visualCategory() == GeoDataPlacemark::NaturalPeak; }); double const maxDistance = 3000.0 / EARTH_RADIUS; dbScan(peaks, maxDistance, 2); }
int main(int argc, char *argv[]) { loadData(argv[1]); //printData(); dbScan(); printData(); }
RID DBHandle::findKey(char *relName, DataAttrInfo *dai, Value *value) { if (dai->indexNo < 0) { rm::FileHandle db = openRelFile(relName); rm::FileScan dbScan( db, value->type, dai->attrLength, dai->offset, 0, 0, EQ_OP, value->data ); Record &r = dbScan.next(); return r.rid; } else { // TODO check index } return RID(-1, -1); }