diff Framework/Oracle/ParseDicomFileCommand.h @ 1134:87fbeb823375 broker

allocating messages from oracle commands on the stack
author Sebastien Jodogne <s.jodogne@gmail.com>
date Wed, 06 Nov 2019 15:16:45 +0100
parents 8e3763d1736a
children a0a33e5ea5bb
line wrap: on
line diff
--- a/Framework/Oracle/ParseDicomFileCommand.h	Wed Nov 06 12:56:23 2019 +0100
+++ b/Framework/Oracle/ParseDicomFileCommand.h	Wed Nov 06 15:16:45 2019 +0100
@@ -41,30 +41,23 @@
   class ParseDicomFileCommand : public OracleCommandBase
   {
   public:
-    class SuccessMessage : public OriginMessage<ParseDicomFileCommand>
+    class SuccessMessage : public OracleMessageBase
     {
       ORTHANC_STONE_MESSAGE(__FILE__, __LINE__);
 
     private:
-      boost::shared_ptr<Orthanc::ParsedDicomFile>  dicom_;
-      size_t                                       fileSize_;
-      bool                                         hasPixelData_;
-      std::string                                  sopInstanceUid_;
+      Orthanc::ParsedDicomFile&  dicom_;
+      size_t                     fileSize_;
+      bool                       hasPixelData_;
+      std::string                sopInstanceUid_;
 
-      void Setup();
-      
     public:
-      SuccessMessage(const ParseDicomFileCommand& command,
-                     DcmFileFormat& dicom,
+      SuccessMessage(ParseDicomFileCommand& command,
+                     Orthanc::ParsedDicomFile& dicom,
                      size_t fileSize,
                      bool hasPixelData);
       
-      SuccessMessage(const ParseDicomFileCommand& command,
-                     boost::shared_ptr<Orthanc::ParsedDicomFile> dicom,
-                     size_t fileSize,
-                     bool hasPixelData);
-      
-      boost::shared_ptr<Orthanc::ParsedDicomFile> GetDicom() const
+      Orthanc::ParsedDicomFile& GetDicom() const
       {
         return dicom_;
       }