+//-----------------------------------------------------------------------------
+// Print
+/**
+ * \brief Canonical printer.
+ */
+void SerieHelper::Print(std::ostream &os, std::string const &indent)
+{
+ // For all the Coherent File lists of the GDCM_NAME_SPACE::Serie
+ SingleSerieUIDFileSetmap::iterator itl = SingleSerieUIDFileSetHT.begin();
+ if ( itl == SingleSerieUIDFileSetHT.end() )
+ {
+ gdcmWarningMacro( "No SingleSerieUID File set found" );
+ return;
+ }
+ while (itl != SingleSerieUIDFileSetHT.end())
+ {
+ os << "Serie UID :[" << itl->first << "]" << std::endl;
+
+ // For all the files of a SingleSerieUID File set
+ for (FileList::iterator it = (itl->second)->begin();
+ it != (itl->second)->end();
+ ++it)
+ {
+ os << indent << " --- " << (*it)->GetFileName() << std::endl;
+ }
+ ++itl;
+ }
+}
+
+void SerieHelper::CreateDefaultUniqueSeriesIdentifier()
+{
+ // If the user requests, additional information can be appended
+ // to the SeriesUID to further differentiate volumes in the DICOM
+ // objects being processed.
+
+ // 0020 0011 Series Number
+ // A scout scan prior to a CT volume scan can share the same
+ // SeriesUID, but they will sometimes have a different Series Number
+ AddRestriction( TagKey(0x0020, 0x0011) );
+
+ // 0018 0024 Sequence Name
+ // For T1-map and phase-contrast MRA, the different flip angles and
+ // directions are only distinguished by the Sequence Name
+ AddRestriction( TagKey(0x0018, 0x0024) );
+
+ // 0018 0050 Slice Thickness
+ // On some CT systems, scout scans and subsequence volume scans will
+ // have the same SeriesUID and Series Number - YET the slice
+ // thickness will differ from the scout slice and the volume slices.
+ AddRestriction( TagKey(0x0018, 0x0050));
+
+ // 0028 0010 Rows
+ // If the 2D images in a sequence don't have the same number of rows,
+ // then it is difficult to reconstruct them into a 3D volume.
+ AddRestriction( TagKey(0x0028, 0x0010));
+
+ // 0028 0011 Columns
+ // If the 2D images in a sequence don't have the same number of columns,
+ // then it is difficult to reconstruct them into a 3D volume.
+ AddRestriction( TagKey(0x0028, 0x0011));
+}
+