Browse Source

Replaced unclear pathForDataset method

Marco Nolden 13 years ago
parent
commit
fc3b6346d5
2 changed files with 8 additions and 24 deletions
  1. 8 20
      Libs/DICOM/Core/ctkDICOMDatabase.cpp
  2. 0 4
      Libs/DICOM/Core/ctkDICOMDatabase.h

+ 8 - 20
Libs/DICOM/Core/ctkDICOMDatabase.cpp

@@ -563,8 +563,13 @@ void ctkDICOMDatabasePrivate::insert( const ctkDICOMDataset& ctkDataset, const Q
     // QString studySeriesDirectory = studyInstanceUID + "/" + seriesInstanceUID;
     QString destinationDirectoryName = q->databaseDirectory() + "/dicom/";
     QDir destinationDir(destinationDirectoryName);
-    filename = destinationDirectoryName + q->pathForDataset(ctkDataset);
-    destinationDir.mkpath(QFileInfo(q->pathForDataset(ctkDataset)).dir().canonicalPath());
+    filename = destinationDirectoryName +
+        studyInstanceUID + "/" +
+        seriesInstanceUID + "/" +
+        sopInstanceUID;
+
+    destinationDir.mkpath(studyInstanceUID + "/" +
+                          seriesInstanceUID);
 
     if(filePath.isEmpty())
     {
@@ -764,7 +769,7 @@ void ctkDICOMDatabasePrivate::insert( const ctkDICOMDataset& ctkDataset, const Q
         QString studySeriesDirectory = studyInstanceUID + "/" + seriesInstanceUID;
         //Create thumbnail here
         QString thumbnailPath = q->databaseDirectory() +
-          "/thumbs/" + q->pathForDataset(ctkDataset) + ".png";
+          "/thumbs/" + studyInstanceUID + "/" + seriesInstanceUID + "/" + sopInstanceUID + ".png";
         //studyInstanceUID + "/" +
         //seriesInstanceUID + "/" +
         //sopInstanceUID + ".png";
@@ -816,20 +821,3 @@ bool ctkDICOMDatabase::isInMemory() const
   Q_D(const ctkDICOMDatabase);
   return d->DatabaseFileName == ":memory:";
 }
-
-
-QString ctkDICOMDatabase::pathForDataset( const ctkDICOMDataset& ctkDataset)
-{
-    // TODO: this is not related to the database
-    // could be static, is it necessary?
-  if ( !ctkDataset.IsInitialized() )
-    {
-    return QString();
-    }
-  QString studyInstanceUID(ctkDataset.GetElementAsString(DCM_StudyInstanceUID) );
-  QString seriesInstanceUID(ctkDataset.GetElementAsString(DCM_SeriesInstanceUID) );
-  QString sopInstanceUID ( ctkDataset.GetElementAsString(DCM_SOPInstanceUID) );
- 
-  return studyInstanceUID + "/" + seriesInstanceUID + "/" + sopInstanceUID;
-
-}

+ 0 - 4
Libs/DICOM/Core/ctkDICOMDatabase.h

@@ -141,10 +141,6 @@ public:
   void insert( const ctkDICOMDataset& ctkDataset, bool storeFile, bool generateThumbnail);
   void insert ( DcmDataset *dataset, bool storeFile = true, bool generateThumbnail = true);
   void insert ( const QString& filePath, bool storeFile = true, bool generateThumbnail = true, bool createHierarchy = true, const QString& destinationDirectoryName = QString() );
-  ///
-  /// Helper method: get the path that should be used to store this image.
-  ///
-  QString pathForDataset( const ctkDICOMDataset& dataset);
   
   /// Check if file is already in database and up-to-date
   bool fileExistsAndUpToDate(const QString& filePath);