Mercurial > hg > orthanc
comparison OrthancServer/Sources/ServerContext.cpp @ 5683:0c218d90096e
moved handling of labels out of DatabaseLookup
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 09 Jul 2024 11:33:37 +0200 |
parents | f690568f0325 |
children | 9b3816c21008 078b724dcbf8 |
comparison
equal
deleted
inserted
replaced
5680:68fc5af30c03 | 5683:0c218d90096e |
---|---|
1531 | 1531 |
1532 | 1532 |
1533 void ServerContext::Apply(ILookupVisitor& visitor, | 1533 void ServerContext::Apply(ILookupVisitor& visitor, |
1534 const DatabaseLookup& lookup, | 1534 const DatabaseLookup& lookup, |
1535 ResourceType queryLevel, | 1535 ResourceType queryLevel, |
1536 const std::set<std::string>& labels, | |
1537 LabelsConstraint labelsConstraint, | |
1536 size_t since, | 1538 size_t since, |
1537 size_t limit) | 1539 size_t limit) |
1538 { | 1540 { |
1539 unsigned int databaseLimit = (queryLevel == ResourceType_Instance ? | 1541 unsigned int databaseLimit = (queryLevel == ResourceType_Instance ? |
1540 limitFindInstances_ : limitFindResults_); | 1542 limitFindInstances_ : limitFindResults_); |
1554 fastLookup->RemoveConstraint(DICOM_TAG_MODALITIES_IN_STUDY); | 1556 fastLookup->RemoveConstraint(DICOM_TAG_MODALITIES_IN_STUDY); |
1555 } | 1557 } |
1556 | 1558 |
1557 { | 1559 { |
1558 const size_t lookupLimit = (databaseLimit == 0 ? 0 : databaseLimit + 1); | 1560 const size_t lookupLimit = (databaseLimit == 0 ? 0 : databaseLimit + 1); |
1559 GetIndex().ApplyLookupResources(resources, &instances, *fastLookup, queryLevel, | 1561 GetIndex().ApplyLookupResources(resources, &instances, *fastLookup, queryLevel, labels, labelsConstraint, lookupLimit); |
1560 lookup.GetLabels(), lookup.GetLabelsConstraint(), lookupLimit); | |
1561 } | 1562 } |
1562 | 1563 |
1563 bool complete = (databaseLimit == 0 || | 1564 bool complete = (databaseLimit == 0 || |
1564 resources.size() <= databaseLimit); | 1565 resources.size() <= databaseLimit); |
1565 | 1566 |