comparison OrthancServer/Sources/Database/StatelessDatabaseOperations.cpp @ 5316:03501a258d9e

added instance metadata "PixelDataVR"
author Sebastien Jodogne <s.jodogne@gmail.com>
date Thu, 22 Jun 2023 08:48:38 +0200
parents c78138dc3889
children e95caa87fed8
comparison
equal deleted inserted replaced
5315:592507a8e227 5316:03501a258d9e
2954 bool overwrite, 2954 bool overwrite,
2955 bool hasTransferSyntax, 2955 bool hasTransferSyntax,
2956 DicomTransferSyntax transferSyntax, 2956 DicomTransferSyntax transferSyntax,
2957 bool hasPixelDataOffset, 2957 bool hasPixelDataOffset,
2958 uint64_t pixelDataOffset, 2958 uint64_t pixelDataOffset,
2959 ValueRepresentation pixelDataVR,
2959 MaxStorageMode maximumStorageMode, 2960 MaxStorageMode maximumStorageMode,
2960 uint64_t maximumStorageSize, 2961 uint64_t maximumStorageSize,
2961 unsigned int maximumPatients, 2962 unsigned int maximumPatients,
2962 bool isReconstruct) 2963 bool isReconstruct)
2963 { 2964 {
2973 bool overwrite_; 2974 bool overwrite_;
2974 bool hasTransferSyntax_; 2975 bool hasTransferSyntax_;
2975 DicomTransferSyntax transferSyntax_; 2976 DicomTransferSyntax transferSyntax_;
2976 bool hasPixelDataOffset_; 2977 bool hasPixelDataOffset_;
2977 uint64_t pixelDataOffset_; 2978 uint64_t pixelDataOffset_;
2979 ValueRepresentation pixelDataVR_;
2978 MaxStorageMode maximumStorageMode_; 2980 MaxStorageMode maximumStorageMode_;
2979 uint64_t maximumStorageSize_; 2981 uint64_t maximumStorageSize_;
2980 unsigned int maximumPatientCount_; 2982 unsigned int maximumPatientCount_;
2981 bool isReconstruct_; 2983 bool isReconstruct_;
2982 2984
3076 bool overwrite, 3078 bool overwrite,
3077 bool hasTransferSyntax, 3079 bool hasTransferSyntax,
3078 DicomTransferSyntax transferSyntax, 3080 DicomTransferSyntax transferSyntax,
3079 bool hasPixelDataOffset, 3081 bool hasPixelDataOffset,
3080 uint64_t pixelDataOffset, 3082 uint64_t pixelDataOffset,
3083 ValueRepresentation pixelDataVR,
3081 MaxStorageMode maximumStorageMode, 3084 MaxStorageMode maximumStorageMode,
3082 uint64_t maximumStorageSize, 3085 uint64_t maximumStorageSize,
3083 unsigned int maximumPatientCount, 3086 unsigned int maximumPatientCount,
3084 bool isReconstruct) : 3087 bool isReconstruct) :
3085 storeStatus_(StoreStatus_Failure), 3088 storeStatus_(StoreStatus_Failure),
3091 overwrite_(overwrite), 3094 overwrite_(overwrite),
3092 hasTransferSyntax_(hasTransferSyntax), 3095 hasTransferSyntax_(hasTransferSyntax),
3093 transferSyntax_(transferSyntax), 3096 transferSyntax_(transferSyntax),
3094 hasPixelDataOffset_(hasPixelDataOffset), 3097 hasPixelDataOffset_(hasPixelDataOffset),
3095 pixelDataOffset_(pixelDataOffset), 3098 pixelDataOffset_(pixelDataOffset),
3099 pixelDataVR_(pixelDataVR),
3096 maximumStorageMode_(maximumStorageMode), 3100 maximumStorageMode_(maximumStorageMode),
3097 maximumStorageSize_(maximumStorageSize), 3101 maximumStorageSize_(maximumStorageSize),
3098 maximumPatientCount_(maximumPatientCount), 3102 maximumPatientCount_(maximumPatientCount),
3099 isReconstruct_(isReconstruct) 3103 isReconstruct_(isReconstruct)
3100 { 3104 {
3353 { 3357 {
3354 // New in Orthanc 1.9.1 3358 // New in Orthanc 1.9.1
3355 SetInstanceMetadata(content, instanceMetadata_, instanceId, 3359 SetInstanceMetadata(content, instanceMetadata_, instanceId,
3356 MetadataType_Instance_PixelDataOffset, 3360 MetadataType_Instance_PixelDataOffset,
3357 boost::lexical_cast<std::string>(pixelDataOffset_)); 3361 boost::lexical_cast<std::string>(pixelDataOffset_));
3362
3363 // New in Orthanc 1.12.1
3364 SetInstanceMetadata(content, instanceMetadata_, instanceId,
3365 MetadataType_Instance_PixelDataVR,
3366 EnumerationToString(pixelDataVR_));
3358 } 3367 }
3359 3368
3360 const DicomValue* value; 3369 const DicomValue* value;
3361 if ((value = dicomSummary_.TestAndGetValue(DICOM_TAG_SOP_CLASS_UID)) != NULL && 3370 if ((value = dicomSummary_.TestAndGetValue(DICOM_TAG_SOP_CLASS_UID)) != NULL &&
3362 !value->IsNull() && 3371 !value->IsNull() &&
3407 storeStatus_ = StoreStatus_Success; 3416 storeStatus_ = StoreStatus_Success;
3408 } 3417 }
3409 }; 3418 };
3410 3419
3411 3420
3412 Operations operations(instanceMetadata, dicomSummary, attachments, metadata, origin, 3421 Operations operations(instanceMetadata, dicomSummary, attachments, metadata, origin, overwrite,
3413 overwrite, hasTransferSyntax, transferSyntax, hasPixelDataOffset, 3422 hasTransferSyntax, transferSyntax, hasPixelDataOffset, pixelDataOffset,
3414 pixelDataOffset, maximumStorageMode, maximumStorageSize, maximumPatients, isReconstruct); 3423 pixelDataVR, maximumStorageMode, maximumStorageSize, maximumPatients, isReconstruct);
3415 3424
3416 try 3425 try
3417 { 3426 {
3418 Apply(operations); 3427 Apply(operations);
3419 return operations.GetStoreStatus(); 3428 return operations.GetStoreStatus();