/// <summary> /// 做Cancel操作 /// </summary> private void ActionClear() { this.oscParam = 0; this.oscString.Clear(); this.intermediate.Clear(); this.parameters.Clear(); this.unicodeText.Clear(); this.dcsStringHandler = null; }
/// <summary> /// When a final character has been recognised in a device control string, this state will establish a channel to a handler for the appropriate control function, and then pass all subsequent characters through to this alternate handler, until the data string is terminated /// 当在设备控制字符串中识别出最后一个字符时,此状态将建立通向适当控制功能的处理程序的通道,然后将所有后续字符传递给此备用处理程序,直到数据字符串终止 /// </summary> /// <param name="ch">final byte</param> private void ActionDCSDispatch(byte ch) { // 根据最后一个字符判断要使用的DCS的事件处理器 this.dcsStringHandler = this.ActionDCSDispatch(ch, this.parameters); if (this.dcsStringHandler != null) { // 获取到了该DCS事件处理器,那么要进入收集DCS后续字符的状态 this.EnterDCSPassThrough(); } else { // 没获取到该DCS事件处理器(通常情况是没实现该处理器,不支持处理该事件),那么直接进入忽略DCS事件状态 this.EnterDCSIgnore(); } }