comparison Framework/Plugins/IDatabaseBackend.h @ 203:2089d4071408

moving classes out of OrthancPlugins namespace, to OrthancDatabases
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 18 Mar 2021 18:15:34 +0100
parents 2def2df94f94
children d9ef3f16e6a2
comparison
equal deleted inserted replaced
202:2def2df94f94 203:2089d4071408
24 24
25 #include "IDatabaseBackendOutput.h" 25 #include "IDatabaseBackendOutput.h"
26 26
27 #include <list> 27 #include <list>
28 28
29 namespace OrthancPlugins 29 namespace OrthancDatabases
30 { 30 {
31 class IDatabaseBackend : public boost::noncopyable 31 class IDatabaseBackend : public boost::noncopyable
32 { 32 {
33 public: 33 public:
34 virtual ~IDatabaseBackend() 34 virtual ~IDatabaseBackend()
56 virtual void ClearExportedResources() = 0; 56 virtual void ClearExportedResources() = 0;
57 57
58 virtual int64_t CreateResource(const char* publicId, 58 virtual int64_t CreateResource(const char* publicId,
59 OrthancPluginResourceType type) = 0; 59 OrthancPluginResourceType type) = 0;
60 60
61 virtual void DeleteAttachment(OrthancPlugins::IDatabaseBackendOutput& output, 61 virtual void DeleteAttachment(IDatabaseBackendOutput& output,
62 int64_t id, 62 int64_t id,
63 int32_t attachment) = 0; 63 int32_t attachment) = 0;
64 64
65 virtual void DeleteMetadata(int64_t id, 65 virtual void DeleteMetadata(int64_t id,
66 int32_t metadataType) = 0; 66 int32_t metadataType) = 0;
67 67
68 virtual void DeleteResource(OrthancPlugins::IDatabaseBackendOutput& output, 68 virtual void DeleteResource(IDatabaseBackendOutput& output,
69 int64_t id) = 0; 69 int64_t id) = 0;
70 70
71 virtual void GetAllInternalIds(std::list<int64_t>& target, 71 virtual void GetAllInternalIds(std::list<int64_t>& target,
72 OrthancPluginResourceType resourceType) = 0; 72 OrthancPluginResourceType resourceType) = 0;
73 73
78 OrthancPluginResourceType resourceType, 78 OrthancPluginResourceType resourceType,
79 uint64_t since, 79 uint64_t since,
80 uint64_t limit) = 0; 80 uint64_t limit) = 0;
81 81
82 /* Use GetOutput().AnswerChange() */ 82 /* Use GetOutput().AnswerChange() */
83 virtual void GetChanges(OrthancPlugins::IDatabaseBackendOutput& output, 83 virtual void GetChanges(IDatabaseBackendOutput& output,
84 bool& done /*out*/, 84 bool& done /*out*/,
85 int64_t since, 85 int64_t since,
86 uint32_t maxResults) = 0; 86 uint32_t maxResults) = 0;
87 87
88 virtual void GetChildrenInternalId(std::list<int64_t>& target /*out*/, 88 virtual void GetChildrenInternalId(std::list<int64_t>& target /*out*/,
90 90
91 virtual void GetChildrenPublicId(std::list<std::string>& target /*out*/, 91 virtual void GetChildrenPublicId(std::list<std::string>& target /*out*/,
92 int64_t id) = 0; 92 int64_t id) = 0;
93 93
94 /* Use GetOutput().AnswerExportedResource() */ 94 /* Use GetOutput().AnswerExportedResource() */
95 virtual void GetExportedResources(OrthancPlugins::IDatabaseBackendOutput& output, 95 virtual void GetExportedResources(IDatabaseBackendOutput& output,
96 bool& done /*out*/, 96 bool& done /*out*/,
97 int64_t since, 97 int64_t since,
98 uint32_t maxResults) = 0; 98 uint32_t maxResults) = 0;
99 99
100 /* Use GetOutput().AnswerChange() */ 100 /* Use GetOutput().AnswerChange() */
101 virtual void GetLastChange(OrthancPlugins::IDatabaseBackendOutput& output) = 0; 101 virtual void GetLastChange(IDatabaseBackendOutput& output) = 0;
102 102
103 /* Use GetOutput().AnswerExportedResource() */ 103 /* Use GetOutput().AnswerExportedResource() */
104 virtual void GetLastExportedResource(OrthancPlugins::IDatabaseBackendOutput& output) = 0; 104 virtual void GetLastExportedResource(IDatabaseBackendOutput& output) = 0;
105 105
106 /* Use GetOutput().AnswerDicomTag() */ 106 /* Use GetOutput().AnswerDicomTag() */
107 virtual void GetMainDicomTags(OrthancPlugins::IDatabaseBackendOutput& output, 107 virtual void GetMainDicomTags(IDatabaseBackendOutput& output,
108 int64_t id) = 0; 108 int64_t id) = 0;
109 109
110 virtual std::string GetPublicId(int64_t resourceId) = 0; 110 virtual std::string GetPublicId(int64_t resourceId) = 0;
111 111
112 virtual uint64_t GetResourceCount(OrthancPluginResourceType resourceType) = 0; 112 virtual uint64_t GetResourceCount(OrthancPluginResourceType resourceType) = 0;
130 virtual void LogChange(const OrthancPluginChange& change) = 0; 130 virtual void LogChange(const OrthancPluginChange& change) = 0;
131 131
132 virtual void LogExportedResource(const OrthancPluginExportedResource& resource) = 0; 132 virtual void LogExportedResource(const OrthancPluginExportedResource& resource) = 0;
133 133
134 /* Use GetOutput().AnswerAttachment() */ 134 /* Use GetOutput().AnswerAttachment() */
135 virtual bool LookupAttachment(OrthancPlugins::IDatabaseBackendOutput& output, 135 virtual bool LookupAttachment(IDatabaseBackendOutput& output,
136 int64_t id, 136 int64_t id,
137 int32_t contentType) = 0; 137 int32_t contentType) = 0;
138 138
139 virtual bool LookupGlobalProperty(std::string& target /*out*/, 139 virtual bool LookupGlobalProperty(std::string& target /*out*/,
140 int32_t property) = 0; 140 int32_t property) = 0;
208 virtual void ClearMainDicomTags(int64_t internalId) = 0; 208 virtual void ClearMainDicomTags(int64_t internalId) = 0;
209 209
210 virtual bool HasCreateInstance() const = 0; 210 virtual bool HasCreateInstance() const = 0;
211 211
212 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1 212 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1
213 virtual void LookupResources(OrthancPlugins::IDatabaseBackendOutput& output, 213 virtual void LookupResources(IDatabaseBackendOutput& output,
214 const std::vector<Orthanc::DatabaseConstraint>& lookup, 214 const std::vector<Orthanc::DatabaseConstraint>& lookup,
215 OrthancPluginResourceType queryLevel, 215 OrthancPluginResourceType queryLevel,
216 uint32_t limit, 216 uint32_t limit,
217 bool requestSomeInstance) = 0; 217 bool requestSomeInstance) = 0;
218 #endif 218 #endif