Based on a user bug report, I updated the dicom file plugin. The patch is
included below.
I haven't done any contribution to gimp for ages, so I wonder if I can just
commit it on my own? If not, should I just attach the patch file to a bug
report?
Is it ok if I create a version to the gimp-2-8 branch as well, so that it
will reach the user quicker?
Regards,
Dov
diff --git a/plug-ins/common/file-dicom.c b/plug-ins/common/file-dicom.c
index de11b9c..d30cd34 100644
--- a/plug-ins/common/file-dicom.c
+++ b/plug-ins/common/file-dicom.c
@@ -18,7 +18,7 @@
/*
* The dicom reading and writing code was written from scratch
- * by Dov Grobgeld. (d...@imagic.weizman.ac.il).
+ * by Dov Grobgeld. (dov.grobg...@gmail.com).
*/
#include config.h
@@ -1218,12 +1218,17 @@ dicom_ensure_required_elements_present (GSList
*elements,
/* 0002, 0001 - File Meta Information Version */
{ 0x0002, 0x0001, OB, 2, (guint8 *) \0\1 },
/* 0002, 0010 - Transfer syntax uid */
-{ 0x0002, 0x0001, UI,
+{ 0x0002, 0x0010, UI,
strlen (1.2.840.10008.1.2.1), (guint8 *) 1.2.840.10008.1.2.1},
/* 0002, 0013 - Implementation version name */
{ 0x0002, 0x0013, SH,
strlen (GIMP Dicom Plugin 1.0), (guint8 *) GIMP Dicom Plugin 1.0
},
/* Identifying group */
+/* ImageType */
+{ 0x0008, 0x0008, CS,
+ strlen (ORIGINAL\\PRIMARY), (guint8 *) ORIGINAL\\PRIMARY },
+{ 0x0008, 0x0016, UI,
+ strlen (1.2.840.10008.5.1.4.1.1.7), (guint8 *)
1.2.840.10008.5.1.4.1.1.7 },
/* Study date */
{ 0x0008, 0x0020, DA,
strlen (today_string), (guint8 *) today_string },
@@ -1236,14 +1241,23 @@ dicom_ensure_required_elements_present (GSList
*elements,
/* Content Date */
{ 0x0008, 0x0023, DA,
strlen (today_string), (guint8 *) today_string},
-/* Modality - I have to add something.. */
+/* Content Time */
+{ 0x0008, 0x0030, TM,
+ strlen (00.00), (guint8 *) 00.00},
+/* AccessionNumber */
+{ 0x0008, 0x0050, SH, strlen (), (guint8 *) },
+/* Modality */
{ 0x0008, 0x0060, CS, strlen (MR), (guint8 *) MR },
+/* ConversionType */
+{ 0x0008, 0x0064, CS, strlen (WSD), (guint8 *) WSD },
+/* ReferringPhysiciansName */
+{ 0x0008, 0x0090, PN, strlen (), (guint8 *) },
/* Patient group */
/* Patient name */
{ 0x0010, 0x0010, PN,
strlen (DOE^WILBER), (guint8 *) DOE^WILBER },
/* Patient ID */
-{ 0x0010, 0x0020, CS,
+{ 0x0010, 0x0020, LO,
strlen (314159265), (guint8 *) 314159265 },
/* Patient Birth date */
{ 0x0010, 0x0030, DA,
@@ -1251,6 +1265,12 @@ dicom_ensure_required_elements_present (GSList
*elements,
/* Patient sex */
{ 0x0010, 0x0040, CS, strlen (), (guint8 *) /* unknown */ },
/* Relationship group */
+/* StudyId */
+{ 0x0020, 0x0010, IS, strlen (1), (guint8 *) 1 },
+/* SeriesNumber */
+{ 0x0020, 0x0011, IS, strlen (1), (guint8 *) 1 },
+/* AcquisitionNumber */
+{ 0x0020, 0x0012, IS, strlen (1), (guint8 *) 1 },
/* Instance number */
{ 0x0020, 0x0013, IS, strlen (1), (guint8 *) 1 },
@@ -1576,7 +1596,7 @@ add_tag_pointer (GByteArray *group_stream,
*/
if (strstr (UI|OB, value_rep) != NULL)
{
- g_byte_array_append (group_stream, (guint8 *) 0x, 1);
+ g_byte_array_append (group_stream, (guint8 *) \0, 1);
}
else
{
___
gimp-developer-list mailing list
gimp-developer-list@gnome.org
https://mail.gnome.org/mailman/listinfo/gimp-developer-list