public IExtendTypes[] GetExtendTypes() { lock (mExtendTypes.SyncRoot) { IExtendTypes[] result = new IExtendTypes[mExtendTypes.Count]; mExtendTypes.Values.CopyTo(result, 0); return(result); } }
public void Remove(string filename) { lock (mExtendTypes.SyncRoot) { IExtendTypes extTypes = mExtendTypes[filename] as IExtendTypes; if (extTypes != null) { extTypes.Dispose(); } mExtendTypes.Remove(filename); } }
public void InitExtendTypes(string path) { if (!path.Equals("") && Directory.Exists(path)) { string[] files = Directory.GetFiles(path, "*.dll"); if (files != null && files.Length > 0) { IExtendTypes extTypes = null; lock (mExtendTypes.SyncRoot) { foreach (string filename in files) { if (!mExtendTypes.ContainsKey(filename)) { extTypes = new CExtendTypes(mSystemContext, filename, true, 0); mExtendTypes.Add(extTypes.FileName, extTypes); } } } } } }