#pragma once #include "DiosLock.h" #include "ResDataObject.h" class ConditionEvent : public DiosLock { string m_strName; //事件名称 string m_strType; //事件类型,Conditions/Timeout/External,AND条件全满足则触发,OR条件满足一个即触发,External设置即触发,Timeout到时间出发 ResDataObject m_resCoditions; ResDataObject m_resConditionsValue; string m_strValue; int m_nContionNum; bool m_bTriggered; public: ConditionEvent(ResDataObject *event); virtual ~ConditionEvent(); bool IsTriggered() { return m_bTriggered; } bool Check(const char* pszTypeName, ResDataObject *resContext, const char* pszDevice); bool CaculateCondition(); const char* GetName() { return m_strName.c_str(); } int GetTimeout(); };