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;
59 virtual StreamMap getStreams()
const = 0;
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;
73 virtual SpaceProviderPtr getSpaceProvider() = 0;
74 virtual DataFactoryPtr getDataFactory() = 0;
77 virtual Vector3D getCenter()
const = 0;
78 virtual void setCenter(
const Vector3D& center) = 0;
82 virtual PresetTransferFunctions3DPtr getPresetTransferFunctions3D()
const;
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;
100 virtual RegistrationHistoryPtr get_rMpr_History()
const = 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();
boost::shared_ptr< class SpaceProvider > SpaceProviderPtr
boost::shared_ptr< class RegistrationHistory > RegistrationHistoryPtr
boost::shared_ptr< class TrackedStream > TrackedStreamPtr
Transform3D Transform3D
Transform3D is a representation of an affine 3D transform.
boost::shared_ptr< class TransferFunctions3DPresets > PresetTransferFunctions3DPtr
boost::shared_ptr< class Image > ImagePtr
std::map< QString, MeshPtr > MeshMap
boost::shared_ptr< class Landmarks > LandmarksPtr
boost::shared_ptr< class Data > DataPtr
std::map< QString, ImagePtr > ImagesMap
boost::shared_ptr< class VideoSource > VideoSourcePtr
Eigen::Vector3d Vector3D
Vector3D is a representation of a point or vector in 3D.
std::map< QString, LandmarkProperty > LandmarkPropertyMap
The OperatingTable class.
boost::shared_ptr< class DataFactory > DataFactoryPtr
boost::shared_ptr< class Mesh > MeshPtr
std::map< QString, DataPtr > DataMap
Namespace for all CustusX production code.
std::map< QString, VideoSourcePtr > StreamMap