Просмотр исходного кода

ENH: added data types for the application hosting interface

Marco Nolden лет назад: 14
Родитель
Сommit
ab20894734
1 измененных файлов с 50 добавлено и 0 удалено
  1. 50 0
      Plugins/org.commontk.dicom.wg23.core/ctkDicomWG23Types.h

+ 50 - 0
Plugins/org.commontk.dicom.wg23.core/ctkDicomWG23Types.h

@@ -19,10 +19,17 @@
 
 =============================================================================*/
 
+#include <QString>
+#include <QVector>
+#include <QUuid>
 
 #ifndef CTKDICOMWG23TYPES_H
 #define CTKDICOMWG23TYPES_H
 
+/**
+  * \brief Typedefs and classes defined in the interfaces of DICOM Supplement 118.
+  *
+  */
 namespace ctkDicomWG23 {
 
   enum State {
@@ -48,6 +55,49 @@ namespace ctkDicomWG23 {
     QString codeMeaning;
   };
 
+  struct ObjectLocator {
+    QUuid locator;
+    QUuid source;
+    QString transferSyntax;
+    qint64 length;
+    qint64 offset;
+    QString URI;
+  };
+
+  class ObjectDescriptor {
+    QUuid descriptorUUID;
+    QString mimeType;
+    QString classUID;
+    QString transferSyntaxUID;
+    QString modality;
+  };
+
+  struct Series {
+    QString seriesUID;
+    QVector<ObjectDescriptor> objectDescriptors;
+  };
+
+  struct Study {
+    QString studyUID;
+    QVector<ObjectDescriptor> objectDescriptors;
+    QVector<Series> series;
+  };
+
+  struct Patient {
+    QString name;
+    QString id;
+    QString assigningAuthority;
+    QString sex;
+    QString birthDate;
+    QVector<ObjectDescriptor> objectDescriptors;
+    QVector<Study> studies;
+  };
+
+  struct AvailableData {
+    QVector<ObjectDescriptor> objectDescriptors;
+    QVector<Patient> patients;
+  };
+
 }
 
 #endif // CTKDICOMWG23TYPES_H