public string[] BrowseAccessPaths(string itemId) { IEnumString obj = null; _server.BrowseAccessPaths(itemId, out obj); var enumString = new EnumString(obj, 100); return Enumerable.Repeat(enumString, int.MaxValue).Select(_ => _.Next()).TakeWhile(_ => _ != null).ToArray(); }
public string[] BrowseItemIds(OpcBrowseType browseType, string filterCriteria, short dataTypeFilter, int accessRightsFilter) { IEnumString ppIEnumString = null; _server.BrowseOPCItemIDs((OPCBROWSETYPE)browseType, filterCriteria, dataTypeFilter, accessRightsFilter, out ppIEnumString); var enumString = new EnumString(ppIEnumString, 100); return Enumerable.Repeat(enumString, int.MaxValue).Select(_ => _.Next()).TakeWhile(_ => _ != null).ToArray(); }