类 EsiManager
java.lang.Object
com.darra.ethercat.utils.EsiManager
ESI 管理器 (静态门面)
对齐 C# EsiManager / DLL EcEsi_* 系列接口:
loadPath(String)加载目录所有 .xml/.ESI 文件 (对齐 EcEsi_LoadDirectory)addFile(String)加载单个 ESI 文件 (对齐 EcEsi_LoadFile)matchRevision(long, long, int)版本号匹配bindToSlave(EtherCATMaster, int, String)绑定 ESI 到从站 (对齐 EcEsi_BindToSlave)applyAllSlaves(EtherCATMaster)自动批量绑定 (对齐 EcEsi_ApplyAllSlaves)getLoadedCount()已加载数量 (对齐 EcEsi_GetLoadedCount)getFiles()已加载文件名 → DeviceDescription 列表
-
方法概要
修饰符和类型方法说明static int加载单个 ESI 文件 (managed 端 + DLL 端双缓存)static intapplyAllSlaves(EtherCATMaster master) 自动给主站下所有从站匹配 ESI 并绑定 (对齐 DLL EcEsi_ApplyAllSlaves)static intbindToSlave(EtherCATMaster master, int slaveIndex, String filePath) 给单个从站绑定 ESI 文件 (对齐 DLL EcEsi_BindToSlave)static voidclear()清空 managed + DLL 缓存static String默认 ESI 目录: <进程当前目录>/ESIstatic Map<String, List<ESI.DeviceDescription>> getFiles()获取已加载的所有 ESI 文件 (managed 缓存视图)static int已加载文件数 (优先采用 DLL 端报告值, 不可用时回退 managed 缓存)static int加载指定目录下所有 .xml / .ESI 文件static booleanmatchRevision(long actual, long expected, int strategy) ESI 版本号匹配 (对齐 C# ESI.MatchRevision)
-
方法详细资料
-
defaultPath
默认 ESI 目录: <进程当前目录>/ESI- 返回:
- 默认路径
-
addFile
加载单个 ESI 文件 (managed 端 + DLL 端双缓存)- 参数:
filePath- ESI XML 路径- 返回:
- 该文件包含的 Device 数 (managed 端解析结果)
-
loadPath
加载指定目录下所有 .xml / .ESI 文件- 参数:
dirPath- 目录路径- 返回:
- 累计加载的 Device 数
-
matchRevision
public static boolean matchRevision(long actual, long expected, int strategy) ESI 版本号匹配 (对齐 C# ESI.MatchRevision)- 参数:
actual- 实际版本expected- 期望版本 (ESI RevisionNo)strategy- 策略: 0=Eq, 1=EqOrG, 2=LwEq, 3=HwEq, 4=LwEqOrG, 5=HwEqOrG, -1=None
-
bindToSlave
给单个从站绑定 ESI 文件 (对齐 DLL EcEsi_BindToSlave)- 参数:
master- 主站实例slaveIndex- 从站索引 (1-based)filePath- ESI 文件路径- 返回:
- >0 = 绑定成功的 Device 数, 0 = 失败
-
applyAllSlaves
自动给主站下所有从站匹配 ESI 并绑定 (对齐 DLL EcEsi_ApplyAllSlaves)- 参数:
master- 主站实例- 返回:
- 成功匹配的从站数
-
getLoadedCount
public static int getLoadedCount()已加载文件数 (优先采用 DLL 端报告值, 不可用时回退 managed 缓存) -
getFiles
获取已加载的所有 ESI 文件 (managed 缓存视图) -
clear
public static void clear()清空 managed + DLL 缓存
-