Mercurial > hg > orthanc
diff OrthancServer/ServerIndex.cpp @ 3025:039a9d262d64 db-changes
preparing to speed up find in databases
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 17 Dec 2018 17:05:28 +0100 |
parents | d207f6ac1f86 |
children | fd587cf51a89 |
line wrap: on
line diff
--- a/OrthancServer/ServerIndex.cpp Mon Dec 17 10:26:01 2018 +0100 +++ b/OrthancServer/ServerIndex.cpp Mon Dec 17 17:05:28 2018 +0100 @@ -2452,4 +2452,29 @@ LOG(ERROR) << "EXCEPTION [" << e.What() << "]"; } } + + + void ServerIndex::ApplyLookupPatients(std::vector<std::string>& patientsId, + std::vector<std::string>& instancesId, + const DatabaseLookup& lookup, + size_t limit) + { + boost::mutex::scoped_lock lock(mutex_); + + db_.ApplyLookupPatients(patientsId, lookup, limit); + db_.FindOneChildInstance(instancesId, patientsId, ResourceType_Patient); + } + + + void ServerIndex::ApplyLookupResources(std::vector<std::string>& resourcesId, + std::vector<std::string>& instancesId, + const DatabaseLookup& lookup, + ResourceType queryLevel, + size_t limit) + { + boost::mutex::scoped_lock lock(mutex_); + + db_.ApplyLookupResources(resourcesId, lookup, queryLevel, limit); + db_.FindOneChildInstance(instancesId, resourcesId, queryLevel); + } }