- Started Windows, Metro and Linux Platform-Plugins - Moved the RecordingSample to the Samples folder - Started two samples for using the graphics device in a WinForms and Wpf Editor - Refactorings in the AddIn-System - Moved the Window initialization-code to the Platform modules - Changed the License text in all code files which is now way smaller - Started ProjectConverter tool which converts all the projects and solution to the target configuration - Changed the SupportedPlatform names in the Resource files - Changed the WIN8 define to WINDOWSMETRO which is actually meant - Removed NLog and started our own Logger class - Many more stuff...
252 lines
5.0 KiB
C#
252 lines
5.0 KiB
C#
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
|
|
{
|
|
/// <summary>
|
|
/// The result of the comparison.
|
|
/// </summary>
|
|
public class ResultData
|
|
{
|
|
#region WrongObjectPair (helper class)
|
|
/// <summary>
|
|
/// A pair of two base objects and two lists of wrong methods.
|
|
/// </summary>
|
|
public class WrongObjectPair
|
|
{
|
|
public BaseObject XnaObject;
|
|
public List<BaseObjectElement> XnaElements =
|
|
new List<BaseObjectElement>();
|
|
|
|
public BaseObject AnxObject;
|
|
public List<BaseObjectElement> AnxElements =
|
|
new List<BaseObjectElement>();
|
|
|
|
public List<string> MissingParents = new List<string>();
|
|
public List<string> WrongAccesses = new List<string>();
|
|
}
|
|
#endregion
|
|
|
|
#region Public
|
|
#region Namespace Results
|
|
/// <summary>
|
|
/// List of missing namespaces in ANX.
|
|
/// </summary>
|
|
public List<string> MissingNamespaces
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of implemented namespaces in ANX.
|
|
/// </summary>
|
|
public List<string> ImplementedNamespaces
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
#endregion
|
|
|
|
#region Class Results
|
|
/// <summary>
|
|
/// List of missing classes.
|
|
/// </summary>
|
|
public List<BaseObject> MissingClasses
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of wrong class implementations.
|
|
/// </summary>
|
|
public List<WrongObjectPair> WrongClasses
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of implemented classes.
|
|
/// </summary>
|
|
public List<BaseObject> 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
|
|
/// <summary>
|
|
/// List of missing interfaces.
|
|
/// </summary>
|
|
public List<BaseObject> MissingInterfaces
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of wrong interface implementations.
|
|
/// </summary>
|
|
public List<WrongObjectPair> WrongInterfaces
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of implemented interfaces.
|
|
/// </summary>
|
|
public List<BaseObject> 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
|
|
/// <summary>
|
|
/// List of missing structs.
|
|
/// </summary>
|
|
public List<BaseObject> MissingStructs
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of wrong struct implementations.
|
|
/// </summary>
|
|
public List<WrongObjectPair> WrongStructs
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of implemented structs.
|
|
/// </summary>
|
|
public List<BaseObject> 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
|
|
/// <summary>
|
|
/// List of missing enumerations.
|
|
/// </summary>
|
|
public List<EnumData> MissingEnums
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of implemented enumerations.
|
|
/// </summary>
|
|
public List<EnumData> ImplementedEnums
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
/// <summary>
|
|
/// List of wrong enumerations.
|
|
/// </summary>
|
|
public List<KeyValuePair<EnumData, EnumData>> WrongEnums
|
|
{
|
|
get;
|
|
private set;
|
|
}
|
|
#endregion
|
|
#endregion
|
|
|
|
#region Constructor
|
|
/// <summary>
|
|
/// Create a new result data holder.
|
|
/// </summary>
|
|
public ResultData()
|
|
{
|
|
MissingNamespaces = new List<string>();
|
|
ImplementedNamespaces = new List<string>();
|
|
|
|
MissingEnums = new List<EnumData>();
|
|
ImplementedEnums = new List<EnumData>();
|
|
WrongEnums = new List<KeyValuePair<EnumData, EnumData>>();
|
|
|
|
MissingStructs = new List<BaseObject>();
|
|
ImplementedStructs = new List<BaseObject>();
|
|
WrongStructs = new List<WrongObjectPair>();
|
|
|
|
MissingInterfaces = new List<BaseObject>();
|
|
ImplementedInterfaces = new List<BaseObject>();
|
|
WrongInterfaces = new List<WrongObjectPair>();
|
|
|
|
MissingClasses = new List<BaseObject>();
|
|
ImplementedClasses = new List<BaseObject>();
|
|
WrongClasses = new List<WrongObjectPair>();
|
|
}
|
|
#endregion
|
|
}
|
|
}
|