| | |
| | | #include "HsmsPassive.h" |
| | | #include "CMaster.h" |
| | | #include "CGlassPool.h" |
| | | #include "ProcessJob.h" |
| | | #include <cstdint> |
| | | #include <map> |
| | | #include <string> |
| | | |
| | | enum class ControlState : uint8_t { |
| | | OfflineEquipment = 0, |
| | |
| | | int init(); |
| | | int term(); |
| | | |
| | | ControlState getControlState() const noexcept { return m_currentControlState; } |
| | | void setControlState(ControlState newState); |
| | | bool raiseSoftAlarm(int alarmId, |
| | | const std::string& desc = "", |
| | | int level = -1, |
| | | int deviceId = 0, |
| | | int unitId = 0, |
| | | const char* deviceName = "Software", |
| | | const char* unitName = "App"); |
| | | void clearSoftAlarm(int alarmId, int deviceId = 0, int unitId = 0); |
| | | |
| | | private: |
| | | void refreshDerivedSVs(); |
| | | void setControlState(ControlState newState); |
| | | void notifyControlJobChanged(); |
| | | void emitPjStateEvents(); |
| | | |
| | | public: |
| | | int notify(int code); |
| | |
| | | |
| | | private: |
| | | ControlState m_currentControlState{ ControlState::OfflineEquipment }; |
| | | std::map<std::string, SERVO::PJState> m_prevPjStates; |
| | | }; |