Mercurial > hg > orthanc
comparison OrthancServer/Sources/ServerContext.cpp @ 5688:d0a264b803f1 find-refactoring
first implementation of database paging
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 09 Jul 2024 15:36:28 +0200 |
parents | 11575590e493 |
children | 708952bd869c |
comparison
equal
deleted
inserted
replaced
5686:11575590e493 | 5688:d0a264b803f1 |
---|---|
1537 const std::set<std::string>& labels, | 1537 const std::set<std::string>& labels, |
1538 LabelsConstraint labelsConstraint, | 1538 LabelsConstraint labelsConstraint, |
1539 size_t since, | 1539 size_t since, |
1540 size_t limit) | 1540 size_t limit) |
1541 { | 1541 { |
1542 unsigned int databaseLimit = (queryLevel == ResourceType_Instance ? | 1542 const uint64_t databaseLimit = GetDatabaseLimits(queryLevel); |
1543 limitFindInstances_ : limitFindResults_); | |
1544 | 1543 |
1545 std::vector<std::string> resources, instances; | 1544 std::vector<std::string> resources, instances; |
1546 const DicomTagConstraint* dicomModalitiesConstraint = NULL; | 1545 const DicomTagConstraint* dicomModalitiesConstraint = NULL; |
1547 | 1546 |
1548 bool hasModalitiesInStudyLookup = (queryLevel == ResourceType_Study && | 1547 bool hasModalitiesInStudyLookup = (queryLevel == ResourceType_Study && |
1562 /** | 1561 /** |
1563 * EXPERIMENTAL VERSION | 1562 * EXPERIMENTAL VERSION |
1564 **/ | 1563 **/ |
1565 | 1564 |
1566 ResourceFinder finder(queryLevel, false /* TODO-FIND: don't expand for now */); | 1565 ResourceFinder finder(queryLevel, false /* TODO-FIND: don't expand for now */); |
1566 finder.SetDatabaseLimits(databaseLimit); | |
1567 | 1567 |
1568 if (databaseLimit != 0) | 1568 if (databaseLimit != 0) |
1569 { | 1569 { |
1570 finder.SetLimits(0, databaseLimit + 1); | 1570 finder.SetLimits(0, databaseLimit + 1); |
1571 } | 1571 } |