|
@@ -22,99 +22,40 @@
|
|
|
#include "ctkXnatExperiment.h"
|
|
|
|
|
|
#include "ctkXnatConnection.h"
|
|
|
+#include "ctkXnatObjectPrivate.h"
|
|
|
|
|
|
-class ctkXnatExperimentPrivate
|
|
|
+class ctkXnatExperimentPrivate : public ctkXnatObjectPrivate
|
|
|
{
|
|
|
public:
|
|
|
- QString id;
|
|
|
- QString project;
|
|
|
- QString date;
|
|
|
- QString xsiType;
|
|
|
- QString label;
|
|
|
- QString insertDate;
|
|
|
- QString uri;
|
|
|
-};
|
|
|
-
|
|
|
-ctkXnatExperiment::ctkXnatExperiment(ctkXnatObject* parent)
|
|
|
-: ctkXnatObject(parent)
|
|
|
-, d_ptr(new ctkXnatExperimentPrivate())
|
|
|
-{
|
|
|
-}
|
|
|
-
|
|
|
-ctkXnatExperiment::~ctkXnatExperiment()
|
|
|
-{
|
|
|
-}
|
|
|
-
|
|
|
-const QString& ctkXnatExperiment::id() const
|
|
|
-{
|
|
|
- Q_D(const ctkXnatExperiment);
|
|
|
- return d->id;
|
|
|
-}
|
|
|
-
|
|
|
-void ctkXnatExperiment::setId(const QString& id)
|
|
|
-{
|
|
|
- Q_D(ctkXnatExperiment);
|
|
|
- d->id = id;
|
|
|
-}
|
|
|
-
|
|
|
-const QString& ctkXnatExperiment::project() const
|
|
|
-{
|
|
|
- Q_D(const ctkXnatExperiment);
|
|
|
- return d->project;
|
|
|
-}
|
|
|
-
|
|
|
-void ctkXnatExperiment::setProject(const QString& project)
|
|
|
-{
|
|
|
- Q_D(ctkXnatExperiment);
|
|
|
- d->project = project;
|
|
|
-}
|
|
|
-
|
|
|
-const QString& ctkXnatExperiment::date() const
|
|
|
-{
|
|
|
- Q_D(const ctkXnatExperiment);
|
|
|
- return d->date;
|
|
|
-}
|
|
|
|
|
|
-void ctkXnatExperiment::setDate(const QString& date)
|
|
|
-{
|
|
|
- Q_D(ctkXnatExperiment);
|
|
|
- d->date = date;
|
|
|
-}
|
|
|
-
|
|
|
-const QString& ctkXnatExperiment::xsiType() const
|
|
|
-{
|
|
|
- Q_D(const ctkXnatExperiment);
|
|
|
- return d->xsiType;
|
|
|
-}
|
|
|
+ ctkXnatExperimentPrivate()
|
|
|
+ : ctkXnatObjectPrivate()
|
|
|
+ {
|
|
|
+ }
|
|
|
|
|
|
-void ctkXnatExperiment::setXsiType(const QString& xsiType)
|
|
|
-{
|
|
|
- Q_D(ctkXnatExperiment);
|
|
|
- d->xsiType = xsiType;
|
|
|
-}
|
|
|
+ void reset()
|
|
|
+ {
|
|
|
+ uri.clear();
|
|
|
+ }
|
|
|
+
|
|
|
+ QString uri;
|
|
|
+};
|
|
|
|
|
|
-const QString& ctkXnatExperiment::label() const
|
|
|
-{
|
|
|
- Q_D(const ctkXnatExperiment);
|
|
|
- return d->label;
|
|
|
-}
|
|
|
|
|
|
-void ctkXnatExperiment::setLabel(const QString& label)
|
|
|
+ctkXnatExperiment::ctkXnatExperiment()
|
|
|
+: ctkXnatObject(new ctkXnatExperimentPrivate())
|
|
|
{
|
|
|
- Q_D(ctkXnatExperiment);
|
|
|
- d->label = label;
|
|
|
}
|
|
|
|
|
|
-const QString& ctkXnatExperiment::insertDate() const
|
|
|
+ctkXnatExperiment::Pointer ctkXnatExperiment::Create()
|
|
|
{
|
|
|
- Q_D(const ctkXnatExperiment);
|
|
|
- return d->insertDate;
|
|
|
+ Pointer experiment(new ctkXnatExperiment());
|
|
|
+ experiment->d_func()->selfPtr = experiment;
|
|
|
+ return experiment;
|
|
|
}
|
|
|
|
|
|
-void ctkXnatExperiment::setInsertDate(const QString& insertDate)
|
|
|
+ctkXnatExperiment::~ctkXnatExperiment()
|
|
|
{
|
|
|
- Q_D(ctkXnatExperiment);
|
|
|
- d->insertDate = insertDate;
|
|
|
}
|
|
|
|
|
|
const QString& ctkXnatExperiment::uri() const
|
|
@@ -129,51 +70,20 @@ void ctkXnatExperiment::setUri(const QString& uri)
|
|
|
d->uri = uri;
|
|
|
}
|
|
|
|
|
|
-bool ctkXnatExperiment::holdsFiles() const
|
|
|
+void ctkXnatExperiment::reset()
|
|
|
{
|
|
|
- return true;
|
|
|
-}
|
|
|
-
|
|
|
-void ctkXnatExperiment::fetch(ctkXnatConnection* connection)
|
|
|
-{
|
|
|
- connection->fetch(this);
|
|
|
-}
|
|
|
-
|
|
|
-bool ctkXnatExperiment::isModifiable(int parentIndex) const
|
|
|
-{
|
|
|
- ctkXnatObject* child = getChildren()[parentIndex];
|
|
|
- if (child == 0)
|
|
|
- {
|
|
|
- return false;
|
|
|
- }
|
|
|
- return child->isModifiable();
|
|
|
-}
|
|
|
-
|
|
|
-void ctkXnatExperiment::add(ctkXnatConnection* connection, const QString& reconstruction)
|
|
|
-{
|
|
|
- connection->addReconstruction(this, reconstruction);
|
|
|
-}
|
|
|
-
|
|
|
-QString ctkXnatExperiment::getModifiableChildKind() const
|
|
|
-{
|
|
|
- return "reconstruction";
|
|
|
+ Q_D(ctkXnatExperiment);
|
|
|
+ ctkXnatObject::reset();
|
|
|
}
|
|
|
|
|
|
-QString ctkXnatExperiment::getModifiableParentName() const
|
|
|
+void ctkXnatExperiment::fetchImpl()
|
|
|
{
|
|
|
- return getName();
|
|
|
+ Q_D(ctkXnatExperiment);
|
|
|
+ ctkXnatObject::Pointer self = d->selfPtr;
|
|
|
+ this->getConnection()->fetch(self.staticCast<ctkXnatExperiment>());
|
|
|
}
|
|
|
|
|
|
-bool ctkXnatExperiment::isModifiable() const
|
|
|
+void ctkXnatExperiment::remove()
|
|
|
{
|
|
|
- int childNumber = getChildren().size();
|
|
|
- for (int i = 0; i < childNumber; i++)
|
|
|
- {
|
|
|
- if (childName(i) == QString("Reconstruction"))
|
|
|
- {
|
|
|
- return false;
|
|
|
- }
|
|
|
- }
|
|
|
-
|
|
|
- return true;
|
|
|
+ //connection->remove(this);
|
|
|
}
|