public InteractionVectorContainer(InteractionVectorContainer interactionVectorContainer)
 {
     foreach (var interactionVector in interactionVectorContainer.InteractionVectorList)
     {
         InteractionVectorList.Add(new VectorSitePart(interactionVector));
     }
 }
Example #2
0
        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);
        }
Example #3
0
        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);
        }