Explorar o código

Parent can be passed to ctkXnatObject constructors

Miklos Espak %!s(int64=11) %!d(string=hai) anos
pai
achega
18674e99a3

+ 1 - 2
Libs/XNAT/Core/Testing/ctkXnatConnectionTest.cpp

@@ -113,11 +113,10 @@ void ctkXnatConnectionTestCase::testCreateProject()
   QString projectId = QString("CTK_") + QUuid::createUuid().toString().mid(1, 8);
   d->Project = projectId;
 
-  ctkXnatProject* project = new ctkXnatProject();
+  ctkXnatProject* project = new ctkXnatProject(server);
   project->setId(projectId);
   project->setName(projectId);
   project->setDescription("CTK test project");
-  server->add(project);
 
   bool exists = d->Connection->exists(project);
   QVERIFY(!exists);

+ 0 - 1
Libs/XNAT/Core/ctkXnatConnection.cpp

@@ -25,7 +25,6 @@
 #include "ctkXnatExperiment.h"
 #include "ctkXnatFile.h"
 #include "ctkXnatObject.h"
-#include "ctkXnatObjectPrivate.h"
 #include "ctkXnatProject.h"
 #include "ctkXnatReconstruction.h"
 #include "ctkXnatReconstructionFolder.h"

+ 3 - 2
Libs/XNAT/Core/ctkXnatExperiment.cpp

@@ -23,6 +23,7 @@
 
 #include "ctkXnatConnection.h"
 #include "ctkXnatObjectPrivate.h"
+#include "ctkXnatSubject.h"
 
 class ctkXnatExperimentPrivate : public ctkXnatObjectPrivate
 {
@@ -42,8 +43,8 @@ public:
 };
 
 
-ctkXnatExperiment::ctkXnatExperiment(const QString& schemaType)
-: ctkXnatObject(*new ctkXnatExperimentPrivate(), schemaType)
+ctkXnatExperiment::ctkXnatExperiment(ctkXnatSubject* parent, const QString& schemaType)
+: ctkXnatObject(*new ctkXnatExperimentPrivate(), parent, schemaType)
 {
 }
 

+ 2 - 1
Libs/XNAT/Core/ctkXnatExperiment.h

@@ -28,13 +28,14 @@
 
 class ctkXnatConnection;
 class ctkXnatExperimentPrivate;
+class ctkXnatSubject;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatExperiment : public ctkXnatObject
 {
   
 public:
   
-  explicit ctkXnatExperiment(const QString& schemaType = "xnat:experimentData");
+  explicit ctkXnatExperiment(ctkXnatSubject* parent = 0, const QString& schemaType = "xnat:experimentData");
   virtual ~ctkXnatExperiment();
   
   virtual QString resourceUri() const;

+ 2 - 2
Libs/XNAT/Core/ctkXnatFile.cpp

@@ -42,8 +42,8 @@ public:
 //  QString uri;
 };
 
-ctkXnatFile::ctkXnatFile()
-: ctkXnatObject(*new ctkXnatFilePrivate())
+ctkXnatFile::ctkXnatFile(ctkXnatObject* parent)
+: ctkXnatObject(*new ctkXnatFilePrivate(), parent)
 {
 }
 

+ 1 - 1
Libs/XNAT/Core/ctkXnatFile.h

@@ -34,7 +34,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatFile : public ctkXnatObject
 
 public:
 
-  explicit ctkXnatFile();
+  explicit ctkXnatFile(ctkXnatObject* parent = 0);
   virtual ~ctkXnatFile();
   
   virtual QString resourceUri() const;

+ 4 - 2
Libs/XNAT/Core/ctkXnatObject.cpp

@@ -29,17 +29,19 @@
 #include <QVariant>
 
 
-ctkXnatObject::ctkXnatObject(const QString& schemaType)
+ctkXnatObject::ctkXnatObject(ctkXnatObject* parent, const QString& schemaType)
 : d_ptr(new ctkXnatObjectPrivate())
 {
   Q_D(ctkXnatObject);
+  this->setParent(parent);
   d->schemaType = schemaType;
 }
 
-ctkXnatObject::ctkXnatObject(ctkXnatObjectPrivate& dd, const QString& schemaType)
+ctkXnatObject::ctkXnatObject(ctkXnatObjectPrivate& dd, ctkXnatObject* parent, const QString& schemaType)
 : d_ptr(&dd)
 {
   Q_D(ctkXnatObject);
+  this->setParent(parent);
   d->schemaType = schemaType;
 }
 

+ 2 - 2
Libs/XNAT/Core/ctkXnatObject.h

@@ -111,10 +111,10 @@ public:
 protected:
 
   /// Constructs the ctkXnatObject.
-  ctkXnatObject(const QString& schemaType = QString());
+  ctkXnatObject(ctkXnatObject* parent = 0, const QString& schemaType = QString());
 
   /// Constructs the ctkXnatObject with the given private part.
-  ctkXnatObject(ctkXnatObjectPrivate& dd, const QString& schemaType = QString());
+  ctkXnatObject(ctkXnatObjectPrivate& dd, ctkXnatObject* parent = 0, const QString& schemaType = QString());
 
   /// Gets the object that represents the connection to the XNAT server
   /// that stores the current object.

+ 3 - 2
Libs/XNAT/Core/ctkXnatProject.cpp

@@ -23,6 +23,7 @@
 
 #include "ctkXnatConnection.h"
 #include "ctkXnatObjectPrivate.h"
+#include "ctkXnatServer.h"
 
 class ctkXnatProjectPrivate : public ctkXnatObjectPrivate
 {
@@ -47,8 +48,8 @@ public:
 //  QString uri;
 };
 
-ctkXnatProject::ctkXnatProject(const QString& schemaType)
-: ctkXnatObject(*new ctkXnatProjectPrivate(), schemaType)
+ctkXnatProject::ctkXnatProject(ctkXnatServer* parent, const QString& schemaType)
+: ctkXnatObject(*new ctkXnatProjectPrivate(), parent, schemaType)
 {
 }
 

+ 2 - 1
Libs/XNAT/Core/ctkXnatProject.h

@@ -28,13 +28,14 @@
 
 class ctkXnatConnection;
 class ctkXnatProjectPrivate;
+class ctkXnatServer;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatProject : public ctkXnatObject
 {
 
 public:
 
-  explicit ctkXnatProject(const QString& schemaType = "xnat:projectData");
+  explicit ctkXnatProject(ctkXnatServer* parent = 0, const QString& schemaType = "xnat:projectData");
   virtual ~ctkXnatProject();
 
   virtual QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatReconstruction.cpp

@@ -23,6 +23,7 @@
 
 #include "ctkXnatConnection.h"
 #include "ctkXnatObjectPrivate.h"
+#include "ctkXnatReconstructionFolder.h"
 
 class ctkXnatReconstructionPrivate : public ctkXnatObjectPrivate
 {
@@ -42,8 +43,8 @@ public:
 };
 
 
-ctkXnatReconstruction::ctkXnatReconstruction(const QString& schemaType)
-: ctkXnatObject(*new ctkXnatReconstructionPrivate(), schemaType)
+ctkXnatReconstruction::ctkXnatReconstruction(ctkXnatReconstructionFolder* parent, const QString& schemaType)
+: ctkXnatObject(*new ctkXnatReconstructionPrivate(), parent, schemaType)
 {
 }
 

+ 2 - 1
Libs/XNAT/Core/ctkXnatReconstruction.h

@@ -27,6 +27,7 @@
 #include "ctkXnatObject.h"
 
 class ctkXnatConnection;
+class ctkXnatReconstructionFolder;
 class ctkXnatReconstructionPrivate;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatReconstruction : public ctkXnatObject
@@ -34,7 +35,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatReconstruction : public ctkXnatObject
 
 public:
 
-  explicit ctkXnatReconstruction(const QString& schemaType = "xnat:reconstructedImageData");
+  explicit ctkXnatReconstruction(ctkXnatReconstructionFolder* parent = 0, const QString& schemaType = "xnat:reconstructedImageData");
   virtual ~ctkXnatReconstruction();
   
   virtual QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatReconstructionFolder.cpp

@@ -22,6 +22,7 @@
 #include "ctkXnatReconstructionFolder.h"
 
 #include "ctkXnatConnection.h"
+#include "ctkXnatExperiment.h"
 #include "ctkXnatObjectPrivate.h"
 
 
@@ -43,8 +44,8 @@ public:
 };
 
 
-ctkXnatReconstructionFolder::ctkXnatReconstructionFolder()
-: ctkXnatObject(*new ctkXnatReconstructionFolderPrivate())
+ctkXnatReconstructionFolder::ctkXnatReconstructionFolder(ctkXnatExperiment* parent)
+: ctkXnatObject(*new ctkXnatReconstructionFolderPrivate(), parent)
 {
   this->setProperty("ID", "Reconstructions");
 }

+ 2 - 1
Libs/XNAT/Core/ctkXnatReconstructionFolder.h

@@ -27,6 +27,7 @@
 #include "ctkXnatObject.h"
 
 class ctkXnatConnection;
+class ctkXnatExperiment;
 class ctkXnatReconstructionFolderPrivate;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatReconstructionFolder : public ctkXnatObject
@@ -34,7 +35,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatReconstructionFolder : public ctkXnatObject
 
 public:
   
-  explicit ctkXnatReconstructionFolder();
+  explicit ctkXnatReconstructionFolder(ctkXnatExperiment* parent = 0);
   virtual ~ctkXnatReconstructionFolder();
   
   virtual QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatReconstructionResource.cpp

@@ -23,6 +23,7 @@
 
 #include "ctkXnatConnection.h"
 #include "ctkXnatObjectPrivate.h"
+#include "ctkXnatReconstruction.h"
 
 class ctkXnatReconstructionResourcePrivate : public ctkXnatObjectPrivate
 {
@@ -42,8 +43,8 @@ public:
 };
 
 
-ctkXnatReconstructionResource::ctkXnatReconstructionResource()
-: ctkXnatObject(*new ctkXnatReconstructionResourcePrivate())
+ctkXnatReconstructionResource::ctkXnatReconstructionResource(ctkXnatReconstruction* parent)
+: ctkXnatObject(*new ctkXnatReconstructionResourcePrivate(), parent)
 {
 }
 

+ 2 - 1
Libs/XNAT/Core/ctkXnatReconstructionResource.h

@@ -28,13 +28,14 @@
 
 class ctkXnatConnection;
 class ctkXnatReconstructionResourcePrivate;
+class ctkXnatReconstruction;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatReconstructionResource : public ctkXnatObject
 {
   
 public:
 
-  explicit ctkXnatReconstructionResource();
+  explicit ctkXnatReconstructionResource(ctkXnatReconstruction* parent = 0);
   virtual ~ctkXnatReconstructionResource();
   
   virtual QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatScan.cpp

@@ -22,6 +22,7 @@
 #include "ctkXnatScan.h"
 
 #include "ctkXnatConnection.h"
+#include "ctkXnatScanFolder.h"
 #include "ctkXnatObjectPrivate.h"
 
 class ctkXnatScanPrivate : public ctkXnatObjectPrivate
@@ -42,8 +43,8 @@ public:
 };
 
 
-ctkXnatScan::ctkXnatScan(const QString& schemaType)
-: ctkXnatObject(*new ctkXnatScanPrivate(), schemaType)
+ctkXnatScan::ctkXnatScan(ctkXnatScanFolder* parent, const QString& schemaType)
+: ctkXnatObject(*new ctkXnatScanPrivate(), parent, schemaType)
 {
 }
 

+ 2 - 1
Libs/XNAT/Core/ctkXnatScan.h

@@ -27,6 +27,7 @@
 #include "ctkXnatObject.h"
 
 class ctkXnatConnection;
+class ctkXnatScanFolder;
 class ctkXnatScanPrivate;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatScan : public ctkXnatObject
@@ -34,7 +35,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatScan : public ctkXnatObject
 
 public:
 
-  explicit ctkXnatScan(const QString& schemaType = "xnat:imageScanData");
+  explicit ctkXnatScan(ctkXnatScanFolder* parent = 0, const QString& schemaType = "xnat:imageScanData");
   virtual ~ctkXnatScan();
   
   virtual QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatScanFolder.cpp

@@ -22,6 +22,7 @@
 #include "ctkXnatScanFolder.h"
 
 #include "ctkXnatConnection.h"
+#include "ctkXnatExperiment.h"
 #include "ctkXnatObjectPrivate.h"
 
 
@@ -43,8 +44,8 @@ public:
 };
 
 
-ctkXnatScanFolder::ctkXnatScanFolder()
-: ctkXnatObject(*new ctkXnatScanFolderPrivate())
+ctkXnatScanFolder::ctkXnatScanFolder(ctkXnatExperiment* parent)
+: ctkXnatObject(*new ctkXnatScanFolderPrivate(), parent)
 {
   this->setProperty("ID", "Scans");
 }

+ 2 - 1
Libs/XNAT/Core/ctkXnatScanFolder.h

@@ -27,6 +27,7 @@
 #include "ctkXnatObject.h"
 
 class ctkXnatConnection;
+class ctkXnatExperiment;
 class ctkXnatScanFolderPrivate;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatScanFolder : public ctkXnatObject
@@ -34,7 +35,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatScanFolder : public ctkXnatObject
 
 public:
   
-  explicit ctkXnatScanFolder();
+  explicit ctkXnatScanFolder(ctkXnatExperiment* parent = 0);
   virtual ~ctkXnatScanFolder();
   
   virtual QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatScanResource.cpp

@@ -23,6 +23,7 @@
 
 #include "ctkXnatConnection.h"
 #include "ctkXnatObjectPrivate.h"
+#include "ctkXnatScan.h"
 
 class ctkXnatScanResourcePrivate : public ctkXnatObjectPrivate
 {
@@ -42,8 +43,8 @@ public:
 };
 
 
-ctkXnatScanResource::ctkXnatScanResource()
-: ctkXnatObject(*new ctkXnatScanResourcePrivate())
+ctkXnatScanResource::ctkXnatScanResource(ctkXnatScan* parent)
+: ctkXnatObject(*new ctkXnatScanResourcePrivate(), parent)
 {
 }
 

+ 2 - 1
Libs/XNAT/Core/ctkXnatScanResource.h

@@ -27,6 +27,7 @@
 #include "ctkXnatObject.h"
 
 class ctkXnatConnection;
+class ctkXnatScan;
 class ctkXnatScanResourcePrivate;
 
 class CTK_XNAT_CORE_EXPORT ctkXnatScanResource : public ctkXnatObject
@@ -34,7 +35,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatScanResource : public ctkXnatObject
   
 public:
 
-  explicit ctkXnatScanResource();
+  explicit ctkXnatScanResource(ctkXnatScan* parent = 0);
   virtual ~ctkXnatScanResource();
 
   QString resourceUri() const;

+ 3 - 2
Libs/XNAT/Core/ctkXnatSubject.cpp

@@ -25,6 +25,7 @@
 
 #include "ctkXnatConnection.h"
 #include "ctkXnatObjectPrivate.h"
+#include "ctkXnatProject.h"
 
 class ctkXnatSubjectPrivate : public ctkXnatObjectPrivate
 {
@@ -50,8 +51,8 @@ public:
   QList<ctkXnatProject*> projects;
 };
 
-ctkXnatSubject::ctkXnatSubject(const QString& schemaType)
-: ctkXnatObject(*new ctkXnatSubjectPrivate(), schemaType)
+ctkXnatSubject::ctkXnatSubject(ctkXnatProject* parent, const QString& schemaType)
+: ctkXnatObject(*new ctkXnatSubjectPrivate(), parent, schemaType)
 {
 }
 

+ 1 - 1
Libs/XNAT/Core/ctkXnatSubject.h

@@ -34,7 +34,7 @@ class CTK_XNAT_CORE_EXPORT ctkXnatSubject : public ctkXnatObject
 
 public:
 
-  explicit ctkXnatSubject(const QString& schemaType = "xnat:subjectData");
+  explicit ctkXnatSubject(ctkXnatProject* parent = 0, const QString& schemaType = "xnat:subjectData");
   virtual ~ctkXnatSubject();
 
   ctkXnatProject* getPrimaryProject() const;