Mercurial > hg > orthanc
diff Plugins/Engine/OrthancPlugins.h @ 3920:82e88ff003d7 c-get
merge default -> c-get
author | Alain Mazy <alain@mazy.be> |
---|---|
date | Tue, 12 May 2020 14:58:24 +0200 |
parents | 6f11b3233a06 |
children | 4cdc875510d1 |
line wrap: on
line diff
--- a/Plugins/Engine/OrthancPlugins.h Tue May 12 07:50:38 2020 +0200 +++ b/Plugins/Engine/OrthancPlugins.h Tue May 12 14:58:24 2020 +0200 @@ -56,6 +56,7 @@ #include "../../Core/DicomNetworking/IFindRequestHandlerFactory.h" #include "../../Core/DicomNetworking/IMoveRequestHandlerFactory.h" #include "../../Core/DicomNetworking/IWorklistRequestHandlerFactory.h" +#include "../../Core/DicomParsing/MemoryBufferTranscoder.h" #include "../../Core/FileStorage/IStorageArea.h" #include "../../Core/HttpServer/IHttpHandler.h" #include "../../Core/HttpServer/IIncomingHttpRequestFilter.h" @@ -82,7 +83,8 @@ public IIncomingHttpRequestFilter, public IFindRequestHandlerFactory, public IMoveRequestHandlerFactory, - public IStorageCommitmentFactory + public IStorageCommitmentFactory, + public MemoryBufferTranscoder { private: class PImpl; @@ -94,6 +96,10 @@ class HttpClientChunkedRequest; class HttpClientChunkedAnswer; class HttpServerChunkedReader; + class IDicomInstance; + class DicomInstanceFromCallback; + class DicomInstanceFromBuffer; + class DicomInstanceFromTranscoded; void RegisterRestCallback(const void* parameters, bool lock); @@ -155,6 +161,12 @@ void LookupResource(_OrthancPluginService service, const void* parameters); + void AccessDicomInstance(_OrthancPluginService service, + const void* parameters); + + void AccessDicomInstance2(_OrthancPluginService service, + const void* parameters); + void SendHttpStatusCode(const void* parameters); void SendHttpStatus(const void* parameters); @@ -223,6 +235,17 @@ _OrthancPluginService service, const void* parameters); + protected: + // From "MemoryBufferTranscoder" + virtual bool Transcode(std::string& target, + DicomTransferSyntax& sourceSyntax /* out */, + DicomTransferSyntax& targetSyntax /* out */, + bool& hasSopInstanceUidChanged /* out */, + const void* buffer, + size_t size, + const std::set<DicomTransferSyntax>& allowedSyntaxes, + bool allowNewSopInstanceUid) ORTHANC_OVERRIDE; + public: OrthancPlugins(); @@ -250,7 +273,7 @@ virtual void SignalChange(const ServerIndexChange& change) ORTHANC_OVERRIDE; virtual void SignalStoredInstance(const std::string& instanceId, - DicomInstanceToStore& instance, + const DicomInstanceToStore& instance, const Json::Value& simplifiedTags) ORTHANC_OVERRIDE; virtual bool FilterIncomingInstance(const DicomInstanceToStore& instance,