public InteractionVectorContainer(InteractionVectorContainer interactionVectorContainer) { foreach (var interactionVector in interactionVectorContainer.InteractionVectorList) { InteractionVectorList.Add(new VectorSitePart(interactionVector)); } }
public InteractionVectorContainerOrientations(InteractionVectorContainer interactionVectorContainer) { InteractionVectorContainerUnchanged = new PaddedInteractionVectorContainers(new InteractionVectorContainer(interactionVectorContainer)); AdaptedInteractionVectorContainersList.Add("InteractionVectorContainerUnchanged", InteractionVectorContainerUnchanged); InteractionVectorContainerReversedChainA = new PaddedInteractionVectorContainers(VectorController.AdaptVectorsReverseBitOrder(interactionVectorContainer, StaticValues.ChainA)); AdaptedInteractionVectorContainersList.Add("InteractionVectorContainerReversedChainA", InteractionVectorContainerReversedChainA); InteractionVectorContainerReversedChainB = new PaddedInteractionVectorContainers(VectorController.AdaptVectorsReverseBitOrder(interactionVectorContainer, StaticValues.ChainB)); AdaptedInteractionVectorContainersList.Add("InteractionVectorContainerReversedChainB", InteractionVectorContainerReversedChainB); InteractionVectorContainerReversedChainAAndB = new PaddedInteractionVectorContainers(VectorController.AdaptVectorsReverseBitOrder(interactionVectorContainer)); AdaptedInteractionVectorContainersList.Add("InteractionVectorContainerReversedChainAAndB", InteractionVectorContainerReversedChainAAndB); }
public bool[] ConvertInteractionVectorContainerToBoolArray(InteractionVectorContainer interactionVectorContainer, FullSiteId fullSiteId) { var mergedBools = new bool[interactionVectorContainer.InteractionVectorList.Where(a => a.FullSiteId == fullSiteId).Select(a => a.InteractionFlagBools.Length).Sum()]; var offset = 0; foreach (var interactionVector in interactionVectorContainer.InteractionVectorList.Where(a => a.FullSiteId == fullSiteId)) { Array.Copy(interactionVector.InteractionFlagBools, 0, mergedBools, offset, interactionVector.InteractionFlagBools.Length); offset += interactionVector.InteractionFlagBools.Length; } return(mergedBools); }