13 #ifndef CXDATAMANAGER_H_
14 #define CXDATAMANAGER_H_
16 #include "org_custusx_core_patientmodel_Export.h"
22 #include <boost/shared_ptr.hpp>
48 class org_custusx_core_patientmodel_EXPORT
DataManager:
public QObject
52 typedef std::map<QString, DataPtr>
DataMap;
54 typedef std::map<QString, MeshPtr>
MeshMap;
55 typedef std::map<QString, VideoSourcePtr>
StreamMap;
63 virtual std::map<QString, ImagePtr> getImages()
const = 0;
66 virtual std::map<QString, MeshPtr> getMeshes()
const = 0;
69 virtual void loadData(
DataPtr data,
bool overWrite =
false) = 0;
70 virtual DataPtr loadData(
const QString& uid,
const QString& path) = 0;
71 virtual std::map<QString, DataPtr> getData()
const = 0;
72 virtual DataPtr getData(
const QString& uid)
const = 0;
77 virtual Vector3D getCenter()
const = 0;
78 virtual void setCenter(
const Vector3D& center) = 0;
84 virtual QString addLandmark() = 0;
85 virtual void deleteLandmarks() = 0;
86 virtual void setLandmarkNames(std::vector<QString> names) = 0;
87 virtual void setLandmarkName(QString uid, QString name) = 0;
88 virtual void setLandmarkActive(QString uid,
bool active) = 0;
90 virtual CLINICAL_VIEW getClinicalApplication()
const = 0;
91 virtual void setClinicalApplication(CLINICAL_VIEW application) = 0;
92 virtual void clear() = 0;
93 virtual void removeData(
const QString& uid, QString basePath) = 0;
95 virtual void addXml(QDomNode& parentNode) = 0;
96 virtual void parseXml(QDomNode& datamangerNode, QString absolutePath = QString()) = 0;
102 virtual void generateUidAndName(QString* _uid, QString* _name) = 0;
105 virtual ImagePtr getImage(
const QString& uid)
const;
106 virtual MeshPtr getMesh(
const QString& uid)
const;
110 void centerChanged();
111 void operatingTableChanged();
112 void dataAddedOrRemoved();
113 void landmarkPropertiesChanged();
114 void clinicalApplicationChanged();