]> Creatis software - clitk.git/commitdiff
Add new dicom tag in clitkImage2DicomDose
authortbaudier <thomas.baudier@creatis.insa-lyon.fr>
Tue, 30 Jan 2018 14:28:30 +0000 (15:28 +0100)
committertbaudier <thomas.baudier@creatis.insa-lyon.fr>
Tue, 30 Jan 2018 14:28:30 +0000 (15:28 +0100)
tools/clitkImage2DicomDoseGenericFilter.txx

index c8ee9184ed81a3a54d2a6cdcb70d95e5ece6d786..f513834350b7f3814bbb5ff96167c7ece2950a99 100644 (file)
@@ -273,6 +273,30 @@ Image2DicomDoseGenericFilter<args_info_type>::UpdateWithDimAndPixelType()
     std::cerr << excp << std::endl;
   }
 
+  //Read sequence dicom tag with gdcm
+  gdcm::Reader readerTemplateGDCM;
+  readerTemplateGDCM.SetFileName( fileNames[0].c_str() );
+  readerTemplateGDCM.Read();
+  gdcm::File &fileTemplate = readerTemplateGDCM.GetFile();
+  gdcm::DataSet &dsTemplate = fileTemplate.GetDataSet();
+  const unsigned int ptr_len = 42;
+  char *ptrTemplate = new char[ptr_len];
+  memset(ptrTemplate,0,ptr_len);
+
+  const gdcm::DataElement &referenceRTPlanSq = dsTemplate.GetDataElement(gdcm::Tag(0x300c, 0x02));
+
+  //Copy/Write sequence dicom tag with gdcm
+  gdcm::Reader readerOutputGDCM;
+  readerOutputGDCM.SetFileName( fileNamesOutput[0].c_str() );
+  readerOutputGDCM.Read();
+  gdcm::File &file = readerOutputGDCM.GetFile();
+  gdcm::DataSet &dsOutput = file.GetDataSet();
+
+  dsOutput.Insert(referenceRTPlanSq);
+  gdcm::Writer w;
+  w.SetFile( file );
+  w.SetFileName( fileNamesOutput[0].c_str() );
+  w.Write();
 
 //---------------------------------------------------------------------------------------
 //WRITE DICOM BIS