Mercurial > hg > orthanc
comparison OrthancFramework/Sources/DicomFormat/DicomMap.cpp @ 4501:11c2ddb4e2ca
FromDcmtkBridge::LogMissingTagsForStore()
author | Sebastien Jodogne <s.jodogne@gmail.com> |
---|---|
date | Tue, 09 Feb 2021 15:24:36 +0100 |
parents | d9473bd5ed43 |
children | b47ee86a0d10 |
comparison
equal
deleted
inserted
replaced
4500:3b4940bca158 | 4501:11c2ddb4e2ca |
---|---|
918 } | 918 } |
919 | 919 |
920 | 920 |
921 void DicomMap::LogMissingTagsForStore() const | 921 void DicomMap::LogMissingTagsForStore() const |
922 { | 922 { |
923 std::string patientId, studyInstanceUid, seriesInstanceUid, sopInstanceUid; | |
924 | |
925 if (HasTag(DICOM_TAG_PATIENT_ID)) | |
926 { | |
927 patientId = ValueAsString(*this, DICOM_TAG_PATIENT_ID); | |
928 } | |
929 | |
930 if (HasTag(DICOM_TAG_STUDY_INSTANCE_UID)) | |
931 { | |
932 studyInstanceUid = ValueAsString(*this, DICOM_TAG_STUDY_INSTANCE_UID); | |
933 } | |
934 | |
935 if (HasTag(DICOM_TAG_SERIES_INSTANCE_UID)) | |
936 { | |
937 seriesInstanceUid = ValueAsString(*this, DICOM_TAG_SERIES_INSTANCE_UID); | |
938 } | |
939 | |
940 if (HasTag(DICOM_TAG_SOP_INSTANCE_UID)) | |
941 { | |
942 sopInstanceUid = ValueAsString(*this, DICOM_TAG_SOP_INSTANCE_UID); | |
943 } | |
944 | |
945 LogMissingTagsForStore(patientId, studyInstanceUid, seriesInstanceUid, sopInstanceUid); | |
946 } | |
947 | |
948 | |
949 void DicomMap::LogMissingTagsForStore(const std::string& patientId, | |
950 const std::string& studyInstanceUid, | |
951 const std::string& seriesInstanceUid, | |
952 const std::string& sopInstanceUid) | |
953 { | |
923 std::string s, t; | 954 std::string s, t; |
924 | 955 |
925 if (HasTag(DICOM_TAG_PATIENT_ID)) | 956 if (!patientId.empty()) |
926 { | 957 { |
927 if (t.size() > 0) | 958 if (t.size() > 0) |
928 t += ", "; | 959 t += ", "; |
929 t += "PatientID=" + ValueAsString(*this, DICOM_TAG_PATIENT_ID); | 960 t += "PatientID=" + patientId; |
930 } | 961 } |
931 else | 962 else |
932 { | 963 { |
933 if (s.size() > 0) | 964 if (s.size() > 0) |
934 s += ", "; | 965 s += ", "; |
935 s += "PatientID"; | 966 s += "PatientID"; |
936 } | 967 } |
937 | 968 |
938 if (HasTag(DICOM_TAG_STUDY_INSTANCE_UID)) | 969 if (!studyInstanceUid.empty()) |
939 { | 970 { |
940 if (t.size() > 0) | 971 if (t.size() > 0) |
941 t += ", "; | 972 t += ", "; |
942 t += "StudyInstanceUID=" + ValueAsString(*this, DICOM_TAG_STUDY_INSTANCE_UID); | 973 t += "StudyInstanceUID=" + studyInstanceUid; |
943 } | 974 } |
944 else | 975 else |
945 { | 976 { |
946 if (s.size() > 0) | 977 if (s.size() > 0) |
947 s += ", "; | 978 s += ", "; |
948 s += "StudyInstanceUID"; | 979 s += "StudyInstanceUID"; |
949 } | 980 } |
950 | 981 |
951 if (HasTag(DICOM_TAG_SERIES_INSTANCE_UID)) | 982 if (!seriesInstanceUid.empty()) |
952 { | 983 { |
953 if (t.size() > 0) | 984 if (t.size() > 0) |
954 t += ", "; | 985 t += ", "; |
955 t += "SeriesInstanceUID=" + ValueAsString(*this, DICOM_TAG_SERIES_INSTANCE_UID); | 986 t += "SeriesInstanceUID=" + seriesInstanceUid; |
956 } | 987 } |
957 else | 988 else |
958 { | 989 { |
959 if (s.size() > 0) | 990 if (s.size() > 0) |
960 s += ", "; | 991 s += ", "; |
961 s += "SeriesInstanceUID"; | 992 s += "SeriesInstanceUID"; |
962 } | 993 } |
963 | 994 |
964 if (HasTag(DICOM_TAG_SOP_INSTANCE_UID)) | 995 if (!sopInstanceUid.empty()) |
965 { | 996 { |
966 if (t.size() > 0) | 997 if (t.size() > 0) |
967 t += ", "; | 998 t += ", "; |
968 t += "SOPInstanceUID=" + ValueAsString(*this, DICOM_TAG_SOP_INSTANCE_UID); | 999 t += "SOPInstanceUID=" + sopInstanceUid; |
969 } | 1000 } |
970 else | 1001 else |
971 { | 1002 { |
972 if (s.size() > 0) | 1003 if (s.size() > 0) |
973 s += ", "; | 1004 s += ", "; |