/// <summary> /// /// </summary> /// <param name="interfaceInfo"></param> /// <param name="asymLigandsHash"></param> /// <returns></returns> private Dictionary <string, AtomInfo[]>[] GetInterfaceLigandAtomInfoHashes(ProtInterfaceInfo interfaceInfo, Dictionary <string, string[]> asymLigandsHash, Dictionary <string, AtomInfo[]> entryChainsHash) { Dictionary <string, AtomInfo[]>[] ligandAtomInfoHashes = new Dictionary <string, AtomInfo[]> [2]; string[] ligandChains1 = asymLigandsHash[interfaceInfo.Chain1]; Dictionary <string, AtomInfo[]> ligandAtomInfoHash1 = new Dictionary <string, AtomInfo[]>(); string ligandSymOpString = ""; foreach (string ligandChain in ligandChains1) { ligandSymOpString = ligandChain + "_" + interfaceInfo.SymmetryString1; if (entryChainsHash.ContainsKey(ligandSymOpString)) { ligandAtomInfoHash1.Add(ligandSymOpString, entryChainsHash[ligandSymOpString]); } } ligandAtomInfoHashes[0] = ligandAtomInfoHash1; string[] ligandChains2 = asymLigandsHash[interfaceInfo.Chain2]; Dictionary <string, AtomInfo[]> ligandAtomInfoHash2 = new Dictionary <string, AtomInfo[]>(); foreach (string ligandChain in ligandChains2) { ligandSymOpString = ligandChain + "_" + interfaceInfo.SymmetryString2; if (entryChainsHash.ContainsKey(ligandSymOpString)) { ligandAtomInfoHash2.Add(ligandSymOpString, (AtomInfo[])entryChainsHash[ligandSymOpString]); } } ligandAtomInfoHashes[1] = ligandAtomInfoHash2; return(ligandAtomInfoHashes); }
public ProtInterface(ProtInterfaceInfo interfaceInfo) { this.ASA = interfaceInfo.ASA; this.Chain1 = interfaceInfo.Chain1; this.Chain2 = interfaceInfo.Chain2; this.ExistType = interfaceInfo.ExistType; this.InterfaceId = interfaceInfo.InterfaceId; this.Remark = interfaceInfo.Remark; this.ResiduesInChain1 = interfaceInfo.ResiduesInChain1; this.ResiduesInChain2 = interfaceInfo.ResiduesInChain2; this.SymmetryString1 = interfaceInfo.SymmetryString1; this.SymmetryString2 = interfaceInfo.SymmetryString2; }