diff OrthancServer/Sources/ServerContext.cpp @ 4499:6f99949b2878

reorganization
author Sebastien Jodogne <s.jodogne@gmail.com>
date Tue, 09 Feb 2021 14:25:21 +0100
parents 68f52897c119
children 3b4940bca158
line wrap: on
line diff
--- a/OrthancServer/Sources/ServerContext.cpp	Tue Feb 09 11:37:13 2021 +0100
+++ b/OrthancServer/Sources/ServerContext.cpp	Tue Feb 09 14:25:21 2021 +0100
@@ -36,6 +36,7 @@
 
 #include "../../OrthancFramework/Sources/Cache/SharedArchive.h"
 #include "../../OrthancFramework/Sources/DicomFormat/DicomElement.h"
+#include "../../OrthancFramework/Sources/DicomFormat/DicomStreamReader.h"
 #include "../../OrthancFramework/Sources/DicomParsing/DcmtkTranscoder.h"
 #include "../../OrthancFramework/Sources/DicomParsing/DicomModification.h"
 #include "../../OrthancFramework/Sources/DicomParsing/FromDcmtkBridge.h"
@@ -509,7 +510,14 @@
 
       default:
         throw OrthancException(ErrorCode_ParameterOutOfRange);
-    }    
+    }
+
+
+    bool hasPixelDataOffset;
+    uint64_t pixelDataOffset;
+    hasPixelDataOffset = DicomStreamReader::LookupPixelDataOffset(
+      pixelDataOffset, dicom.GetBufferData(), dicom.GetBufferSize());
+    
     
     try
     {
@@ -573,7 +581,7 @@
       typedef std::map<MetadataType, std::string>  InstanceMetadata;
       InstanceMetadata  instanceMetadata;
       StoreStatus status = index_.Store(
-        instanceMetadata, dicom, attachments, overwrite);
+        instanceMetadata, dicom, attachments, overwrite, hasPixelDataOffset, pixelDataOffset);
 
       // Only keep the metadata for the "instance" level
       dicom.GetMetadata().clear();