Mercurial > hg > orthanc-databases
diff Framework/Plugins/OrthancCppDatabasePlugin.h @ 119:260fc55f10cd OrthancMySQL-2.0
cancelling changesets 116 and 117 in OrthancMySQL-2.0 branch
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Mon, 04 Feb 2019 16:32:45 +0100 |
parents | ca0ecd412988 |
children |
line wrap: on
line diff
--- a/Framework/Plugins/OrthancCppDatabasePlugin.h Mon Feb 04 16:03:17 2019 +0100 +++ b/Framework/Plugins/OrthancCppDatabasePlugin.h Mon Feb 04 16:32:45 2019 +0100 @@ -82,8 +82,7 @@ AllowedAnswers_DicomTag, AllowedAnswers_ExportedResource, AllowedAnswers_MatchingResource, - AllowedAnswers_String, - AllowedAnswers_Metadata + AllowedAnswers_String }; OrthancPluginContext* context_; @@ -535,23 +534,6 @@ virtual int64_t GetLastChangeIndex() = 0; virtual void TagMostRecentPatient(int64_t patientId) = 0; - -#if defined(ORTHANC_PLUGINS_VERSION_IS_ABOVE) // Macro introduced in 1.3.1 -# if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 5, 4) - // NB: "parentPublicId" must be cleared if the resource has no parent - virtual bool LookupResourceAndParent(int64_t& id, - OrthancPluginResourceType& type, - std::string& parentPublicId, - const char* publicId) = 0; -# endif -#endif - -#if defined(ORTHANC_PLUGINS_VERSION_IS_ABOVE) // Macro introduced in 1.3.1 -# if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 5, 4) - virtual void GetAllMetadata(std::map<int32_t, std::string>& result, - int64_t id) = 0; -# endif -#endif }; @@ -1668,77 +1650,6 @@ } -#if defined(ORTHANC_PLUGINS_VERSION_IS_ABOVE) // Macro introduced in 1.3.1 -# if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 5, 4) - // New primitive since Orthanc 1.5.4 - static OrthancPluginErrorCode GetAllMetadata(OrthancPluginDatabaseContext* context, - void* payload, - int64_t resourceId) - { - IDatabaseBackend* backend = reinterpret_cast<IDatabaseBackend*>(payload); - backend->GetOutput().SetAllowedAnswers(DatabaseBackendOutput::AllowedAnswers_Metadata); - - try - { - std::map<int32_t, std::string> result; - backend->GetAllMetadata(result, resourceId); - - for (std::map<int32_t, std::string>::const_iterator - it = result.begin(); it != result.end(); ++it) - { - OrthancPluginDatabaseAnswerMetadata(backend->GetOutput().context_, - backend->GetOutput().database_, - resourceId, it->first, it->second.c_str()); - } - - return OrthancPluginErrorCode_Success; - } - ORTHANC_PLUGINS_DATABASE_CATCH - } -# endif -#endif - - -#if defined(ORTHANC_PLUGINS_VERSION_IS_ABOVE) // Macro introduced in 1.3.1 -# if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 5, 4) - // New primitive since Orthanc 1.5.4 - static OrthancPluginErrorCode LookupResourceAndParent(OrthancPluginDatabaseContext* context, - uint8_t* isExisting, - int64_t* id, - OrthancPluginResourceType* type, - void* payload, - const char* publicId) - { - IDatabaseBackend* backend = reinterpret_cast<IDatabaseBackend*>(payload); - backend->GetOutput().SetAllowedAnswers(DatabaseBackendOutput::AllowedAnswers_String); - - try - { - std::string parent; - if (backend->LookupResourceAndParent(*id, *type, parent, publicId)) - { - *isExisting = 1; - - if (!parent.empty()) - { - OrthancPluginDatabaseAnswerString(backend->GetOutput().context_, - backend->GetOutput().database_, - parent.c_str()); - } - } - else - { - *isExisting = 0; - } - - return OrthancPluginErrorCode_Success; - } - ORTHANC_PLUGINS_DATABASE_CATCH - } -# endif -#endif - - public: /** * Register a custom database back-end written in C++. @@ -1830,18 +1741,11 @@ { extensions.createInstance = CreateInstance; // Fast creation of resources } + + performanceWarning = false; #endif -#if defined(ORTHANC_PLUGINS_VERSION_IS_ABOVE) // Macro introduced in 1.3.1 -# if ORTHANC_PLUGINS_VERSION_IS_ABOVE(1, 5, 4) - // Optimizations brought by Orthanc 1.5.4 - extensions.lookupResourceAndParent = LookupResourceAndParent; - extensions.getAllMetadata = GetAllMetadata; - performanceWarning = false; -# endif -#endif - - if (performanceWarning) + if (performanceWarning) { char info[1024]; sprintf(info,