33 #ifndef CXVIEWSERVICE_H_ 34 #define CXVIEWSERVICE_H_ 36 #include "cxResourceVisualizationExport.h" 39 #include <boost/shared_ptr.hpp> 46 #define ViewService_iid "cx::ViewService" 53 enum cxResourceVisualization_EXPORT CAMERA_STYLE_TYPE
71 class cxResourceVisualization_EXPORT
ViewService :
public QObject
75 virtual ViewPtr get3DView(
int group = 0,
int index = 0) = 0;
79 virtual int getActiveGroupId()
const = 0;
81 unsigned groupCount()
const;
84 virtual void setRegistrationMode(REGISTRATION_STATUS mode) = 0;
86 virtual void autoShowData(
DataPtr data) = 0;
87 virtual void enableRender(
bool val) = 0;
88 virtual bool renderingIsEnabled()
const = 0;
89 virtual QWidget* createLayoutWidget(QWidget* parent,
int index=0) = 0;
90 virtual QWidget* getLayoutWidget(
int index) = 0;
91 virtual QString getActiveLayout(
int widgetIndex=0)
const = 0;
92 virtual void setActiveLayout(
const QString& uid,
int widgetIndex=0) = 0;
93 virtual void deactivateLayout();
100 virtual QActionGroup* getInteractorStyleActionGroup() = 0;
101 virtual void centerToImageCenterInActiveViewGroup() = 0;
102 virtual void setCameraStyle(CAMERA_STYLE_TYPE style,
int groupIdx) = 0;
103 virtual void zoomCamera3D(
int viewGroup3DNumber,
int zoomFactor) = 0;
104 virtual void addDefaultLayout(
LayoutData layoutData) = 0;
105 virtual void enableContextMenuForViews(
bool enable=
true) = 0;
107 virtual bool isNull() = 0;
113 void fps(
int number);
114 void activeLayoutChanged();
115 void activeViewChanged();
116 void renderingEnabledChanged();
118 void renderFinished();
121 virtual void aboutToStop() = 0;
128 #endif // CXVIEWSERVICE_H_ boost::shared_ptr< class CyclicActionLogger > CyclicActionLoggerPtr
boost::shared_ptr< class LayoutRepository > LayoutRepositoryPtr
boost::shared_ptr< class ViewGroupData > ViewGroupDataPtr
boost::shared_ptr< class CameraControl > CameraControlPtr
boost::shared_ptr< class InteractiveCropper > InteractiveCropperPtr
boost::shared_ptr< class RepContainer > RepContainerPtr
boost::shared_ptr< class View > ViewPtr
boost::shared_ptr< class Clippers > ClippersPtr
boost::shared_ptr< class Data > DataPtr
SNW_DECLARE_ENUM_STRING_CONVERTERS(cxResourceVisualization_EXPORT, cx, CAMERA_STYLE_TYPE)
Eigen::Vector3d Vector3D
Vector3D is a representation of a point or vector in 3D.
boost::shared_ptr< class Navigation > NavigationPtr
Namespace for all CustusX production code.