例如,以下声明生成在公共操作 open() 的 Valve 对象的规范文件中:
/*## operation open() */
void Valve_open(Valve* const me);
以下定义生成在公共操作 open() 的 Valve 对象的实施文件中:
void Valve_open(Valve* const me) {
NOTIFY_OPERATION(me, &me, NULL, Valve, Valve_open, Valve_open(),
0, Default_Valve_open_SERIALIZE);
/*#[ operation open() */
/*#]*/
}
NOTIFY_OPERATION 宏用于动画。它通知动画程序已调用新的操作。NOTIFY_OPERATION 宏仅在启用动画时插入到代码中。
要控制为公共操作生成名称的方式,请使用 C_CG::Operation::PublicName 属性。该属性的缺省值 $objectName_$opName 会在操作的名称中加上对象的名称作为前缀。例如,在供暖系统中打开阀门的公共操作命名为 Valve_open()。
请在 $objectName 之后使用 :I 开关(例如,$objectName:I 或 $objectName:i)以展开 $objectName 成为对象名称中仅有的大写字母(和数字)。