comparison Framework/Plugins/IndexBackend.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 873e37048f96
comparison
equal deleted inserted replaced
202:2def2df94f94 203:2089d4071408
25 #include "OrthancCppDatabasePlugin.h" 25 #include "OrthancCppDatabasePlugin.h"
26 26
27 27
28 namespace OrthancDatabases 28 namespace OrthancDatabases
29 { 29 {
30 class IndexBackend : public OrthancPlugins::IDatabaseBackend 30 class IndexBackend : public IDatabaseBackend
31 { 31 {
32 private: 32 private:
33 class LookupFormatter; 33 class LookupFormatter;
34 34
35 OrthancPluginContext* context_; 35 OrthancPluginContext* context_;
36 DatabaseManager manager_; 36 DatabaseManager manager_;
37 37
38 std::unique_ptr<OrthancPlugins::IDatabaseBackendOutput::IFactory> outputFactory_; 38 std::unique_ptr<IDatabaseBackendOutput::IFactory> outputFactory_;
39 39
40 protected: 40 protected:
41 DatabaseManager& GetManager() 41 DatabaseManager& GetManager()
42 { 42 {
43 return manager_; 43 return manager_;
63 63
64 void ClearDeletedFiles(); 64 void ClearDeletedFiles();
65 65
66 void ClearDeletedResources(); 66 void ClearDeletedResources();
67 67
68 void SignalDeletedFiles(OrthancPlugins::IDatabaseBackendOutput& output); 68 void SignalDeletedFiles(IDatabaseBackendOutput& output);
69 69
70 void SignalDeletedResources(OrthancPlugins::IDatabaseBackendOutput& output); 70 void SignalDeletedResources(IDatabaseBackendOutput& output);
71 71
72 private: 72 private:
73 void ReadChangesInternal(OrthancPlugins::IDatabaseBackendOutput& output, 73 void ReadChangesInternal(IDatabaseBackendOutput& output,
74 bool& done, 74 bool& done,
75 DatabaseManager::CachedStatement& statement, 75 DatabaseManager::CachedStatement& statement,
76 const Dictionary& args, 76 const Dictionary& args,
77 uint32_t maxResults); 77 uint32_t maxResults);
78 78
79 void ReadExportedResourcesInternal(OrthancPlugins::IDatabaseBackendOutput& output, 79 void ReadExportedResourcesInternal(IDatabaseBackendOutput& output,
80 bool& done, 80 bool& done,
81 DatabaseManager::CachedStatement& statement, 81 DatabaseManager::CachedStatement& statement,
82 const Dictionary& args, 82 const Dictionary& args,
83 uint32_t maxResults); 83 uint32_t maxResults);
84 84
89 virtual OrthancPluginContext* GetContext() ORTHANC_OVERRIDE 89 virtual OrthancPluginContext* GetContext() ORTHANC_OVERRIDE
90 { 90 {
91 return context_; 91 return context_;
92 } 92 }
93 93
94 virtual void SetOutputFactory(OrthancPlugins::IDatabaseBackendOutput::IFactory* factory) ORTHANC_OVERRIDE; 94 virtual void SetOutputFactory(IDatabaseBackendOutput::IFactory* factory) ORTHANC_OVERRIDE;
95 95
96 virtual OrthancPlugins::IDatabaseBackendOutput* CreateOutput() ORTHANC_OVERRIDE; 96 virtual IDatabaseBackendOutput* CreateOutput() ORTHANC_OVERRIDE;
97 97
98 virtual void Open() ORTHANC_OVERRIDE 98 virtual void Open() ORTHANC_OVERRIDE
99 { 99 {
100 manager_.Open(); 100 manager_.Open();
101 } 101 }
113 113
114 virtual void ClearChanges() ORTHANC_OVERRIDE; 114 virtual void ClearChanges() ORTHANC_OVERRIDE;
115 115
116 virtual void ClearExportedResources() ORTHANC_OVERRIDE; 116 virtual void ClearExportedResources() ORTHANC_OVERRIDE;
117 117
118 virtual void DeleteAttachment(OrthancPlugins::IDatabaseBackendOutput& output, 118 virtual void DeleteAttachment(IDatabaseBackendOutput& output,
119 int64_t id, 119 int64_t id,
120 int32_t attachment) ORTHANC_OVERRIDE; 120 int32_t attachment) ORTHANC_OVERRIDE;
121 121
122 virtual void DeleteMetadata(int64_t id, 122 virtual void DeleteMetadata(int64_t id,
123 int32_t metadataType) ORTHANC_OVERRIDE; 123 int32_t metadataType) ORTHANC_OVERRIDE;
124 124
125 virtual void DeleteResource(OrthancPlugins::IDatabaseBackendOutput& output, 125 virtual void DeleteResource(IDatabaseBackendOutput& output,
126 int64_t id) ORTHANC_OVERRIDE; 126 int64_t id) ORTHANC_OVERRIDE;
127 127
128 virtual void GetAllInternalIds(std::list<int64_t>& target, 128 virtual void GetAllInternalIds(std::list<int64_t>& target,
129 OrthancPluginResourceType resourceType) ORTHANC_OVERRIDE; 129 OrthancPluginResourceType resourceType) ORTHANC_OVERRIDE;
130 130
134 virtual void GetAllPublicIds(std::list<std::string>& target, 134 virtual void GetAllPublicIds(std::list<std::string>& target,
135 OrthancPluginResourceType resourceType, 135 OrthancPluginResourceType resourceType,
136 uint64_t since, 136 uint64_t since,
137 uint64_t limit) ORTHANC_OVERRIDE; 137 uint64_t limit) ORTHANC_OVERRIDE;
138 138
139 virtual void GetChanges(OrthancPlugins::IDatabaseBackendOutput& output, 139 virtual void GetChanges(IDatabaseBackendOutput& output,
140 bool& done /*out*/, 140 bool& done /*out*/,
141 int64_t since, 141 int64_t since,
142 uint32_t maxResults) ORTHANC_OVERRIDE; 142 uint32_t maxResults) ORTHANC_OVERRIDE;
143 143
144 virtual void GetChildrenInternalId(std::list<int64_t>& target /*out*/, 144 virtual void GetChildrenInternalId(std::list<int64_t>& target /*out*/,
145 int64_t id) ORTHANC_OVERRIDE; 145 int64_t id) ORTHANC_OVERRIDE;
146 146
147 virtual void GetChildrenPublicId(std::list<std::string>& target /*out*/, 147 virtual void GetChildrenPublicId(std::list<std::string>& target /*out*/,
148 int64_t id) ORTHANC_OVERRIDE; 148 int64_t id) ORTHANC_OVERRIDE;
149 149
150 virtual void GetExportedResources(OrthancPlugins::IDatabaseBackendOutput& output, 150 virtual void GetExportedResources(IDatabaseBackendOutput& output,
151 bool& done /*out*/, 151 bool& done /*out*/,
152 int64_t since, 152 int64_t since,
153 uint32_t maxResults) ORTHANC_OVERRIDE; 153 uint32_t maxResults) ORTHANC_OVERRIDE;
154 154
155 virtual void GetLastChange(OrthancPlugins::IDatabaseBackendOutput& output) ORTHANC_OVERRIDE; 155 virtual void GetLastChange(IDatabaseBackendOutput& output) ORTHANC_OVERRIDE;
156 156
157 virtual void GetLastExportedResource(OrthancPlugins::IDatabaseBackendOutput& output) ORTHANC_OVERRIDE; 157 virtual void GetLastExportedResource(IDatabaseBackendOutput& output) ORTHANC_OVERRIDE;
158 158
159 virtual void GetMainDicomTags(OrthancPlugins::IDatabaseBackendOutput& output, 159 virtual void GetMainDicomTags(IDatabaseBackendOutput& output,
160 int64_t id) ORTHANC_OVERRIDE; 160 int64_t id) ORTHANC_OVERRIDE;
161 161
162 virtual std::string GetPublicId(int64_t resourceId) ORTHANC_OVERRIDE; 162 virtual std::string GetPublicId(int64_t resourceId) ORTHANC_OVERRIDE;
163 163
164 virtual uint64_t GetResourceCount(OrthancPluginResourceType resourceType) ORTHANC_OVERRIDE; 164 virtual uint64_t GetResourceCount(OrthancPluginResourceType resourceType) ORTHANC_OVERRIDE;
181 181
182 virtual void LogChange(const OrthancPluginChange& change) ORTHANC_OVERRIDE; 182 virtual void LogChange(const OrthancPluginChange& change) ORTHANC_OVERRIDE;
183 183
184 virtual void LogExportedResource(const OrthancPluginExportedResource& resource) ORTHANC_OVERRIDE; 184 virtual void LogExportedResource(const OrthancPluginExportedResource& resource) ORTHANC_OVERRIDE;
185 185
186 virtual bool LookupAttachment(OrthancPlugins::IDatabaseBackendOutput& output, 186 virtual bool LookupAttachment(IDatabaseBackendOutput& output,
187 int64_t id, 187 int64_t id,
188 int32_t contentType) ORTHANC_OVERRIDE; 188 int32_t contentType) ORTHANC_OVERRIDE;
189 189
190 virtual bool LookupGlobalProperty(std::string& target /*out*/, 190 virtual bool LookupGlobalProperty(std::string& target /*out*/,
191 int32_t property) ORTHANC_OVERRIDE; 191 int32_t property) ORTHANC_OVERRIDE;
279 virtual void GetChildren(std::list<std::string>& childrenPublicIds, 279 virtual void GetChildren(std::list<std::string>& childrenPublicIds,
280 int64_t id); 280 int64_t id);
281 281
282 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1 282 #if ORTHANC_PLUGINS_HAS_DATABASE_CONSTRAINT == 1
283 // New primitive since Orthanc 1.5.2 283 // New primitive since Orthanc 1.5.2
284 virtual void LookupResources(OrthancPlugins::IDatabaseBackendOutput& output, 284 virtual void LookupResources(IDatabaseBackendOutput& output,
285 const std::vector<Orthanc::DatabaseConstraint>& lookup, 285 const std::vector<Orthanc::DatabaseConstraint>& lookup,
286 OrthancPluginResourceType queryLevel, 286 OrthancPluginResourceType queryLevel,
287 uint32_t limit, 287 uint32_t limit,
288 bool requestSomeInstance) ORTHANC_OVERRIDE; 288 bool requestSomeInstance) ORTHANC_OVERRIDE;
289 #endif 289 #endif