Mercurial > hg > orthanc-databases
diff Framework/Plugins/OrthancCppDatabasePlugin.h @ 88:eb08ec14fb04 db-changes
new extension implemented: TagMostRecentPatient
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 15 Jan 2019 21:10:50 +0100 |
parents | 1012fe77241c |
children | ca0ecd412988 |
line wrap: on
line diff
--- a/Framework/Plugins/OrthancCppDatabasePlugin.h Thu Jan 10 20:39:36 2019 +0100 +++ b/Framework/Plugins/OrthancCppDatabasePlugin.h Tue Jan 15 21:10:50 2019 +0100 @@ -532,6 +532,8 @@ int32_t metadata) = 0; virtual int64_t GetLastChangeIndex() = 0; + + virtual void TagMostRecentPatient(int64_t patientId) = 0; }; @@ -1630,6 +1632,22 @@ } ORTHANC_PLUGINS_DATABASE_CATCH } + + + // New primitive since Orthanc 1.5.2 + static OrthancPluginErrorCode TagMostRecentPatient(void* payload, + int64_t patientId) + { + IDatabaseBackend* backend = reinterpret_cast<IDatabaseBackend*>(payload); + backend->GetOutput().SetAllowedAnswers(DatabaseBackendOutput::AllowedAnswers_None); + + try + { + backend->TagMostRecentPatient(patientId); + return OrthancPluginErrorCode_Success; + } + ORTHANC_PLUGINS_DATABASE_CATCH + } public: @@ -1717,6 +1735,7 @@ extensions.setResourcesContent = SetResourcesContent; // Fast setting tags/metadata extensions.getChildrenMetadata = GetChildrenMetadata; extensions.getLastChangeIndex = GetLastChangeIndex; + extensions.tagMostRecentPatient = TagMostRecentPatient; if (backend.HasCreateInstance()) {