#pragma once /*! * @brief 报警生成器 * * @author sjq */ #include "service/alarm_server_api/CAlmApiForApp.h" #include "PredifineForSeqServer.h" class CNodeAction; class CNodeSeq; class CModuleAlarmCreater { public: CModuleAlarmCreater(int domainId, int appId); ~CModuleAlarmCreater(); //顺控人工操作事件 bool seqCtrl(CNodeSeq& seq,const SHmiOpInfo& op); //顺控人工操作事件 人工干预 bool seqCtrl(CNodeAction& action,const SOpResultUi& op); //顺控开始 bool seqStart(CNodeSeq& seq); //顺控结束 bool seqStop(CNodeSeq& seq); //动作执行 bool actionExecute(CNodeAction& action); private: std::string getExecSkipDesc(CNodeSeq& seq); void createHead( CNodeSeq& seq, iot_idl::SAlmInfoFromApp& fromApp, int status); void createSeqKeyWord( CNodeSeq& seq, iot_idl::SAlmInfoFromApp& fromApp ); void createSeqKeyWord( CNodeAction& action, iot_idl::SAlmInfoFromApp& fromApp ); void createHmiOpKeyWord( ESeqCtrl_HmiOpType op, iot_idl::SAlmInfoFromApp& fromApp ); void createUiOpKeyWord( UI_OP_RESULT_TYPE op, iot_idl::SAlmInfoFromApp& fromApp ); void createOpKeyWord( const std::string& op, iot_idl::SAlmInfoFromApp& fromApp ); void createActorKeyWord( const SNodeSeqActor& actor, iot_idl::SAlmInfoFromApp& fromApp ); void createResultKeyWord( const std::string& state, iot_idl::SAlmInfoFromApp& fromApp ); void createActionDescKeyWord( CNodeAction& action, iot_idl::SAlmInfoFromApp& fromApp ); void afterSleep(); private: iot_service::CAlmApiForApp m_objAlmApi; };