TwiceAsNice  2019-02-18
Public Slots | Public Member Functions | Protected Slots | Properties | Private Member Functions | Private Attributes | List of all members
LaosDrotServiceWidget Class Reference

This class is the implementation of the GUI LaosDrotServiceWidgetUI. More...

#include <LaosDrotServiceWidget.h>

Inheritance diagram for LaosDrotServiceWidget:
Inheritance graph
Collaboration diagram for LaosDrotServiceWidget:
Collaboration graph

Public Slots

void slotNice_setNamedPositionAbs (std::vector< double > _p)
 
void slotNice_setNamedPositionRel (std::vector< double > _p)
 
void slotNice_setNamedPositionAbs (std::vector< double > _p)
 
void slotNice_setNamedPositionRel (std::vector< double > _p)
 

Public Member Functions

 LaosDrotServiceWidget (QWidget *parent=0, bool _connect=false)
 ctor More...
 
virtual void initAttributes ()
 Initiate the attributes. The command attributes like the named position and the different units are added. More...
 
virtual void initSlots ()
 Connect different properties with method, which will be executed every time when a property changed. More...
 
 LaosDrotServiceWidget (QWidget *parent=0, bool _connect=false)
 
virtual void initAttributes ()
 virtual function is called after connecting to a property. More...
 
virtual void initSlots ()
 
- Public Member Functions inherited from Nice::BridgeItem
void detach (QWidget *_widget)
 
bool getSynchStatus () const
 Get the sync status. More...
 
const QString & getNodeName ()
 
virtual void setState (CompletionState _state)
 Set the state of the widget (either Nice::OK or Nice::Unsynched ). More...
 
virtual void updateGUI (const ::Nice::Any &)
 Update the widgets data field from the connected Property. More...
 
virtual void setLabels (std::vector< std::string > _vec)
 Set the Labels This function has to be implemented in the derived widget class. More...
 
void setLabel (const QString &_text="")
 Set the text label of this widget. More...
 
QString getLabel ()
 
template<typename E >
std::vector< E * > getBridgeItems ()
 Get all widgets which are connected to the same Property like this one. More...
 
virtual void setShowLabels (bool _show)
 Enables to Labels. More...
 
Nice::JointgetNode () const
 Get the connected Joint node. More...
 
Nice::PropertygetProperty () const
 Get the connected Property. More...
 
virtual void getSessionData (Nice::JointPtr &)
 Fills the passed Joint with the internal session data. More...
 
virtual void setSessionData (Nice::JointPtr)
 Set the internal session data from thge passed Joint. More...
 
virtual void connect (const ::Nice::PropertyPtr _p)
 Connects the widget to a Joint or Property. More...
 
void applyReadOnlyActor ()
 
virtual void connect (const ::Nice::JointPtr _j)
 Connects the widget to a Joint or Property. More...
 
void applyBridge ()
 
QString getPropertyNode () const
 Get the path to the connected Joint. More...
 
virtual bool isReadOnly ()
 Checks if an attribute RO (read only) is set to true. More...
 
virtual void setPropertyNode (QString _nodeName)
 Set the relative path to the displayed Property from the connected Joint. More...
 
void setSynchStatus (bool _on)
 Set the current sync state. More...
 
void setUserConfirmationStatus (bool _on)
 
virtual void setLock (const bool &_locked)
 
void disconnect ()
 Disconnects the widget from the connected Joint or Property. More...
 
void detach (QWidget *_widget)
 
bool getSynchStatus () const
 Get the sync status. More...
 
const QString & getNodeName ()
 
virtual void setState (CompletionState _state)
 Set the state of the widget (either Nice::OK or Nice::Unsynched ). More...
 
virtual void updateGUI (const ::Nice::Any &)
 Update the widgets data field from the connected Property. More...
 
virtual void setLabels (std::vector< std::string > _vec)
 Set the Labels This function has to be implemented in the derived widget class. More...
 
void setLabel (const QString &_text="")
 Set the text label of this widget. More...
 
QString getLabel ()
 
template<typename E >
std::vector< E * > getBridgeItems ()
 Get all widgets which are connected to the same Property like this one. More...
 
virtual void setShowLabels (bool _show)
 Enables to Labels. More...
 
Nice::JointgetNode () const
 Get the connected Joint node. More...
 
Nice::PropertygetProperty () const
 Get the connected Property. More...
 
virtual void getSessionData (Nice::JointPtr &)
 Fills the passed Joint with the internal session data. More...
 
virtual void setSessionData (Nice::JointPtr)
 Set the internal session data from thge passed Joint. More...
 
virtual void connect (const ::Nice::PropertyPtr _p)
 Connects the widget to a Joint or Property. More...
 
void applyReadOnlyActor ()
 
virtual void connect (const ::Nice::JointPtr _j)
 Connects the widget to a Joint or Property. More...
 
void applyBridge ()
 
QString getPropertyNode () const
 Get the path to the connected Joint. More...
 
virtual bool isReadOnly ()
 Checks if an attribute RO (read only) is set to true. More...
 
virtual void setPropertyNode (QString _nodeName)
 Set the relative path to the displayed Property from the connected Joint. More...
 
void setSynchStatus (bool _on)
 Set the current sync state. More...
 
void setUserConfirmationStatus (bool _on)
 
virtual void setLock (const bool &_locked)
 
void disconnect ()
 Disconnects the widget from the connected Joint or Property. More...
 
void detach (QWidget *_widget)
 
bool getSynchStatus () const
 Get the sync status. More...
 
const QString & getNodeName ()
 
virtual void setState (CompletionState _state)
 Set the state of the widget (either Nice::OK or Nice::Unsynched ). More...
 
virtual void updateGUI (const ::Nice::Any &)
 Update the widgets data field from the connected Property. More...
 
virtual void setLabels (std::vector< std::string > _vec)
 Set the Labels This function has to be implemented in the derived widget class. More...
 
void setLabel (const QString &_text="")
 Set the text label of this widget. More...
 
QString getLabel ()
 
template<typename E >
std::vector< E * > getBridgeItems ()
 Get all widgets which are connected to the same Property like this one. More...
 
virtual void setShowLabels (bool _show)
 Enables to Labels. More...
 
Nice::JointgetNode () const
 Get the connected Joint node. More...
 
Nice::PropertygetProperty () const
 Get the connected Property. More...
 
virtual void getSessionData (Nice::JointPtr &)
 Fills the passed Joint with the internal session data. More...
 
virtual void setSessionData (Nice::JointPtr)
 Set the internal session data from thge passed Joint. More...
 
virtual void connect (const ::Nice::PropertyPtr _p)
 Connects the widget to a Joint or Property. More...
 
void applyReadOnlyActor ()
 
virtual void connect (const ::Nice::JointPtr _j)
 Connects the widget to a Joint or Property. More...
 
void applyBridge ()
 
QString getPropertyNode () const
 Get the path to the connected Joint. More...
 
virtual bool isReadOnly ()
 Checks if an attribute RO (read only) is set to true. More...
 
virtual void setPropertyNode (QString _nodeName)
 Set the relative path to the displayed Property from the connected Joint. More...
 
void setSynchStatus (bool _on)
 Set the current sync state. More...
 
void setUserConfirmationStatus (bool _on)
 
virtual void setLock (const bool &_locked)
 
void disconnect ()
 Disconnects the widget from the connected Joint or Property. More...
 

Protected Slots

virtual void slotQt_valueRelChanged (double)
 This method will be called whenever the relative position will change in the GUI. Dummy function which does not do anything. More...
 
virtual void slotQt_valueAbsChanged (double)
 This method will be called whenever the absolute position will change in the GUI. Dummy function which does not do anything. More...
 
virtual void slotQt_signRelChanged ()
 This method will be called whenever the sign button of the relative position is pressed. More...
 
virtual void slotQt_signAbsChanged ()
 This method will be called whenever the sign button of the absolute position is pressed. More...
 
virtual void slotQt_valueNamedPositionChanged (int)
 This method will be called whenever the named position will change in the GUI. More...
 
virtual void slotQt_valueUnitChanged (QString)
 This method will be called whenever the unit will change in the GUI. More...
 
virtual void slotQt_stop ()
 This is the implementation of the stop button. Sends the abort command to the motor which will stop "smoothly.". More...
 
virtual void slotQt_abort ()
 This is the implementation of the abort button. Sends the abort command to the motor which will stop "abruptly.". More...
 
virtual void slotQt_moveRelative ()
 This is the implementation of the move relative button. More...
 
virtual void slotQt_moveAbsolute ()
 This is the implementation of the move absolute button. More...
 
virtual void slotQt_moveToHome ()
 This is the implementation of the move home button. More...
 
virtual void slotQt_startDerotation ()
 This is the implementation of the start derotation button. More...
 
virtual void slotQt_changeDerotationWithAbsoluteOffset ()
 This is the implementation of the change derotation button. More...
 
virtual void slotQt_changeDerotationWithRelativeOffset ()
 This is the implementation of the change derotation button. Change the rotator trajectory with "kink" offset at the specified time. More...
 
virtual void slotQt_isRotatingBgColor (Nice::Completion)
 Check whether the motor is a its active derotationg phase and switch widget background color Use the isRotating() BASDA function to query the derotator service for its state. If this says it's derotating, use a green, othewise a yellow background in the GUI. More...
 
virtual void slotQt_valueRelChanged (double)
 
virtual void slotQt_valueAbsChanged (double)
 
virtual void slotQt_signRelChanged ()
 
virtual void slotQt_signAbsChanged ()
 
virtual void slotQt_valueNamedPositionChanged (int)
 
virtual void slotQt_valueUnitChanged (QString)
 
virtual void slotQt_stop ()
 
virtual void slotQt_abort ()
 
virtual void slotQt_moveRelative ()
 
virtual void slotQt_moveAbsolute ()
 
virtual void slotQt_moveToHome ()
 
virtual void slotQt_startDerotation ()
 
virtual void slotQt_changeDerotationWithAbsoluteOffset ()
 
virtual void slotQt_changeDerotationWithRelativeOffset ()
 
virtual void slotQt_isRotatingBgColor (Nice::Completion)
 

Properties

QString PropertyNode
 Connect the Qt Designer Property propertyNode with the methods getPropertyNode and setPropertyNode. More...
 
bool AutoSynch
 Connect the Qt Designer Property AutoSynch with the methods getSynchStatus and setSynchStatus. More...
 

Private Member Functions

void addPositionItemLabel (std::string _name)
 
void updateDoubleSpinBoxRel ()
 
void updateDoubleSpinBoxAbs ()
 
void addPositionItemLabel (std::string _name)
 
void updateDoubleSpinBoxRel ()
 
void updateDoubleSpinBoxAbs ()
 

Private Attributes

Ui::LaosDrotServiceWidgetUIm_drotView
 
Laos::DrotServiceWorkerInterfacePtr m_cmd
 member for the command interface More...
 
int m_namedPos
 member for the current used named position. More...
 
std::string m_notDefined
 
std::string m_unit
 
std::map< std::string, int > m_unitPrec
 
std::vector< double > m_namedPosRel
 member to store the named relative position More...
 
std::vector< double > m_namedPosAbs
 member to store the named absolute position More...
 
Nice::Mutex m_mutex
 
std::string m_namedPositionNotDefined
 
size_t m_warningAlmostAtLimit
 

Additional Inherited Members

- Public Attributes inherited from Nice::BridgeItem
QGroupBox * m_container
 
bool m_locked
 
- Static Public Attributes inherited from Nice::BridgeItem
static std::map< CompletionState, QString > * s_palette = 0
 
- Protected Member Functions inherited from Nice::BridgeItem
template<typename E >
void set (const E &_value)
 Set the value from the derived widget to the Property. More...
 
void init (QWidget *_widget)
 Initialize the widget. More...
 
 BridgeItem ()
 Constructor. More...
 
virtual ~BridgeItem ()
 Destructor. More...
 
void setWidgetName ()
 
CompletionState getState ()
 Get the current state of the widget. More...
 
void resetGUI ()
 Update the widgets data field from the connected Property. More...
 
virtual int requestUserConfirmation ()
 
virtual void trySetFocus ()
 
void setBuffered (bool _buf)
 
virtual void set ()
 Slot is called when the date of the widget is changed. More...
 
virtual void updateProperty ()
 Set the gui value to the Property. More...
 
template<typename E >
void set (const E &_value)
 Set the value from the derived widget to the Property. More...
 
void init (QWidget *_widget)
 Initialize the widget. More...
 
 BridgeItem ()
 Constructor. More...
 
virtual ~BridgeItem ()
 Destructor. More...
 
void setWidgetName ()
 
CompletionState getState ()
 Get the current state of the widget. More...
 
void resetGUI ()
 Update the widgets data field from the connected Property. More...
 
virtual int requestUserConfirmation ()
 
virtual void trySetFocus ()
 
void setBuffered (bool _buf)
 
virtual void set ()
 Slot is called when the date of the widget is changed. More...
 
virtual void updateProperty ()
 Set the gui value to the Property. More...
 
template<typename E >
void set (const E &_value)
 Set the value from the derived widget to the Property. More...
 
void init (QWidget *_widget)
 Initialize the widget. More...
 
 BridgeItem ()
 Constructor. More...
 
virtual ~BridgeItem ()
 Destructor. More...
 
void setWidgetName ()
 
CompletionState getState ()
 Get the current state of the widget. More...
 
void resetGUI ()
 Update the widgets data field from the connected Property. More...
 
virtual int requestUserConfirmation ()
 
virtual void trySetFocus ()
 
void setBuffered (bool _buf)
 
virtual void set ()
 Slot is called when the date of the widget is changed. More...
 
virtual void updateProperty ()
 Set the gui value to the Property. More...
 
- Protected Attributes inherited from Nice::BridgeItem
bool m_inited
 
CompletionState m_state
 
bool m_autoSynch
 
bool m_isUserConfirmationNeeded
 
Nice::Jointm_root
 
Nice::Propertym_prop
 
WaveBreakerPtr m_breaker
 
bool m_showLabels
 
Nice::I64 m_id
 
QString m_nodeName
 
std::vector< Nice::PropertyPtrm_connectedProps
 

Detailed Description

This class is the implementation of the GUI LaosDrotServiceWidgetUI.

Constructor & Destructor Documentation

◆ LaosDrotServiceWidget() [1/2]

LaosDrotServiceWidget::LaosDrotServiceWidget ( QWidget *  parent = 0,
bool  _connect = false 
)

ctor


Parameters
parentThe parent widget
_connectDummy argument, not used.

◆ LaosDrotServiceWidget() [2/2]

LaosDrotServiceWidget::LaosDrotServiceWidget ( QWidget *  parent = 0,
bool  _connect = false 
)

Member Function Documentation

◆ addPositionItemLabel() [1/2]

void LaosDrotServiceWidget::addPositionItemLabel ( std::string  _name)
private

Parameters
_nameName of the position

◆ addPositionItemLabel() [2/2]

void LaosDrotServiceWidget::addPositionItemLabel ( std::string  _name)
private

◆ initAttributes() [1/2]

void LaosDrotServiceWidget::initAttributes ( )
virtual

Initiate the attributes. The command attributes like the named position and the different units are added.


One drop down button will be filled with the labels of the named ] position. A second drop down button will be filled with the labels of the units.

Reimplemented from Nice::BridgeItem.

◆ initAttributes() [2/2]

virtual void LaosDrotServiceWidget::initAttributes ( )
virtual

virtual function is called after connecting to a property.

The functionality can be implemented in the derived class.

Reimplemented from Nice::BridgeItem.

◆ initSlots() [1/2]

void LaosDrotServiceWidget::initSlots ( )
virtual

Connect different properties with method, which will be executed every time when a property changed.


Reimplemented from Nice::BridgeItem.

◆ initSlots() [2/2]

virtual void LaosDrotServiceWidget::initSlots ( )
virtual

Reimplemented from Nice::BridgeItem.

◆ slotNice_setNamedPositionAbs [1/2]

void LaosDrotServiceWidget::slotNice_setNamedPositionAbs ( std::vector< double >  _p)
slot

◆ slotNice_setNamedPositionAbs [2/2]

void LaosDrotServiceWidget::slotNice_setNamedPositionAbs ( std::vector< double >  _p)
slot

◆ slotNice_setNamedPositionRel [1/2]

void LaosDrotServiceWidget::slotNice_setNamedPositionRel ( std::vector< double >  _p)
slot

◆ slotNice_setNamedPositionRel [2/2]

void LaosDrotServiceWidget::slotNice_setNamedPositionRel ( std::vector< double >  _p)
slot

◆ slotQt_abort [1/2]

virtual void LaosDrotServiceWidget::slotQt_abort ( )
protectedvirtualslot

◆ slotQt_abort [2/2]

void LaosDrotServiceWidget::slotQt_abort ( )
protectedvirtualslot

This is the implementation of the abort button. Sends the abort command to the motor which will stop "abruptly.".


◆ slotQt_changeDerotationWithAbsoluteOffset [1/2]

void LaosDrotServiceWidget::slotQt_changeDerotationWithAbsoluteOffset ( )
protectedvirtualslot

This is the implementation of the change derotation button.


◆ slotQt_changeDerotationWithAbsoluteOffset [2/2]

virtual void LaosDrotServiceWidget::slotQt_changeDerotationWithAbsoluteOffset ( )
protectedvirtualslot

◆ slotQt_changeDerotationWithRelativeOffset [1/2]

virtual void LaosDrotServiceWidget::slotQt_changeDerotationWithRelativeOffset ( )
protectedvirtualslot

◆ slotQt_changeDerotationWithRelativeOffset [2/2]

void LaosDrotServiceWidget::slotQt_changeDerotationWithRelativeOffset ( )
protectedvirtualslot

This is the implementation of the change derotation button. Change the rotator trajectory with "kink" offset at the specified time.


◆ slotQt_isRotatingBgColor [1/2]

virtual void LaosDrotServiceWidget::slotQt_isRotatingBgColor ( Nice::Completion  )
protectedvirtualslot

◆ slotQt_isRotatingBgColor [2/2]

void LaosDrotServiceWidget::slotQt_isRotatingBgColor ( Nice::Completion  _c)
protectedvirtualslot

Check whether the motor is a its active derotationg phase and switch widget background color Use the isRotating() BASDA function to query the derotator service for its state. If this says it's derotating, use a green, othewise a yellow background in the GUI.


Since
2018-04-06

◆ slotQt_moveAbsolute [1/2]

void LaosDrotServiceWidget::slotQt_moveAbsolute ( )
protectedvirtualslot

This is the implementation of the move absolute button.


◆ slotQt_moveAbsolute [2/2]

virtual void LaosDrotServiceWidget::slotQt_moveAbsolute ( )
protectedvirtualslot

◆ slotQt_moveRelative [1/2]

void LaosDrotServiceWidget::slotQt_moveRelative ( )
protectedvirtualslot

This is the implementation of the move relative button.


◆ slotQt_moveRelative [2/2]

virtual void LaosDrotServiceWidget::slotQt_moveRelative ( )
protectedvirtualslot

◆ slotQt_moveToHome [1/2]

void LaosDrotServiceWidget::slotQt_moveToHome ( )
protectedvirtualslot

This is the implementation of the move home button.


◆ slotQt_moveToHome [2/2]

virtual void LaosDrotServiceWidget::slotQt_moveToHome ( )
protectedvirtualslot

◆ slotQt_signAbsChanged [1/2]

virtual void LaosDrotServiceWidget::slotQt_signAbsChanged ( )
protectedvirtualslot

◆ slotQt_signAbsChanged [2/2]

void LaosDrotServiceWidget::slotQt_signAbsChanged ( )
protectedvirtualslot

This method will be called whenever the sign button of the absolute position is pressed.


◆ slotQt_signRelChanged [1/2]

virtual void LaosDrotServiceWidget::slotQt_signRelChanged ( )
protectedvirtualslot

◆ slotQt_signRelChanged [2/2]

void LaosDrotServiceWidget::slotQt_signRelChanged ( )
protectedvirtualslot

This method will be called whenever the sign button of the relative position is pressed.


◆ slotQt_startDerotation [1/2]

void LaosDrotServiceWidget::slotQt_startDerotation ( )
protectedvirtualslot

This is the implementation of the start derotation button.


◆ slotQt_startDerotation [2/2]

virtual void LaosDrotServiceWidget::slotQt_startDerotation ( )
protectedvirtualslot

◆ slotQt_stop [1/2]

void LaosDrotServiceWidget::slotQt_stop ( )
protectedvirtualslot

This is the implementation of the stop button. Sends the abort command to the motor which will stop "smoothly.".


◆ slotQt_stop [2/2]

virtual void LaosDrotServiceWidget::slotQt_stop ( )
protectedvirtualslot

◆ slotQt_valueAbsChanged [1/2]

void LaosDrotServiceWidget::slotQt_valueAbsChanged ( double  _v)
protectedvirtualslot

This method will be called whenever the absolute position will change in the GUI. Dummy function which does not do anything.


Parameters
double_v dummy argument. not used

◆ slotQt_valueAbsChanged [2/2]

virtual void LaosDrotServiceWidget::slotQt_valueAbsChanged ( double  )
protectedvirtualslot

◆ slotQt_valueNamedPositionChanged [1/2]

virtual void LaosDrotServiceWidget::slotQt_valueNamedPositionChanged ( int  )
protectedvirtualslot

◆ slotQt_valueNamedPositionChanged [2/2]

void LaosDrotServiceWidget::slotQt_valueNamedPositionChanged ( int  _index)
protectedvirtualslot

This method will be called whenever the named position will change in the GUI.


Parameters
_indexThe index in the enumerated list of named positions

◆ slotQt_valueRelChanged [1/2]

virtual void LaosDrotServiceWidget::slotQt_valueRelChanged ( double  )
protectedvirtualslot

◆ slotQt_valueRelChanged [2/2]

void LaosDrotServiceWidget::slotQt_valueRelChanged ( double  _v)
protectedvirtualslot

This method will be called whenever the relative position will change in the GUI. Dummy function which does not do anything.


Parameters
double_v dummy argument. not used

◆ slotQt_valueUnitChanged [1/2]

void LaosDrotServiceWidget::slotQt_valueUnitChanged ( QString  _v)
protectedvirtualslot

This method will be called whenever the unit will change in the GUI.


Parameters
_vThe new unit to be used in the future.

◆ slotQt_valueUnitChanged [2/2]

virtual void LaosDrotServiceWidget::slotQt_valueUnitChanged ( QString  )
protectedvirtualslot

◆ updateDoubleSpinBoxAbs() [1/2]

void LaosDrotServiceWidget::updateDoubleSpinBoxAbs ( )
private

◆ updateDoubleSpinBoxAbs() [2/2]

void LaosDrotServiceWidget::updateDoubleSpinBoxAbs ( )
private

◆ updateDoubleSpinBoxRel() [1/2]

void LaosDrotServiceWidget::updateDoubleSpinBoxRel ( )
private

◆ updateDoubleSpinBoxRel() [2/2]

void LaosDrotServiceWidget::updateDoubleSpinBoxRel ( )
private

Member Data Documentation

◆ m_cmd

Laos::DrotServiceWorkerInterfacePtr LaosDrotServiceWidget::m_cmd
private

member for the command interface

◆ m_drotView

Ui::LaosDrotServiceWidgetUI * LaosDrotServiceWidget::m_drotView
private

◆ m_mutex

Nice::Mutex LaosDrotServiceWidget::m_mutex
private

◆ m_namedPos

int LaosDrotServiceWidget::m_namedPos
private

member for the current used named position.

◆ m_namedPosAbs

std::vector< double > LaosDrotServiceWidget::m_namedPosAbs
private

member to store the named absolute position

◆ m_namedPositionNotDefined

std::string LaosDrotServiceWidget::m_namedPositionNotDefined
private

◆ m_namedPosRel

std::vector< double > LaosDrotServiceWidget::m_namedPosRel
private

member to store the named relative position

◆ m_notDefined

std::string LaosDrotServiceWidget::m_notDefined
private

◆ m_unit

std::string LaosDrotServiceWidget::m_unit
private

◆ m_unitPrec

std::map< std::string, int > LaosDrotServiceWidget::m_unitPrec
private

◆ m_warningAlmostAtLimit

size_t LaosDrotServiceWidget::m_warningAlmostAtLimit
private

Property Documentation

◆ AutoSynch

bool LaosDrotServiceWidget::AutoSynch
readwrite

Connect the Qt Designer Property AutoSynch with the methods getSynchStatus and setSynchStatus.

◆ PropertyNode

QString LaosDrotServiceWidget::PropertyNode
readwrite

Connect the Qt Designer Property propertyNode with the methods getPropertyNode and setPropertyNode.


The documentation for this class was generated from the following files: