public static PatchHierarchyInfo FromXmlFile(PatchHierarchyXML ph) { var patchHierarchyInfo = new PatchHierarchyInfo(); patchHierarchyInfo.AvgGeometrySizes = ph.AverageGeometrySizes; patchHierarchyInfo.AcquisitionDate = ph.AcquisitionDate; patchHierarchyInfo.TagList = ph.TagList; patchHierarchyInfo.RootPatch = ph.RootPatchName; patchHierarchyInfo.AvgPixelSizes = (new ImagePyramidXML(ph.OpcPaths)).AveragePixelSizes; patchHierarchyInfo.PatchTree = ph.PatchTree; return(patchHierarchyInfo); }
/// <summary> /// Loads PatchHierarchyInfo from cache file or xml, if cache doesn't exist. /// </summary> public static PatchHierarchyInfo BuildOrLoadCache(OpcPaths paths) { PatchHierarchyInfo patchHierarchyInfo = null; if (StorageConfig.FileExists(paths.CachedPatchHierarchyPath)) { patchHierarchyInfo = FromCacheFile(paths.CachedPatchHierarchyPath); } if (patchHierarchyInfo == null) { Report.BeginTimed("PatchHierarchyInfo: Loading XML for " + paths.ShortName); patchHierarchyInfo = FromXmlFile(paths); Report.End(); } if (patchHierarchyInfo == null) { Report.Error("PatchHierarchyInfo: Loading cache and XML failed for OPC " + paths.ShortName); return(null); } return(patchHierarchyInfo); }