ifw
0.0.1-dev
|
Shutter Local Control System (LCS) Interface (IF) class. More...
#include <shutterLcsIf.hpp>
Public Member Functions | |
ShutterLcsIf (std::shared_ptr< devmgr::common::IDeviceConfig > config, devmgr::common::DataContext &data_ctx) | |
ShutterLcsIf constructor. More... | |
void | ReadConfig () |
Read the configuration. More... | |
virtual bool | IsReady () |
Check if controller is in Standby/Ready state. More... | |
virtual bool | IsOperational () |
Check if controller is in Operational. More... | |
void | Open () |
Executes the Open RPC. More... | |
void | Close () |
Executes the Close RPC. More... | |
bool | IsOpening () |
Check if controller is opening the shutter. More... | |
bool | IsClosing () |
Check if controller is closing the shutter. More... | |
bool | IsOpen () |
Check if shutter is open. More... | |
bool | IsClose () |
Check if shutter is close. More... | |
bool | IsHwFailure () |
Check if shutter is hardware error. More... | |
virtual void | ReadStatus (devmgr::common::DeviceControllerData &status) |
Read status from the controller. More... | |
void | StartMonitoring () |
Start monitoring of controller attributes. More... | |
void | StopMonitoring () |
Stop monitoring of controller attributes. More... | |
void | Listener (fcf::common::VectorVariant ¶ms) |
Callback to manage changes on the monitored items. More... | |
virtual std::string | GetRpcError (const short error) const |
virtual std::string | GetHwError (int &error_code, const bool update=false) |
Get error message. More... | |
ShutterLcsIf (std::shared_ptr< devmgr::common::IDeviceConfig > config, devmgr::common::DataContext &data_ctx) | |
ShutterLcsIf constructor. More... | |
void | ReadConfig () |
Read the configuration. More... | |
virtual bool | IsReady () |
Check if controller is in Standby/Ready state. More... | |
virtual bool | IsOperational () |
Check if controller is in Operational. More... | |
void | Open () |
Executes the Open RPC. More... | |
void | Close () |
Executes the Close RPC. More... | |
bool | IsOpening () |
Check if controller is opening the shutter. More... | |
bool | IsClosing () |
Check if controller is closing the shutter. More... | |
bool | IsOpen () |
Check if shutter is open. More... | |
bool | IsClose () |
Check if shutter is close. More... | |
bool | IsHwFailure () |
Check if shutter is hardware error. More... | |
virtual void | ReadStatus (devmgr::common::DeviceControllerData &status) |
Read status from the controller. More... | |
void | StartMonitoring () |
Start monitoring of controller attributes. More... | |
void | StopMonitoring () |
Stop monitoring of controller attributes. More... | |
void | Listener (fcf::common::VectorVariant ¶ms) |
Callback to manage changes on the monitored items. More... | |
virtual std::string | GetRpcError (const short error) const |
virtual std::string | GetHwError (int &error_code, const bool update=false) |
Get error message. More... | |
ShutterLcsIf (std::shared_ptr< devmgr::common::IDeviceConfig > config, devmgr::common::DataContext &data_ctx) | |
ShutterLcsIf constructor. More... | |
void | ReadConfig () |
Read the configuration. More... | |
virtual bool | IsReady () |
Check if controller is in Standby/Ready state. More... | |
virtual bool | IsOperational () |
Check if controller is in Operational. More... | |
void | Open () |
Executes the Open RPC. More... | |
void | Close () |
Executes the Close RPC. More... | |
bool | IsOpening () |
Check if controller is opening the shutter. More... | |
bool | IsClosing () |
Check if controller is closing the shutter. More... | |
bool | IsOpen () |
Check if shutter is open. More... | |
bool | IsClose () |
Check if shutter is close. More... | |
bool | IsHwFailure () |
Check if shutter is hardware error. More... | |
virtual void | ReadStatus (devmgr::common::DeviceControllerData &status) |
Read status from the controller. More... | |
void | StartMonitoring () |
Start monitoring of controller attributes. More... | |
void | StopMonitoring () |
Stop monitoring of controller attributes. More... | |
void | Listener (fcf::common::VectorVariant ¶ms) |
Callback to manage changes on the monitored items. More... | |
virtual std::string | GetRpcError (const short error) const |
virtual std::string | GetHwError (int &error_code, const bool update=false) |
Get error message. More... | |
![]() | |
DeviceLcsIf (std::shared_ptr< IDeviceConfig > config) | |
DeviceLcsIf construm_data_ctx.GetConfig().GetServerId() + ".". More... | |
virtual void | RegisterComm (std::shared_ptr< fcf::common::IComm > commIf, fcf::common::Dispatcher<> &failure, fcf::common::Dispatcher<> &normal) |
Register a communication interface. More... | |
virtual void | Connect () |
Connect to the controller or simulator. More... | |
virtual void | Disconnect () |
Disconnect from the controller of simulator. More... | |
virtual bool | IsNotReady () |
Check if controller is in Standby/NotReady state. More... | |
virtual bool | IsDisabling () |
Check if controller is in Disabling state. More... | |
virtual void | Init () |
Check if controller is in Hardware Failure. More... | |
virtual void | Enable () |
Executes the Enable RPC. More... | |
virtual void | Disable () |
Executes the Disable RPC. More... | |
virtual void | Stop () |
Executes the Stop RPC. More... | |
virtual void | Reset () |
Executes the Reset RPC. More... | |
std::string | GetMapValue (std::string category, std::string key) |
Get mapping valLampConfigue. More... | |
fcf::common::Dispatcher < fcf::common::VectorVariant & > & | GetDispatcher () |
bool | IsConfigLoaded () const |
Check if configuration was loaded. More... | |
bool | IsConnected () const |
Check is the communication was established. More... | |
DeviceLcsIf (std::shared_ptr< IDeviceConfig > config) | |
DeviceLcsIf construm_data_ctx.GetConfig().GetServerId() + ".". More... | |
virtual void | RegisterComm (std::shared_ptr< fcf::common::IComm > commIf, fcf::common::Dispatcher<> &failure, fcf::common::Dispatcher<> &normal) |
Register a communication interface. More... | |
virtual void | Connect () |
Connect to the controller or simulator. More... | |
virtual void | Disconnect () |
Disconnect from the controller of simulator. More... | |
virtual bool | IsNotReady () |
Check if controller is in Standby/NotReady state. More... | |
virtual bool | IsDisabling () |
Check if controller is in Disabling state. More... | |
virtual void | Init () |
Check if controller is in Hardware Failure. More... | |
virtual void | Enable () |
Executes the Enable RPC. More... | |
virtual void | Disable () |
Executes the Disable RPC. More... | |
virtual void | Stop () |
Executes the Stop RPC. More... | |
virtual void | Reset () |
Executes the Reset RPC. More... | |
std::string | GetMapValue (std::string category, std::string key) |
Get mapping valLampConfigue. More... | |
fcf::common::Dispatcher < fcf::common::VectorVariant & > & | GetDispatcher () |
bool | IsConfigLoaded () const |
Check if configuration was loaded. More... | |
bool | IsConnected () const |
Check is the communication was established. More... | |
DeviceLcsIf (std::shared_ptr< IDeviceConfig > config) | |
DeviceLcsIf construm_data_ctx.GetConfig().GetServerId() + ".". More... | |
virtual void | RegisterComm (std::shared_ptr< fcf::common::IComm > commIf, fcf::common::Dispatcher<> &failure, fcf::common::Dispatcher<> &normal) |
Register a communication interface. More... | |
virtual void | Connect () |
Connect to the controller or simulator. More... | |
virtual void | Disconnect () |
Disconnect from the controller of simulator. More... | |
virtual bool | IsNotReady () |
Check if controller is in Standby/NotReady state. More... | |
virtual bool | IsDisabling () |
Check if controller is in Disabling state. More... | |
virtual void | Init () |
Check if controller is in Hardware Failure. More... | |
virtual void | Enable () |
Executes the Enable RPC. More... | |
virtual void | Disable () |
Executes the Disable RPC. More... | |
virtual void | Stop () |
Executes the Stop RPC. More... | |
virtual void | Reset () |
Executes the Reset RPC. More... | |
std::string | GetMapValue (std::string category, std::string key) |
Get mapping valLampConfigue. More... | |
fcf::common::Dispatcher < fcf::common::VectorVariant & > & | GetDispatcher () |
bool | IsConfigLoaded () const |
Check if configuration was loaded. More... | |
bool | IsConnected () const |
Check is the communication was established. More... | |
Protected Attributes | |
std::unordered_map < std::string, short > | m_status_map |
std::vector< std::string > | m_monitor_vector |
![]() | |
YAML::Node | m_config_node |
YAML node for the device mapping file. More... | |
std::shared_ptr < fcf::common::IComm > | m_comm |
Shared pointer to the communication object. More... | |
std::shared_ptr< IDeviceConfig > | m_config |
Shared pointer to the device config object. More... | |
fcf::common::Dispatcher < fcf::common::VectorVariant & > | m_dispatcher |
Dispatcher for managing subscription events. More... | |
fcf::common::Dispatcher | m_failure |
Dispatcher for managing failures in the communication. More... | |
fcf::common::Dispatcher | m_normal |
Dispatcher for managing recovery of communication failures. More... | |
short | m_state |
Actual controller state. More... | |
short | m_substate |
Actual controller substate. More... | |
bool | m_config_loaded |
Flag indicating whether the configuration was succesfully loaded. More... | |
bool | m_connected |
Flag indicating whether the LCS is connected. More... | |
Additional Inherited Members | |
![]() | |
void | LoadConfig () |
Load the YAML configuration. More... | |
void | GetStates (short &state, short &substate) |
Get states (state and substate) of the controller. More... | |
void | LoadConfig () |
Load the YAML configuration. More... | |
void | GetStates (short &state, short &substate) |
Get states (state and substate) of the controller. More... | |
void | LoadConfig () |
Load the YAML configuration. More... | |
void | GetStates (short &state, short &substate) |
Get states (state and substate) of the controller. More... | |
Shutter Local Control System (LCS) Interface (IF) class.
This class manages the shutter connection to the LCS encapsulating all basic communication with the controller or the simulator.
Each RPC call is synchronous but it only starts the action in the controller. The controller will return succesfully if the action can be started, not that the action was completed.
The completion of the action must be monitored by reading the status of the controller but this is out of the scope of this class.
devmgr::shutter::ShutterLcsIf::ShutterLcsIf | ( | std::shared_ptr< devmgr::common::IDeviceConfig > | config, |
devmgr::common::DataContext & | data_ctx | ||
) |
ShutterLcsIf constructor.
[in,out] | config | Shared pointer to the device configuration. |
[in,out] | data_ctx | Reference to the data context object. |
devmgr::shutter::ShutterLcsIf::ShutterLcsIf | ( | std::shared_ptr< devmgr::common::IDeviceConfig > | config, |
devmgr::common::DataContext & | data_ctx | ||
) |
ShutterLcsIf constructor.
[in,out] | config | Shared pointer to the device configuration. |
[in,out] | data_ctx | Reference to the data context object. |
devmgr::shutter::ShutterLcsIf::ShutterLcsIf | ( | std::shared_ptr< devmgr::common::IDeviceConfig > | config, |
devmgr::common::DataContext & | data_ctx | ||
) |
ShutterLcsIf constructor.
[in,out] | config | Shared pointer to the device configuration. |
[in,out] | data_ctx | Reference to the data context object. |
void devmgr::shutter::ShutterLcsIf::Close | ( | ) |
Executes the Close RPC.
an | exception if an error ocurrs. |
This RPC call shall bring the controller to Operational/Close state.
void devmgr::shutter::ShutterLcsIf::Close | ( | ) |
Executes the Close RPC.
an | exception if an error ocurrs. |
This RPC call shall bring the controller to Operational/Close state.
void devmgr::shutter::ShutterLcsIf::Close | ( | ) |
Executes the Close RPC.
an | exception if an error ocurrs. |
This RPC call shall bring the controller to Operational/Close state.
|
virtual |
Get error message.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Get error message.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Get error message.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
error_code | Error code |
Implements devmgr::common::DeviceLcsIf.
|
virtual |
error_code | Error code |
Implements devmgr::common::DeviceLcsIf.
|
virtual |
error_code | Error code |
Implements devmgr::common::DeviceLcsIf.
bool devmgr::shutter::ShutterLcsIf::IsClose | ( | ) |
Check if shutter is close.
bool devmgr::shutter::ShutterLcsIf::IsClose | ( | ) |
Check if shutter is close.
bool devmgr::shutter::ShutterLcsIf::IsClose | ( | ) |
Check if shutter is close.
bool devmgr::shutter::ShutterLcsIf::IsClosing | ( | ) |
Check if controller is closing the shutter.
bool devmgr::shutter::ShutterLcsIf::IsClosing | ( | ) |
Check if controller is closing the shutter.
bool devmgr::shutter::ShutterLcsIf::IsClosing | ( | ) |
Check if controller is closing the shutter.
|
virtual |
Check if shutter is hardware error.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if shutter is hardware error.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if shutter is hardware error.
Implements devmgr::common::DeviceLcsIf.
bool devmgr::shutter::ShutterLcsIf::IsOpen | ( | ) |
Check if shutter is open.
bool devmgr::shutter::ShutterLcsIf::IsOpen | ( | ) |
Check if shutter is open.
bool devmgr::shutter::ShutterLcsIf::IsOpen | ( | ) |
Check if shutter is open.
bool devmgr::shutter::ShutterLcsIf::IsOpening | ( | ) |
Check if controller is opening the shutter.
bool devmgr::shutter::ShutterLcsIf::IsOpening | ( | ) |
Check if controller is opening the shutter.
bool devmgr::shutter::ShutterLcsIf::IsOpening | ( | ) |
Check if controller is opening the shutter.
|
virtual |
Check if controller is in Operational.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if controller is in Operational.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if controller is in Operational.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if controller is in Standby/Ready state.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if controller is in Standby/Ready state.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Check if controller is in Standby/Ready state.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Callback to manage changes on the monitored items.
[in] | params | Vector containing the list of atributes that have changed |
This method implement the actions associated to the events originated from the monitoring of attributes.
This method is storing in the database the values that have changed. It also publish the events for the clients via zeroMQ.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Callback to manage changes on the monitored items.
[in] | params | Vector containing the list of atributes that have changed |
This method implement the actions associated to the events originated from the monitoring of attributes.
This method is storing in the database the values that have changed. It also publish the events for the clients via zeroMQ.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Callback to manage changes on the monitored items.
[in] | params | Vector containing the list of atributes that have changed |
This method implement the actions associated to the events originated from the monitoring of attributes.
This method is storing in the database the values that have changed. It also publish the events for the clients via zeroMQ.
Implements devmgr::common::DeviceLcsIf.
void devmgr::shutter::ShutterLcsIf::Open | ( | ) |
Executes the Open RPC.
an | exception if an error ocurrs. |
This RPC call shall bring the controller to Operational/Open state.
void devmgr::shutter::ShutterLcsIf::Open | ( | ) |
Executes the Open RPC.
an | exception if an error ocurrs. |
This RPC call shall bring the controller to Operational/Open state.
void devmgr::shutter::ShutterLcsIf::Open | ( | ) |
Executes the Open RPC.
an | exception if an error ocurrs. |
This RPC call shall bring the controller to Operational/Open state.
|
virtual |
Read the configuration.
an | exception if an error ocurrs. |
This class reads the mapping configuration of the device.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Read the configuration.
an | exception if an error ocurrs. |
This class reads the mapping configuration of the device.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Read the configuration.
an | exception if an error ocurrs. |
This class reads the mapping configuration of the device.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Read status from the controller.
status | structure containing the status of the controller. |
|
virtual |
Read status from the controller.
status | structure containing the status of the controller. |
|
virtual |
Read status from the controller.
status | structure containing the status of the controller. |
|
virtual |
Start monitoring of controller attributes.
This methods take cares of registering the attributes that will be monitored by the communication class. Most of the communication will be OPCUA and this monitoring means OPCUA subscription.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Start monitoring of controller attributes.
This methods take cares of registering the attributes that will be monitored by the communication class. Most of the communication will be OPCUA and this monitoring means OPCUA subscription.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Start monitoring of controller attributes.
This methods take cares of registering the attributes that will be monitored by the communication class. Most of the communication will be OPCUA and this monitoring means OPCUA subscription.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Stop monitoring of controller attributes.
an | exception if an error ocurrs. |
This method will inform the communication interface to stop monitoring the shutter attributes. All OPCUA subscriptions will be removed.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Stop monitoring of controller attributes.
an | exception if an error ocurrs. |
This method will inform the communication interface to stop monitoring the shutter attributes. All OPCUA subscriptions will be removed.
Implements devmgr::common::DeviceLcsIf.
|
virtual |
Stop monitoring of controller attributes.
an | exception if an error ocurrs. |
This method will inform the communication interface to stop monitoring the shutter attributes. All OPCUA subscriptions will be removed.
Implements devmgr::common::DeviceLcsIf.
|
protected |
|
protected |
< this map is used to convert the NodeId received by the OPCUA notifications to an index value and thus avoid comparing strings for each notification. This vector is used to prepare in advance the list of nodeIds that will be monitored per device.