对于具有平面状态图实现的“或”状态的局部终止,代码生成方式如下所示:
inline OMBoolean
class_0::OrState_isCompleted() {
return (FinalA_IN() || FinalB_IN());
}
&& IS_COMPLETED(state)
对于具有平面状态图实现的“与”状态的局部终止,代码生成方式如下所示:
&& IS_COMPLETED(AndState)
在本例中,将调用 AndState 框架类的 isCompleted() 函数:
OMBoolean class_0::AndState_isCompleted()
{
if(IS_COMPLETED(Component1) == FALSE)
return FALSE;
if(IS_COMPLETED(Component2) == FALSE)
return FALSE;
return TRUE;
}