ID : 6831
Cao对象
Cao对象是管理插件生成与撤销所需的对象。
Cao对象属于ORiN2的CaoWorkspace对象。
“Cao”与“gCao”

在PacScript语言中,与Cao对象相同的型号(CaoWorkspace)有“Cao”和“gCao”2个。
上图表示PacScript语言中的“Cao”与“gCao”的关系。
“Cao”是只在任务(程序)内局部存在的一个内置对象,而“gCao”作为一个全局对象,存在于任务外。
不同任务的“Cao”彼此不相干,而“gCao”即使任务不同,参照相同对象(gCao[n]的n相同时)时也会彼此影响。
对象的生成与撤销
Cao对象以PacScript的任务为单位被独立管理。在任务即将开始执行前生成,在任务结束后自动撤销。
在任务执行中被Cao对象生成的插件在任务结束的同时被自动舍弃。
被Cao对象管理的插件在任务停止时执行“插件取消请求(ProviderCancel)”,取消执行中的处理。另外,在任务开始时执行“插件清空请求(ProviderClear)”,擦除取消插件。
相关指令
| 指令名称 | 功能 |
|---|---|
| Cao.AddController | 生成插件。 |
| Cao.Index | 参照插件的编号。 |
| Cao.Name | 参照插件名称。 |
| Cao.Controllers | 参照管理下的控制器对象(Collection)。 |
应用示例
'Pro1.pcs
Sub Main
PrintDbg "Cao.Name = " & Cao.Name
PrintDbg "Cao.Index = " & Cao.Index
' 连接到外部IP=192.168.0.1的控制器
Call Cao.AddController("RC1", "CaoProv.DENSO.RC8", "", "Conn=eth:192.168.0.1")
' 连接到外部IP=192.168.0.2的控制器
Call Cao.AddController("RC2", "CaoProv.DENSO.RC8", "", "Conn=eth:192.168.0.2")
' 显示添加到Cao.Controllers中的对象数
PrintDbg "Cao.Controllers.Count = " & Cao.Controllers.Count()
'清空"RC1"(=外部IP=192.168.0.1的控制器)的错误
Call Cao.Controllers("RC1").Execute("ClearError" )
'清空"RC2"(=外部IP=192.168.0.2的控制器)的错误
Call Cao.Controllers("RC2").Execute("ClearError" )
End Sub
ID : 6831

