using System; using System.Collections.Generic; using ANXStatusComparer.Data; // This file is part of the ANX.Framework created by the // "ANX.Framework developer group" and released under the Ms-PL license. // For details see: http://anxframework.codeplex.com/license namespace ANXStatusComparer { /// /// The result of the comparison. /// public class ResultData { #region WrongObjectPair (helper class) /// /// A pair of two base objects and two lists of wrong methods. /// public class WrongObjectPair { public BaseObject XnaObject; public List XnaElements = new List(); public BaseObject AnxObject; public List AnxElements = new List(); public List MissingParents = new List(); public List WrongAccesses = new List(); } #endregion #region Public #region Namespace Results /// /// List of missing namespaces in ANX. /// public List MissingNamespaces { get; private set; } /// /// List of implemented namespaces in ANX. /// public List ImplementedNamespaces { get; private set; } #endregion #region Class Results /// /// List of missing classes. /// public List MissingClasses { get; private set; } /// /// List of wrong class implementations. /// public List WrongClasses { get; private set; } /// /// List of implemented classes. /// public List ImplementedClasses { get; private set; } public int NumberOfFinishedClasses { get { int result = 0; foreach (BaseObject obj in ImplementedClasses) { if (obj.HasPercentageAttribute && obj.PercentageComplete == 100) { result++; } } return result; } } #endregion #region Interface Results /// /// List of missing interfaces. /// public List MissingInterfaces { get; private set; } /// /// List of wrong interface implementations. /// public List WrongInterfaces { get; private set; } /// /// List of implemented interfaces. /// public List ImplementedInterfaces { get; private set; } public int NumberOfFinishedInterfaces { get { int result = 0; foreach (BaseObject obj in ImplementedInterfaces) { if (obj.HasPercentageAttribute && obj.PercentageComplete == 100) { result++; } } return result; } } #endregion #region Struct Results /// /// List of missing structs. /// public List MissingStructs { get; private set; } /// /// List of wrong struct implementations. /// public List WrongStructs { get; private set; } /// /// List of implemented structs. /// public List ImplementedStructs { get; private set; } public int NumberOfFinishedStructs { get { int result = 0; foreach (BaseObject obj in ImplementedStructs) { if (obj.HasPercentageAttribute && obj.PercentageComplete == 100) { result++; } } return result; } } #endregion #region Enum Results /// /// List of missing enumerations. /// public List MissingEnums { get; private set; } /// /// List of implemented enumerations. /// public List ImplementedEnums { get; private set; } /// /// List of wrong enumerations. /// public List> WrongEnums { get; private set; } #endregion #endregion #region Constructor /// /// Create a new result data holder. /// public ResultData() { MissingNamespaces = new List(); ImplementedNamespaces = new List(); MissingEnums = new List(); ImplementedEnums = new List(); WrongEnums = new List>(); MissingStructs = new List(); ImplementedStructs = new List(); WrongStructs = new List(); MissingInterfaces = new List(); ImplementedInterfaces = new List(); WrongInterfaces = new List(); MissingClasses = new List(); ImplementedClasses = new List(); WrongClasses = new List(); } #endregion } }