ALBA
albaGUITransformSliders.h
Go to the documentation of this file.
1/*=========================================================================
2
3 Program: ALBA (Agile Library for Biomedical Applications)
4 Module: albaGUITransformSliders
5 Authors: Eleonora Mambrini
6
7 Copyright (c) BIC
8 All rights reserved. See Copyright.txt or
9
10
11 This software is distributed WITHOUT ANY WARRANTY; without even
12 the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR
13 PURPOSE. See the above copyright notice for more information.
14
15=========================================================================*/
16
17#ifndef __albaGUITransformSliders_H__
18#define __albaGUITransformSliders_H__
19
20//----------------------------------------------------------------------------
21// Include:
22//----------------------------------------------------------------------------
23#include "albaDefines.h"
24#include "albaObserver.h"
26
27//----------------------------------------------------------------------------
28// forward references :
29//----------------------------------------------------------------------------
30class albaGUI;
31class albaGUIButton;
32class mmiGenericMouse;
33class mmiCompositorMouse;
34class albaInteractor;
35class albaVME;
36class albaMatrix;
38
39//----------------------------------------------------------------------------
45{
46public:
47
49 albaGUITransformSliders(albaVME *input, double translationRange[6], albaObserver *listener = NULL, bool enableScaling = true,bool testMode = false);
50
53
55 void OnEvent(albaEventBase *alba_event);
56
58 void EnableWidgets(bool enable);
59
60 //----------------------------------------------------------------------------
61 //gui constants:
62 //----------------------------------------------------------------------------
63
64 // this constants must be visible from the owner object
66 {
67 ID_TRANSLATE_X = MINID,
77 };
78
80 void Reset();
81
83 void SetAbsPose(albaMatrix *absPose, albaTimeStamp timeStamp = -1);
84
86 void GetPosition(double pos[3]);
87
89 void GetOrientation(double orientation[3]);
90
92 void GetScaling(double scaling[3]);
93
95 void SetPosition(double pos[3]);
96
98 void SetOrientation(double orientation[3]);
99
101 void SetScaling(double scaling[3]);
102
103
104protected:
105
108
111
113 void CreateGui();
114
115 double m_Position[3];
116 double m_Orientation[3];
117 double m_Scaling[3];
118 double m_TranslationRange[6];
119
121
123};
124#endif
MINID
Definition: albaDecl.h:420
double albaTimeStamp
type for time varying data timestamps (not for pipelines timestamps!)
Definition: albaDefines.h:57
Implementation of the message object for the Subject/Observer design pattern.
Definition: albaEventBase.h:49
albaGUIButton inherit from wxButton.
Definition: albaGUIButton.h:35
a Slider that can be used to set double values, albaGUIFloatSlider send usual wxWindows Events; Use a...
Class name: albaGUITransformSliders.
void SetOrientation(double orientation[3])
Set the current orientation.
~albaGUITransformSliders()
Destructor.
void GetPosition(double pos[3])
Return the current position.
void RefSysVmeChanged()
override superclass
void SetAbsPose(albaMatrix *absPose, albaTimeStamp timeStamp=-1)
Set abs pose and update position, orientation and scale text entries according to current reference s...
albaGUITransformSliders(albaVME *input, double translationRange[6], albaObserver *listener=NULL, bool enableScaling=true, bool testMode=false)
Constructor.
void OnEvent(albaEventBase *alba_event)
Override superclass.
void SetScaling(double scaling[3])
Set the current scaling.
void SlidersValuesChanged()
action to be performed when a slider has changed its position.
void GetOrientation(double orientation[3])
Return the current orientation.
void Reset()
Override superclass.
void EnableWidgets(bool enable)
Enable-Disable the GUI's widgets.
void SetPosition(double pos[3])
Set the current position.
void GetScaling(double scaling[3])
Return the current scaling.
void CreateGui()
override superclass
albaGUI is a panel with function to easily create GUI.
Definition: albaGUI.h:110
Abstract class for ALBA interactors This class provides base interface and features of ALBA continuou...
albaMatrix - Time stamped 4x4 Matrix.
Definition: albaMatrix.h:44
Interface implementing the Observer of the Subject/Observer design pattern.
Definition: albaObserver.h:36
albaVME -
Definition: albaVME.h:150