コード例 #1
0
 /// <inheritdoc />
 protected override void Set(AdjacencyEnumerator data)
 {
     _destVertexIndex1 = data.GetNext(out _edgeData1);
     _destVertexIndex2 = data.GetNext(out _edgeData2);
     _destVertexIndex3 = data.GetNext(out _edgeData3);
     _destVertexIndex4 = data.GetNext(out _edgeData4);
 }
コード例 #2
0
        /// <inheritdoc />
        public override void Initialize(IEnumerable <AdjacentEdge <TEdgeData> > edgesTo)
        {
            using (var enumerator = edgesTo.GetEnumerator())
            {
                var data = new AdjacencyEnumerator(enumerator);
                Set(data);

                var leftItems = 0;
                while (enumerator.MoveNext())
                {
                    leftItems++;
                }

                ValidateInitializedNumberOfEdges(EdgesCount + leftItems);
            }
        }
コード例 #3
0
 protected abstract void Set(AdjacencyEnumerator data);