34 #ifndef CXDATAMANAGER_H_ 35 #define CXDATAMANAGER_H_ 37 #include "org_custusx_core_patientmodel_Export.h" 43 #include <boost/shared_ptr.hpp> 69 class org_custusx_core_patientmodel_EXPORT
DataManager:
public QObject
73 typedef std::map<QString, DataPtr>
DataMap;
75 typedef std::map<QString, MeshPtr>
MeshMap;
76 typedef std::map<QString, VideoSourcePtr>
StreamMap;
80 virtual StreamMap getStreams()
const = 0;
84 virtual std::map<QString, ImagePtr> getImages()
const = 0;
87 virtual std::map<QString, MeshPtr> getMeshes()
const = 0;
90 virtual void loadData(
DataPtr data) = 0;
91 virtual DataPtr loadData(
const QString& uid,
const QString& path) = 0;
92 virtual std::map<QString, DataPtr> getData()
const = 0;
93 virtual DataPtr getData(
const QString& uid)
const = 0;
94 virtual SpaceProviderPtr getSpaceProvider() = 0;
95 virtual DataFactoryPtr getDataFactory() = 0;
98 virtual Vector3D getCenter()
const = 0;
99 virtual void setCenter(
const Vector3D& center) = 0;
103 virtual PresetTransferFunctions3DPtr getPresetTransferFunctions3D()
const;
105 virtual QString addLandmark() = 0;
106 virtual void deleteLandmarks() = 0;
107 virtual void setLandmarkNames(std::vector<QString> names) = 0;
108 virtual void setLandmarkName(QString uid, QString name) = 0;
109 virtual void setLandmarkActive(QString uid,
bool active) = 0;
111 virtual CLINICAL_VIEW getClinicalApplication()
const = 0;
112 virtual void setClinicalApplication(CLINICAL_VIEW application) = 0;
113 virtual void clear() = 0;
114 virtual void removeData(
const QString& uid, QString basePath) = 0;
116 virtual void addXml(QDomNode& parentNode) = 0;
117 virtual void parseXml(QDomNode& datamangerNode, QString absolutePath = QString()) = 0;
121 virtual RegistrationHistoryPtr get_rMpr_History()
const = 0;
123 virtual void generateUidAndName(QString* _uid, QString* _name) = 0;
126 virtual ImagePtr getImage(
const QString& uid)
const;
127 virtual MeshPtr getMesh(
const QString& uid)
const;
131 void centerChanged();
132 void operatingTableChanged();
133 void dataAddedOrRemoved();
134 void landmarkPropertiesChanged();
135 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