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