diff OrthancServer/OrthancGetRequestHandler.h @ 3955:66879215cbf3 c-get

C-GET: add timeout, fix uninitalized priority, support multiple resources
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 20 May 2020 16:38:33 +0200
parents 67b457283499
children 76a24be12912
line wrap: on
line diff
--- a/OrthancServer/OrthancGetRequestHandler.h	Wed May 20 09:52:20 2020 +0200
+++ b/OrthancServer/OrthancGetRequestHandler.h	Wed May 20 16:38:33 2020 +0200
@@ -37,6 +37,8 @@
 
 #include <dcmtk/dcmnet/dimse.h>
 
+#include <list>
+
 namespace Orthanc
 {
   class ServerContext;
@@ -57,30 +59,31 @@
     unsigned int nFailed_;
     std::string failedUIDs_;
     
-    T_DIMSE_Priority priority_;
     DIC_US origMsgId_;
     T_ASC_PresentationContextID origPresId_;
     
     bool getCancelled_;
+    uint32_t timeout_;
 
-    bool LookupIdentifiers(std::vector<std::string>& publicIds,
+    bool LookupIdentifiers(std::list<std::string>& publicIds,
                            ResourceType level,
-                           const DicomMap& input);
+                           const DicomMap& input) const;
     
     OFCondition PerformGetSubOp(T_ASC_Association *assoc,
-                                DIC_UI sopClass,
-                                DIC_UI sopInstance,
-                                DcmDataset *dataset);
+                                const std::string& sopClassUid,
+                                const std::string& sopInstanceUid,
+                                DcmDataset& dataset);
     
-    void AddFailedUIDInstance(const char *sopInstance);
+    void AddFailedUIDInstance(const std::string& sopInstance);
 
   public:
     OrthancGetRequestHandler(ServerContext& context);
     
-    bool Handle(const DicomMap& input,
-                const std::string& originatorIp,
-                const std::string& originatorAet,
-                const std::string& calledAet);
+    virtual bool Handle(const DicomMap& input,
+                        const std::string& originatorIp,
+                        const std::string& originatorAet,
+                        const std::string& calledAet,
+                        uint32_t timeout) ORTHANC_OVERRIDE;
     
     virtual Status DoNext(T_ASC_Association *assoc) ORTHANC_OVERRIDE;