Analyzer.ConnectedComponentCalculator.GetSmallestSortableLayoutAndZOrder C# (CSharp) Method

GetSmallestSortableLayoutAndZOrder() protected method

protected GetSmallestSortableLayoutAndZOrder ( LinkedList oStronglyConnectedComponent ) : System.Single
oStronglyConnectedComponent LinkedList
return System.Single
        GetSmallestSortableLayoutAndZOrder
        (
            LinkedList<IVertex> oStronglyConnectedComponent
        )
        {
            Debug.Assert(oStronglyConnectedComponent != null);

            Single fSmallestSortableLayoutAndZOrder = Single.MaxValue;

            foreach (IVertex oVertex in oStronglyConnectedComponent)
            {
                Object oSortableLayoutAndZOrder;

                if (oVertex.TryGetValue(
                    ReservedMetadataKeys.SortableLayoutAndZOrder, typeof(Single),
                    out oSortableLayoutAndZOrder))
                {
                    fSmallestSortableLayoutAndZOrder = Math.Min(
                        fSmallestSortableLayoutAndZOrder,
                        (Single)oSortableLayoutAndZOrder);
                }
            }

            return ((fSmallestSortableLayoutAndZOrder == Single.MaxValue) ?
                0 : fSmallestSortableLayoutAndZOrder);
        }