NDepend Report
Application name: Microsoft.Xna.Framework (Quick Project)
This report has been built on: 09/29/2009 17:21:42
in 00:20
by NDepend v2.12.1.3123 (Pro Edition)
Application Metrics
Assemblies Metrics
Visual NDepend View
Assemblies Abstractness vs. Instability
Assemblies Dependencies
Assemblies Dependencies Diagram
Assemblies build order
NDepend information and warnings
CQL Queries and Constraints
Types Metrics
Application Metrics
Number of IL instructions: 128527
Number of lines of code: 0
Number of lines of comment: 0
Percentage comment: 0
Number of assemblies: 1
Number of classes: 377
Number of types: 765
Number of abstract classes: 10
Number of interfaces: 6
Number of value types: 260
Number of exception classes: 17
Number of attribute classes: 5
Number of delegate classes: 6
Number of enumerations classes: 122
Number of generic type definitions: 12
Number of generic method definitions: 70
Percentage of public types: 46.41%
Percentage of public methods: 72.19%
Percentage of classes with at least one public field: 0.92%
| Stat | # Occurrences | Avg | StdDev | Max |
|
Properties on Interfaces
| 6 Interfaces
| 1.33 | 1.7 | 5 properties on Microsoft.Xna.Framework.IProxyProcessHandler |
|
Methods on Interfaces
| 6 Interfaces
| 4.17 | 2.41 | 9 methods on Microsoft.Xna.Framework.Graphics.IGraphicsDeviceService |
|
Arguments on Methods on Interfaces
| 25 Methods
| 0.56 | 0.5 | 1 arguments on Microsoft.Xna.Framework.Graphics.IGraphicsDeviceService.add_DeviceCreated(EventHandler) |
|
Public Properties on Classes
| 377 Classes
| 1.92 | 5.45 | 67 public properties on Microsoft.Xna.Framework.Graphics.RenderState |
|
Public Methods on Classes
| 377 Classes
| 6.46 | 12.48 | 135 public methods on Microsoft.Xna.Framework.Graphics.RenderState |
|
Arguments on Public Methods on Classes
| 2434 Methods
| 0.93 | 1.4 | 11 arguments on Microsoft.Xna.Framework.Graphics.Texture3D.SetData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32,SetDataOptions) |
|
IL Instructions in non-abstract Methods
| 5428 Methods
| 23.68 | 43.4 | 746 IL instructions in Microsoft.Xna.Framework.Gjk.UpdateDeterminant(Int32) |
|
|
|
Cyclomatic complexity on non abstract Methods
| 5428 Methods
| 2.08 | 2.8 |
CC = 57 for Microsoft.Xna.Framework.Graphics.Texture.GetExpectedByteSizeFromFormat(SurfaceFormat) |
Assemblies Metrics
Visual NDepend View

Assemblies Abstractness vs. Instability

Assemblies Dependencies
Assemblies Dependencies Diagram
Blue : Assemblies of your application.
Yellow : Tiers assemblies referenced by assemblies of your application.

Assemblies build order
Microsoft.Xna.Framework
NDepend information and warnings
09/29/2009 17:21:22 Begin analysis with NDepend v2.12.1.3123
09/29/2009 17:21:22 Retrieve dependencies of your application.
Don't load a previous analysis to compare with.
Assemblies loaded from {C:\Windows\Microsoft.NET\Framework\v2.0.50727}
System.dll v2.0.0.0
mscorlib.dll v2.0.0.0
Microsoft.VisualC.dll v8.0.0.0
Assemblies loaded from {C:\Program Files (x86)\Microsoft XNA\XNA Game Studio\v3.1\References\Windows\x86}
Microsoft.Xna.Framework.dll v3.1.0.0
0 CQL constraint has been extracted from code.
No dependency cycle detected in assemblies referencement graph.
09/29/2009 17:21:30 Analyse dependencies of your application.
09/29/2009 17:21:32 Building the report (standard).
WARNING: Source code info won't be available for the assembly
{Microsoft.Xna.Framework}: Corresponding PDB file not found in any of
the folder specified.
PDB file production can be enabled in Visual Studio 2005\2008 with:
Project -> Properties -> Build -> Advanced... -> Debug Info
= 'full' or 'pdb-only'
WARNING: No application or tier assembly found in directory {C:\Program
Files\Reference Assemblies\Microsoft\Framework\v3.0}
WARNING: No application or tier assembly found in directory {C:\Program
Files\Reference Assemblies\Microsoft\Framework\v3.5}
CQL Queries and Constraints
{Code Quality} Some CQL constraints are not satisfied.
{Code Quality \ Type Metrics} Some CQL constraints are not satisfied.
{Design} Some CQL constraints are not satisfied.
{Design \ Performance} Some CQL constraints are not satisfied.
{Unused Code / Dead Code} Some CQL constraints are not satisfied.
{Encapsulation} Some CQL constraints are not satisfied.
{Encapsulation \ Methods Optimal Encapsulation} Some CQL constraints are not satisfied.
{Encapsulation \ Types Optimal Encapsulation} Some CQL constraints are not satisfied.
{Encapsulation \ Fields Optimal Encapsulation} Some CQL constraints are not satisfied.
{Diff / Changes / Evolution} All CQL queries compile and all CQL contraints are satisfied.
{Test Coverage} All CQL queries compile and all CQL contraints are satisfied.
{Purity / Immutability / Side-Effects} Some CQL constraints are not satisfied.
{Naming Conventions} Some CQL constraints are not satisfied.
{Naming Conventions \ Name too long} Some CQL constraints are not satisfied.
{.NET Framework Usage} Some CQL constraints are not satisfied.
{.NET Framework Usage \ System} Some CQL constraints are not satisfied.
{.NET Framework Usage \ System.Collection} All CQL queries compile and all CQL contraints are satisfied.
{.NET Framework Usage \ System.Runtime.InteropServices} Some CQL constraints are not satisfied.
{.NET Framework Usage \ System.Threading} Some CQL constraints are not satisfied.
{.NET Framework Usage \ System.Xml} All CQL queries compile and all CQL contraints are satisfied.
{Constraints extracted from Source Code} No active CQL query compiled.
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Quick summary of methods to refactor</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS /*OUT OF "YourGeneratedCode" */ WHERE
// Metrics' definitions
( NbLinesOfCode > 30 OR // http://www.ndepend.com/Metrics.aspx#NbLinesOfCode
NbILInstructions > 200 OR // http://www.ndepend.com/Metrics.aspx#NbILInstructions
CyclomaticComplexity > 20 OR // http://www.ndepend.com/Metrics.aspx#CC
ILCyclomaticComplexity > 50 OR // http://www.ndepend.com/Metrics.aspx#ILCC
ILNestingDepth > 4 OR // http://www.ndepend.com/Metrics.aspx#ILNestingDepth
NbParameters > 5 OR // http://www.ndepend.com/Metrics.aspx#NbParameters
NbVariables > 8 OR // http://www.ndepend.com/Metrics.aspx#NbVariables
NbOverloads > 6 ) // http://www.ndepend.com/Metrics.aspx#NbOverloads
AND
// Here are some ways to avoid taking account of generated methods.
!( NameIs "InitializeComponent()" OR
// NDepend.CQL.GeneratedAttribute is defined in the redistributable assembly $NDependInstallDir$\Lib\NDepend.CQL.dll
// You can define your own attribute to mark "Generated".
HasAttribute "OPTIONAL:NDepend.CQL.GeneratedAttribute")
| methods | # lines of code (LOC) | # IL instructions | Cyclomatic Complexity (CC) | IL Cyclomatic Complexity (ILCC) | IL Nesting Depth | # Parameters | # Variables | # Overloads | Full Name |
| WaitForAsyncOperationToFinish(ManagedCallType&,UInt32&) | N/A | 292 | N/A | 20 | 7 | 2 | 23 | 1 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.WaitForAsyncOperationToFinish(ManagedCallType&,UInt32&) |
| RegisterNativeToManagedCallbackImpl(Void*,method,Void*) | N/A | 91 | N/A | 11 | 5 | 3 | 5 | 1 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.RegisterNativeToManagedCallbackImpl(Void*,method,Void*) |
| Finalize() | N/A | 57 | N/A | 3 | 5 | 0 | 3 | 1 | Microsoft.Xna.Framework.XOverlappedAsyncResult.Finalize() |
| GetExceptionFromResult(UInt32) | N/A | 170 | N/A | 47 | 11 | 1 | 1 | 1 | Microsoft.Xna.Framework.Helpers.GetExceptionFromResult(UInt32) |
| Intersects(BoundingBox) | N/A | 50 | N/A | 7 | 2 | 1 | 0 | 9 | Microsoft.Xna.Framework.BoundingBox.Intersects(BoundingBox) |
| Intersects(BoundingBox&,Boolean&) | N/A | 52 | N/A | 7 | 2 | 2 | 0 | 9 | Microsoft.Xna.Framework.BoundingBox.Intersects(BoundingBox&,Boolean&) |
| Intersects(BoundingFrustum) | N/A | 13 | N/A | 2 | 1 | 1 | 0 | 9 | Microsoft.Xna.Framework.BoundingBox.Intersects(BoundingFrustum) |
| Intersects(Plane) | N/A | 144 | N/A | 15 | 1 | 1 | 3 | 9 | Microsoft.Xna.Framework.BoundingBox.Intersects(Plane) |
| Intersects(Plane&,PlaneIntersectionType&) | N/A | 150 | N/A | 15 | 1 | 2 | 3 | 9 | Microsoft.Xna.Framework.BoundingBox.Intersects(Plane&,PlaneIntersectionType&) |
| Intersects(Ray) | N/A | 229 | N/A | 13 | 3 | 1 | 20 | 9 | Microsoft.Xna.Framework.BoundingBox.Intersects(Ray) |
| Sum: | 0 | 1248 | 0 | 140 | 38 | 14 | 58 | 58 | |
| Average: | 0 | 124.8 | 0 | 14 | 3.8 | 1.4 | 5.8 | 5.8 | |
| Minimum: | 0 | 13 | 0 | 2 | 1 | 0 | 0 | 1 | |
| Maximum: | 0 | 292 | 0 | 47 | 11 | 3 | 23 | 9 | |
| Standard deviation: | 0 | 84.258 | 0 | 12.247 | 3.0919 | 0.8 | 8.0349 | 3.9192 | |
| Variance: | 0 | 7099.4 | 0 | 150 | 9.56 | 0.64 | 64.56 | 15.36 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Methods too big (NbILInstructions)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbILInstructions > 200 ORDER BY NbILInstructions DESC
// METHODS WHERE NbILInstructions > 200 are extremely complex and
// should be split in smaller methods
// (except if they are automatically generated by a tool).
// See the definition of the NbILInstructions metric here http://www.ndepend.com/Metrics.aspx#NbILInstructions
| methods | # IL instructions | Full Name |
| UpdateDeterminant(Int32) | 746 | Microsoft.Xna.Framework.Gjk.UpdateDeterminant(Int32) |
| ReplayDrawingCommands(IntPtr,Int32) | 728 | Microsoft.Xna.Framework.GamerServices.GuideRenderer.ReplayDrawingCommands(IntPtr,Int32) |
| CopyData<T>(Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) | 529 | Microsoft.Xna.Framework.Graphics.Texture2D.CopyData<T>(Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) |
| CopyData<T>(CubeMapFace,Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) | 519 | Microsoft.Xna.Framework.Graphics.TextureCube.CopyData<T>(CubeMapFace,Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) |
| Decompose(Vector3&,Quaternion&,Vector3&) | 474 | Microsoft.Xna.Framework.Matrix.Decompose(Vector3&,Quaternion&,Vector3&) |
| Invert(Matrix) | 468 | Microsoft.Xna.Framework.Matrix.Invert(Matrix) |
| Invert(Matrix&,Matrix&) | 467 | Microsoft.Xna.Framework.Matrix.Invert(Matrix&,Matrix&) |
| SetMatrix(Matrix&) | 438 | Microsoft.Xna.Framework.BoundingFrustum.SetMatrix(Matrix&) |
| Multiply(Matrix&,Matrix&,Matrix&) | 433 | Microsoft.Xna.Framework.Matrix.Multiply(Matrix&,Matrix&,Matrix&) |
| CreateRenderTarget(GraphicsDevice,Int32,Int32,Int32,SurfaceFormat,MultiSampleType,Int32,RenderTargetUsage,Boolean,_D3DSURFACE_DESC*) | 408 | Microsoft.Xna.Framework.Graphics.RenderTarget.CreateRenderTarget(GraphicsDevice,Int32,Int32,Int32,SurfaceFormat,MultiSampleType,Int32,RenderTargetUsage,Boolean,_D3DSURFACE_DESC*) |
| Sum: | 5210 | |
| Average: | 521 | |
| Minimum: | 408 | |
| Maximum: | 746 | |
| Standard deviation: | 113.52 | |
| Variance: | 12887.8 | |
WARNING: The following CQL constraint is not satisfied. 2 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Methods too complex (ILCyclomaticComplexity)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE ILCyclomaticComplexity > 40 ORDER BY ILCyclomaticComplexity DESC
// METHODS WHERE ILCyclomaticComplexity > 20 are hard to understand and maintain.
// METHODS WHERE ILCyclomaticComplexity > 40 are extremely complex and should be split
// in smaller methods (except if they are automatically generated by a tool).
// See the definition of the ILCyclomaticComplexity metric here http://www.ndepend.com/Metrics.aspx#ILCC
| methods | IL Cyclomatic Complexity (ILCC) | Full Name |
| GetExpectedByteSizeFromFormat(SurfaceFormat) | 57 | Microsoft.Xna.Framework.Graphics.Texture.GetExpectedByteSizeFromFormat(SurfaceFormat) |
| GetExceptionFromResult(UInt32) | 47 | Microsoft.Xna.Framework.Helpers.GetExceptionFromResult(UInt32) |
| Sum: | 104 | |
| Average: | 52 | |
| Minimum: | 47 | |
| Maximum: | 57 | |
| Standard deviation: | 5 | |
| Variance: | 25 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Methods too complex (ILNestingDepth)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE ILNestingDepth > 4 ORDER BY ILNestingDepth DESC
// METHODS WHERE ILNestingDepth > 4 are hard to understand and maintain.
// METHODS WHERE ILNestingDepth > 8 is higher than 8 are extremely complex and should be split in smaller methods
// (except if they are automatically generated by a tool).
// See the definition of the NbILInstructions metric here http://www.NDepend.com/Metrics.aspx#ILNestingDepth
| methods | IL Nesting Depth | Full Name |
| Equals(Matrix) | 15 | Microsoft.Xna.Framework.Matrix.Equals(Matrix) |
| op_Equality(Matrix,Matrix) | 15 | Microsoft.Xna.Framework.Matrix.op_Equality(Matrix,Matrix) |
| op_Inequality(Matrix,Matrix) | 15 | Microsoft.Xna.Framework.Matrix.op_Inequality(Matrix,Matrix) |
| CopyData<T>(Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) | 12 | Microsoft.Xna.Framework.Graphics.Texture2D.CopyData<T>(Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) |
| SetValue(Boolean[]) | 12 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Boolean[]) |
| CopyData<T>(CubeMapFace,Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) | 12 | Microsoft.Xna.Framework.Graphics.TextureCube.CopyData<T>(CubeMapFace,Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) |
| CopyData<T>(Int32,T[],Int32,Int32,Int32,UInt32,Boolean) | 11 | Microsoft.Xna.Framework.Graphics.VertexBuffer.CopyData<T>(Int32,T[],Int32,Int32,Int32,UInt32,Boolean) |
| Apply3D(UInt32,UInt32,IntPtr,Int32,Void*,Void*,IntPtr&) | 11 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+Engine.Apply3D(UInt32,UInt32,IntPtr,Int32,Void*,Void*,IntPtr&) |
| ResolveBackBuffer(ResolveTexture2D,Int32) | 11 | Microsoft.Xna.Framework.Graphics.GraphicsDevice.ResolveBackBuffer(ResolveTexture2D,Int32) |
| SetValue(Int32[]) | 11 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Int32[]) |
| Sum: | 125 | |
| Average: | 12.5 | |
| Minimum: | 11 | |
| Maximum: | 15 | |
| Standard deviation: | 1.6882 | |
| Variance: | 2.85 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Methods with too many parameters (NbParameters)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbParameters > 5 ORDER BY NbParameters DESC
// METHODS WHERE NbParameters > 5 might be painful to call and might degrade performance.
// You should prefer using additional properties/fields to the declaring type to handle
// numerous states. Another alternative is to provide a class or structure dedicated to
// handle arguments passing (for example see the class System.Diagnostics.ProcessStartInfo
// and the method System.Diagnostics.Process.Start(ProcessStartInfo))
// See the definition of the NbParameters metric here http://www.ndepend.com/Metrics.aspx#NbParameters
| methods | # Parameters | Full Name |
| .ctor(Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single) | 16 | Microsoft.Xna.Framework.Matrix..ctor(Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single,Single) |
| CopyData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32,UInt32,Boolean) | 12 | Microsoft.Xna.Framework.Graphics.Texture3D.CopyData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32,UInt32,Boolean) |
| CopyData<T>(Void*,Int32,Int32,T[],Int32,Int32,_D3DVOLUME_DESC*,UInt32,UInt32,UInt32,Boolean) | 11 | Microsoft.Xna.Framework.Graphics.Texture3D.CopyData<T>(Void*,Int32,Int32,T[],Int32,Int32,_D3DVOLUME_DESC*,UInt32,UInt32,UInt32,Boolean) |
| SetData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32,SetDataOptions) | 11 | Microsoft.Xna.Framework.Graphics.Texture3D.SetData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32,SetDataOptions) |
| CreateRenderTarget(GraphicsDevice,Int32,Int32,Int32,SurfaceFormat,MultiSampleType,Int32,RenderTargetUsage,Boolean,_D3DSURFACE_DESC*) | 10 | Microsoft.Xna.Framework.Graphics.RenderTarget.CreateRenderTarget(GraphicsDevice,Int32,Int32,Int32,SurfaceFormat,MultiSampleType,Int32,RenderTargetUsage,Boolean,_D3DSURFACE_DESC*) |
| GetData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32) | 10 | Microsoft.Xna.Framework.Graphics.Texture3D.GetData<T>(Int32,Int32,Int32,Int32,Int32,Int32,Int32,T[],Int32,Int32) |
| .ctor(Int32,Int32,Int32,Int32,SurfaceFormat,TextureUsage,Color,FilterOptions,FilterOptions) | 9 | Microsoft.Xna.Framework.Graphics.TextureCreationParameters..ctor(Int32,Int32,Int32,Int32,SurfaceFormat,TextureUsage,Color,FilterOptions,FilterOptions) |
| DrawString(SpriteFont,StringBuilder,Vector2,Color,Single,Vector2,Vector2,SpriteEffects,Single) | 9 | Microsoft.Xna.Framework.Graphics.SpriteBatch.DrawString(SpriteFont,StringBuilder,Vector2,Color,Single,Vector2,Vector2,SpriteEffects,Single) |
| .ctor(Int32,Int32,Int32,Int32,Int32,VertexBuffer,IndexBuffer,VertexDeclaration,Object) | 9 | Microsoft.Xna.Framework.Graphics.ModelMeshPart..ctor(Int32,Int32,Int32,Int32,Int32,VertexBuffer,IndexBuffer,VertexDeclaration,Object) |
| .ctor(GraphicsDevice,Int32,Int32,Int32,SurfaceFormat,MultiSampleType,Int32,RenderTargetUsage,Boolean) | 9 | Microsoft.Xna.Framework.Graphics.RenderTarget..ctor(GraphicsDevice,Int32,Int32,Int32,SurfaceFormat,MultiSampleType,Int32,RenderTargetUsage,Boolean) |
| Sum: | 106 | |
| Average: | 10.6 | |
| Minimum: | 9 | |
| Maximum: | 16 | |
| Standard deviation: | 2.0591 | |
| Variance: | 4.24 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Methods with too many local variables (NbVariables)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbVariables > 15 ORDER BY NbVariables DESC
// METHODS WHERE NbVariables > 8 are hard to understand and maintain.
// METHODS WHERE NbVariables > 15 are extremely complex and should be split in
// smaller methods (except if they are automatically generated by a tool).
// See the definition of the Nbvariables metric here http://www.ndepend.com/Metrics.aspx#Nbvariables
| methods | # Variables | Full Name |
| ReplayDrawingCommands(IntPtr,Int32) | 68 | Microsoft.Xna.Framework.GamerServices.GuideRenderer.ReplayDrawingCommands(IntPtr,Int32) |
| Invert(Matrix) | 40 | Microsoft.Xna.Framework.Matrix.Invert(Matrix) |
| Invert(Matrix&,Matrix&) | 39 | Microsoft.Xna.Framework.Matrix.Invert(Matrix&,Matrix&) |
| Transform(Matrix&,Quaternion&,Matrix&) | 37 | Microsoft.Xna.Framework.Matrix.Transform(Matrix&,Quaternion&,Matrix&) |
| SetValue(Boolean[]) | 34 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Boolean[]) |
| CopyData<T>(Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) | 30 | Microsoft.Xna.Framework.Graphics.Texture2D.CopyData<T>(Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) |
| CopyData<T>(CubeMapFace,Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) | 29 | Microsoft.Xna.Framework.Graphics.TextureCube.CopyData<T>(CubeMapFace,Int32,Nullable<Rectangle>,T[],Int32,Int32,UInt32,Boolean) |
| SetValue(Int32[]) | 28 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Int32[]) |
| MediaItem_Release(UInt32) | 28 | Microsoft.Xna.Framework.Media.WmpInterface.MediaItem_Release(UInt32) |
| SetValue(Single[]) | 26 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Single[]) |
| Sum: | 359 | |
| Average: | 35.9 | |
| Minimum: | 26 | |
| Maximum: | 68 | |
| Standard deviation: | 11.691 | |
| Variance: | 136.69 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Code Quality}
// <Name>Methods with too many overloads (NbOverloads)</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE NbOverloads > 6 ORDER BY NbOverloads DESC
// METHODS WHERE NbParameters > 6 might be a problem to maintain and provoke higher coupling than necessary.
// This might also reveal a potential misused of the C# and VB.NET language that since C#3 and VB9 support
// object initialization. This feature helps reducing the number of constructors of a class.
// See the definition of the NbOverloads metric here http://www.ndepend.com/Metrics.aspx#NbOverloads
| methods | # Overloads | Full Name |
| SetValue(Vector2[]) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Vector2[]) |
| SetValue(Vector3[]) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Vector3[]) |
| SetValue(Vector4) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Vector4) |
| SetValue(Single) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Single) |
| SetValue(Single[]) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Single[]) |
| SetValue(Vector2) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Vector2) |
| SetValue(Vector4[]) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Vector4[]) |
| SetValue(Matrix[]) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Matrix[]) |
| SetValue(String) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(String) |
| SetValue(Texture) | 18 | Microsoft.Xna.Framework.Graphics.EffectParameter.SetValue(Texture) |
| Sum: | 180 | |
| Average: | 18 | |
| Minimum: | 18 | |
| Maximum: | 18 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Code Quality \ Type Metrics}
// <Name>Types with too many methods</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE NbMethods > 20 ORDER BY NbMethods DESC
// TYPES WHERE NbMethods > 20 might be hard to understand and maintain
// but there might be cases where it is relevant to have a high value for NbMethods.
// For example, the System.Windows.Forms.DataGridView standard class has more than 1000 methods.
// See the definition of the NbMethods metric here http://www.ndepend.com/Metrics.aspx#NbMethods
| types | # Methods | Full Name |
| FrameworkResources | 288 | Microsoft.Xna.Framework.FrameworkResources |
| Color | 173 | Microsoft.Xna.Framework.Graphics.Color |
| GraphicsDevice | 169 | Microsoft.Xna.Framework.Graphics.GraphicsDevice |
| RenderState | 137 | Microsoft.Xna.Framework.Graphics.RenderState |
| Matrix | 99 | Microsoft.Xna.Framework.Matrix |
| NetworkSession | 96 | Microsoft.Xna.Framework.Net.NetworkSession |
| Vector3 | 86 | Microsoft.Xna.Framework.Vector3 |
| Vector4 | 82 | Microsoft.Xna.Framework.Vector4 |
| WmpInterface | 79 | Microsoft.Xna.Framework.Media.WmpInterface |
| Vector2 | 76 | Microsoft.Xna.Framework.Vector2 |
| Sum: | 1285 | |
| Average: | 128.5 | |
| Minimum: | 76 | |
| Maximum: | 288 | |
| Standard deviation: | 63.431 | |
| Variance: | 4023.4 | |
WARNING: The following CQL constraint is not satisfied. 7 types on 966
tested match the condition. --> Group {Code Quality \ Type Metrics}
// <Name>Types with too many fields</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE NbFields > 20 AND !IsEnumeration ORDER BY NbFields DESC
// TYPES WHERE NbFields > 20 AND !IsEnumeration might be hard to understand and maintain
// but there might be cases where it is relevant to have a high value for NbFields.
// For example, the System.Windows.Forms.Control standard class has more than 200 fields.
// The value of the metric NbFields might be a better indicator of complex type.
// See the definition of the NbFields metric here http://www.ndepend.com/Metrics.aspx#NbFields
| types | # Fields | Full Name |
| RenderState | 68 | Microsoft.Xna.Framework.Graphics.RenderState |
| GraphicsDevice | 41 | Microsoft.Xna.Framework.Graphics.GraphicsDevice |
| SpriteBatch | 32 | Microsoft.Xna.Framework.Graphics.SpriteBatch |
| WindowMessageHooker | 31 | Microsoft.Xna.Framework.Input.WindowMessageHooker |
| NetworkSession | 31 | Microsoft.Xna.Framework.Net.NetworkSession |
| BasicEffect | 25 | Microsoft.Xna.Framework.Graphics.BasicEffect |
| RenderTarget | 24 | Microsoft.Xna.Framework.Graphics.RenderTarget |
| Sum: | 252 | |
| Average: | 36 | |
| Minimum: | 24 | |
| Maximum: | 68 | |
| Standard deviation: | 14.041 | |
| Variance: | 197.14 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Code Quality \ Type Metrics}
// <Name>Types with poor cohesion (LCOM)</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE LCOM > 0.8 AND NbFields > 10 AND NbMethods >10 ORDER BY LCOM DESC
// TYPES WHERE LCOM > 0.8 AND NbFields > 10 AND NbMethods >10 might be problematic.
// However, it is very hard to avoid such non-cohesive types. The LCOMHS metric
// is often considered as more efficient to detect non-cohesive types.
// See the definition of the LCOM metric here http://www.ndepend.com/Metrics.aspx#LCOM
| types | Lack of Cohesion Of Methods (LCOM) | # Fields | # Methods | Full Name |
| GraphicsDevice | 0.9718574 | 41 | 169 | Microsoft.Xna.Framework.Graphics.GraphicsDevice |
| RenderState | 0.9711249 | 68 | 137 | Microsoft.Xna.Framework.Graphics.RenderState |
| NetworkSession | 0.94875 | 31 | 96 | Microsoft.Xna.Framework.Net.NetworkSession |
| SpriteBatch | 0.9320987 | 32 | 42 | Microsoft.Xna.Framework.Graphics.SpriteBatch |
| BasicEffect | 0.9313043 | 25 | 46 | Microsoft.Xna.Framework.Graphics.BasicEffect |
| Effect | 0.9273504 | 18 | 52 | Microsoft.Xna.Framework.Graphics.Effect |
| RenderTarget | 0.915404 | 24 | 33 | Microsoft.Xna.Framework.Graphics.RenderTarget |
| AvatarRenderer | 0.8986014 | 14 | 22 | Microsoft.Xna.Framework.GamerServices.AvatarRenderer |
| SignedInGamer | 0.8981482 | 12 | 24 | Microsoft.Xna.Framework.GamerServices.SignedInGamer |
| DepthStencilBuffer | 0.8916667 | 15 | 32 | Microsoft.Xna.Framework.Graphics.DepthStencilBuffer |
| Sum: | 9.2863 | 280 | 653 | |
| Average: | 0.9286307 | 28 | 65.3 | |
| Minimum: | 0.8916667 | 12 | 22 | |
| Maximum: | 0.9718574 | 68 | 169 | |
| Standard deviation: | 0.02733503 | 15.937 | 48.644 | |
| Variance: | 0.0007472038 | 254 | 2366.2 | |
WARNING: The following CQL constraint is not satisfied. 5 types on 966
tested match the condition. --> Group {Code Quality \ Type Metrics}
// <Name>Types with poor cohesion (LCOMHS)</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE LCOMHS > 0.95 AND NbFields > 10 AND NbMethods >10 ORDER BY LCOMHS DESC
// TYPES WHERE LCOMHS > 1.0 AND NbFields > 10 AND NbMethods >10 should be avoided.
// Note that this constraint is stronger than the constraint
// TYPES WHERE LCOM > 0.8 AND NbFields > 10 AND NbMethods >10.
// See the definition of the LCOMHS metric here http://www.ndepend.com/Metrics.aspx#LCOMHS
| types | LCOM Henderson-Sellers (LCOMHS) | # Fields | # Methods | Full Name |
| RenderState | 0.9782655 | 68 | 137 | Microsoft.Xna.Framework.Graphics.RenderState |
| GraphicsDevice | 0.9776422 | 41 | 169 | Microsoft.Xna.Framework.Graphics.GraphicsDevice |
| NetworkSession | 0.9587368 | 31 | 96 | Microsoft.Xna.Framework.Net.NetworkSession |
| SpriteBatch | 0.9548329 | 32 | 42 | Microsoft.Xna.Framework.Graphics.SpriteBatch |
| BasicEffect | 0.952 | 25 | 46 | Microsoft.Xna.Framework.Graphics.BasicEffect |
| Sum: | 4.8215 | 197 | 490 | |
| Average: | 0.9642955 | 39.4 | 98 | |
| Minimum: | 0.952 | 25 | 42 | |
| Maximum: | 0.9782655 | 68 | 169 | |
| Standard deviation: | 0.01135451 | 15.187 | 49.812 | |
| Variance: | 0.0001289248 | 230.64 | 2481.2 | |
WARNING: The following CQL constraint is not satisfied. 1 assemblies on
4 tested match the condition. --> Group {Design}
// <Name>Assembly should not contain namespaces dependency cycles</Name>
WARN IF Count > 0 IN SELECT TOP 10 ASSEMBLIES WHERE ContainsNamespaceDependencyCycle
// Dependency cycles between namespaces must be avoided
// in order to have a levelized and comprehensive design.
// More info available on the screencast 'Reduce the complexity' http://s3.amazonaws.com/NDependOnlineDemos/NDependReducingComplexity_viewlet_swf.html
// You can also read this article http://www.theserverside.net/tt/articles/showarticle.tss?id=ControllingDependencies
| assemblies | # IL instructions | Full Name |
| Microsoft.Xna.Framework | 128527 | Microsoft.Xna.Framework |
| Sum: | 128527 | |
| Average: | 128527 | |
| Minimum: | 128527 | |
| Maximum: | 128527 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 8 types on 765
tested match the condition. --> Group {Design}
// <Name>Type should not have too many responsabilities (Efferent Coupling)</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE TypeCe > 50 ORDER BY TypeCe DESC
// The Efferent Coupling (TypeCe) for a particular type is the number of types
// it directly depends on. Notice that types declared in tier assemblies are taken into account.
// Types that depends on too many others type (more than 50) are complex and have
// more than one responsability. They are good candidate for refactoring.
// More information available in this article:
// http://codebetter.com/blogs/patricksmacchia/archive/2008/02/15/code-metrics-on-coupling-dead-code-design-flaws-and-re-engineering.aspx
| types | Efferent coupling at type level (TypeCe) | Full Name |
| GraphicsDevice | 99 | Microsoft.Xna.Framework.Graphics.GraphicsDevice |
| NetworkSession | 80 | Microsoft.Xna.Framework.Net.NetworkSession |
| UnsafeNativeMethods | 76 | Microsoft.Xna.Framework.Media.UnsafeNativeMethods |
| SpriteBatch | 75 | Microsoft.Xna.Framework.Graphics.SpriteBatch |
| Effect | 57 | Microsoft.Xna.Framework.Graphics.Effect |
| TextureCube | 53 | Microsoft.Xna.Framework.Graphics.TextureCube |
| Texture2D | 53 | Microsoft.Xna.Framework.Graphics.Texture2D |
| GamerServicesDispatcher | 51 | Microsoft.Xna.Framework.GamerServices.GamerServicesDispatcher |
| Sum: | 544 | |
| Average: | 68 | |
| Minimum: | 51 | |
| Maximum: | 99 | |
| Standard deviation: | 16.117 | |
| Variance: | 259.75 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Design}
// <Name>A stateless type might be turned into a static type</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
SizeOfInst ==0 AND
NbInterfacesImplemented == 0 AND // To be accurate, this constraint doesn't take
// account of types that implement some interfaces.
!IsStatic AND
!IsGeneric AND
!IsInterface
// It indicates stateless types that might eventually be turned into static classes.
// See the definition of the SizeOfInst metric here http://www.ndepend.com/Metrics.aspx#SizeOfInst
| types | Size of instance | # interfaces implemented | Full Name |
| WAVEBANKENTRY | 0 | 0 | WAVEBANKENTRY |
| XACT_STREAMING_PARAMETERS | 0 | 0 | XACT_STREAMING_PARAMETERS |
| CHandleTable | 0 | 0 | CHandleTable |
| HandleEntry | 0 | 0 | HandleEntry |
| _RTL_CRITICAL_SECTION | 0 | 0 | _RTL_CRITICAL_SECTION |
| HandlePage | 0 | 0 | HandlePage |
| tWAVEFORMATEX | 0 | 0 | tWAVEFORMATEX |
| GenericList<Microsoft::Xna::Framework::Audio::KernelSoundEffectInstance *> | 0 | 0 | GenericList<Microsoft::Xna::Framework::Audio::KernelSoundEffectInstance *> |
| XAUDIO2_DEVICE_DETAILS | 0 | 0 | XAUDIO2_DEVICE_DETAILS |
| XAUDIO2_EFFECT_CHAIN | 0 | 0 | XAUDIO2_EFFECT_CHAIN |
| Sum: | 0 | 0 | |
| Average: | 0 | 0 | |
| Minimum: | 0 | 0 | |
| Maximum: | 0 | 0 | |
| Standard deviation: | 0 | 0 | |
| Variance: | 0 | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Design}
// <Name>Class with no descendant should be sealed if possible</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
IsClass AND
NbChildren ==0 AND
!IsSealed AND
!IsStatic
// AND !IsPublic : You might want to add this condition if you are developping a framework
// with classes that are intended to be sub-classed by your clients.
ORDER BY NbLinesOfCode
| types | # Children | # lines of code (LOC) | Full Name |
| GamerJoinedEventArgs | 0 | N/A | Microsoft.Xna.Framework.Net.GamerJoinedEventArgs |
| NetworkSessionEndedEventArgs | 0 | N/A | Microsoft.Xna.Framework.Net.NetworkSessionEndedEventArgs |
| GamerLeftEventArgs | 0 | N/A | Microsoft.Xna.Framework.Net.GamerLeftEventArgs |
| GameEndedEventArgs | 0 | N/A | Microsoft.Xna.Framework.Net.GameEndedEventArgs |
| GameStartedEventArgs | 0 | N/A | Microsoft.Xna.Framework.Net.GameStartedEventArgs |
| AvatarRenderer | 0 | N/A | Microsoft.Xna.Framework.GamerServices.AvatarRenderer |
| AvatarDescription | 0 | N/A | Microsoft.Xna.Framework.GamerServices.AvatarDescription |
| AvatarAnimation | 0 | N/A | Microsoft.Xna.Framework.GamerServices.AvatarAnimation |
| GuideRenderer | 0 | N/A | Microsoft.Xna.Framework.GamerServices.GuideRenderer |
| GuideMessageHooker | 0 | N/A | Microsoft.Xna.Framework.GamerServices.GuideMessageHooker |
| Sum: | 0 | 0 | |
| Average: | 0 | 0 | |
| Minimum: | 0 | 0 | |
| Maximum: | 0 | 0 | |
| Standard deviation: | 0 | 0 | |
| Variance: | 0 | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Design}
// <Name>Classes that are candidate to be turned into Structures</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
IsClass AND
SizeOfInst <= 16 AND // Structure instance must not be too big, else it degrades performance.
NbChildren == 0 AND // Must not have children
DepthOfInheritance == 1 // Must derive directly from System.Object
// AND IsSealed : You might want to add this condition to restreint the set.
// AND IsImmutable : Structures should be immutable type.
// AND !IsPublic : You might want to add this condition if you are developping a framework
// with classes that are intended to be sub-classed by your clients.
| types | Size of instance | # Children | Depth of inheritance | Full Name |
| EmbeddedNativeType<_D3DCAPS9> | 0 | 0 | 1 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9> |
| EmbeddedNativeType<_D3DPRESENT_PARAMETERS_> | 0 | 0 | 1 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_> |
| EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9> | 0 | 0 | 1 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9> |
| FrameworkDispatcher | 0 | 0 | 1 | Microsoft.Xna.Framework.FrameworkDispatcher |
| UserAsyncDispatcher | 0 | 0 | 1 | Microsoft.Xna.Framework.UserAsyncDispatcher |
| PowerStatus | 0 | 0 | 1 | Microsoft.Xna.Framework.PowerStatus |
| SystemNativeMethods | 0 | 0 | 1 | Microsoft.Xna.Framework.SystemNativeMethods |
| XOverlappedAsyncResult | 15 | 0 | 1 | Microsoft.Xna.Framework.XOverlappedAsyncResult |
| UserAsyncDispatcher+<>c__DisplayClass2 | 8 | 0 | 1 | Microsoft.Xna.Framework.UserAsyncDispatcher+<>c__DisplayClass2 |
| FrameworkResources | 0 | 0 | 1 | Microsoft.Xna.Framework.FrameworkResources |
| Sum: | 23 | 0 | 10 | |
| Average: | 2.3 | 0 | 1 | |
| Minimum: | 0 | 0 | 1 | |
| Maximum: | 15 | 0 | 1 | |
| Standard deviation: | 4.859 | 0 | 0 | |
| Variance: | 23.61 | 0 | 0 | |
WARNING: The following CQL constraint is not satisfied. 3 namespaces on
41 tested match the condition. --> Group {Design}
// <Name>Avoid namespaces with few types</Name>
WARN IF Count > 0 IN SELECT TOP 10 NAMESPACES WHERE NbTypes < 5 ORDER BY NbTypes ASC
// Make sure that there is a logical organization to each of your namespaces,
// and that there is a valid reason for putting types in a sparsely populated
// namespace. Namespaces should contain types that are used together in most
// scenarios. When their applications are mutually exclusive, types should be
// located in separate namespaces
| namespaces | # Types | Full Name |
| Microsoft.Xna | 3 | Microsoft.Xna |
| XnaMediaPlayer | 4 | XnaMediaPlayer |
| Microsoft.Xna.Framework.Storage | 4 | Microsoft.Xna.Framework.Storage |
| Sum: | 11 | |
| Average: | 3.6667 | |
| Minimum: | 3 | |
| Maximum: | 4 | |
| Standard deviation: | 0.4714046 | |
| Variance: | 0.2222223 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Design}
// <Name>Nested types should not be visible</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE IsNested AND !IsPrivate AND !IsInFrameworkAssembly
// A nested type is a type declared within the scope of another type.
// Nested types are useful for encapsulating private implementation details of the containing type.
// Used for this purpose, nested types should not be externally visible. Do not use externally
// visible nested types for logical grouping or to avoid name collisions; instead, use namespaces.
| types | # IL instructions | Full Name |
| PowerStatus+Status | 0 | Microsoft.Xna.Framework.PowerStatus+Status |
| SystemNativeMethods+WindowsSystemPowerStatus | 0 | Microsoft.Xna.Framework.SystemNativeMethods+WindowsSystemPowerStatus |
| UnsafeNativeMethods+Engine | 1026 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+Engine |
| UnsafeNativeMethods+WaveBank | 363 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+WaveBank |
| UnsafeNativeMethods+Cue | 411 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+Cue |
| UnsafeNativeMethods+SoundBank | 489 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+SoundBank |
| UnsafeNativeStructures+XACT_LISTENER_DATA | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_LISTENER_DATA |
| UnsafeNativeStructures+XACT_EMITTER_DATA | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA |
| WindowMessageHookerTester+WndProcDelegate | 0 | Microsoft.Xna.Framework.Input.WindowMessageHookerTester+WndProcDelegate |
| GamerCollection<T>+GamerCollectionEnumerator | 32 | Microsoft.Xna.Framework.GamerServices.GamerCollection<T>+GamerCollectionEnumerator |
| Sum: | 2321 | |
| Average: | 232.1 | |
| Minimum: | 0 | |
| Maximum: | 1026 | |
| Standard deviation: | 324.78 | |
| Variance: | 105480.7 | |
WARNING: The following CQL constraint is not satisfied. 1 namespaces on
41 tested match the condition. --> Group {Design}
// <Name>Declare types in namespaces</Name>
WARN IF Count > 0 IN SELECT NAMESPACES WHERE NameIs "" AND !IsInFrameworkAssembly
// Types are declared within namespaces to prevent name collisions, and as a way of organizing related types
// in an object hierarchy. Types outside any named namespace are in a global namespace that cannot be referenced in code.
// If an anonymous namespace can be found, it means that it contains types outside of namespaces.
| namespaces | # IL instructions | Full Name |
| 13 | |
| Sum: | 13 | |
| Average: | 13 | |
| Minimum: | 13 | |
| Maximum: | 13 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 69 methods on
5895 tested match the condition. --> Group {Design}
// <Name>Empty static constructor can be discarded</Name>
WARN IF Count > 0 IN SELECT METHODS WHERE IsClassConstructor AND NbLinesOfCode == 0
| methods | # lines of code (LOC) | Full Name |
| .cctor() | N/A | Microsoft.Xna.Framework.WindowsManagedCallbackHandler..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.FrameworkDispatcher..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.UserAsyncDispatcher..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.PowerStatus..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Gjk..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Matrix..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Point..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Quaternion..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Rectangle..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Vector2..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Vector3..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Vector4..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+Cue..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Audio.SoundEffectUnsafeNativeMethods..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Audio.XAudio2ShutdownHandler..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Audio.SoundEffect..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Audio.AudioEngine..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.WmpInterface..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.WmpProxyThread..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.Album..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.AlbumCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.Artist..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.ArtistCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.Genre..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.GenreCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.MediaLibrary..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.SongLibraryEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.ArtistEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.AlbumEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.GenreEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PlaylistEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PictureEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PictureAlbumEnumerator..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.MediaPlayer..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.Picture..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PictureAlbum..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PictureAlbumCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PictureCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.Playlist..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.PlaylistCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.Song..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Media.SongCollection..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Input.Keyboard..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Input.MouseMessageHooker..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Input.Mouse..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Input.GamePad..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Input.KeyboardState..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Input.WindowMessageHooker..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Content.ContentTypeReaderManager..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Content.BasicEffectReader..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.Gamer..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.GamerCollection<T>..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.Guide..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.KernelMethods..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.UnsafeNativeMethods..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.GamerServicesDispatcher..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.GamerServices.SignedInGamer..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.TextureCreationParameters..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.GraphicsAdapter..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.CompilerHelper..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.BasicEffectCode..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.SpriteBatch..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.SpriteWindowsPixelShaderCode..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.SpriteWindowsVertexShaderCode..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.VertexPositionColor..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.VertexPositionTexture..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.VertexPositionColorTexture..cctor() |
| .cctor() | N/A | Microsoft.Xna.Framework.Graphics.VertexPositionNormalTexture..cctor() |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Design \ Performance}
// <Name>Instances size shouldn't be too big (SizeOfInst)</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE SizeOfInst > 64 ORDER BY SizeOfInst DESC
// TYPES WHERE SizeOfInst > 64 might degrade performance (depending on the number of
// instances created at runtime) and might be hard to maintain.
// However it is not a rule since sometime there is no alternative
// (the size of instances of the System.Net.NetworkInformation.SystemIcmpV6Statistics
// standard class is 2064 bytes).
// See the definition of the SizeOfInst metric here http://www.ndepend.com/Metrics.aspx#SizeOfInst
| types | Size of instance | Full Name |
| AvatarRenderer | 250 | Microsoft.Xna.Framework.GamerServices.AvatarRenderer |
| RenderState | 236 | Microsoft.Xna.Framework.Graphics.RenderState |
| SpriteBatch | 162 | Microsoft.Xna.Framework.Graphics.SpriteBatch |
| BasicEffect | 151 | Microsoft.Xna.Framework.Graphics.BasicEffect |
| GraphicsDevice | 141 | Microsoft.Xna.Framework.Graphics.GraphicsDevice |
| GamePadState | 105 | Microsoft.Xna.Framework.Input.GamePadState |
| NetworkSession | 91 | Microsoft.Xna.Framework.Net.NetworkSession |
| ModelBone | 80 | Microsoft.Xna.Framework.Graphics.ModelBone |
| BoundingFrustum | 76 | Microsoft.Xna.Framework.BoundingFrustum |
| AudioEmitter | 76 | Microsoft.Xna.Framework.Audio.AudioEmitter |
| Sum: | 1368 | |
| Average: | 136.8 | |
| Minimum: | 76 | |
| Maximum: | 250 | |
| Standard deviation: | 61.023 | |
| Variance: | 3723.8 | |
WARNING: The following CQL constraint is not satisfied. 115 types on
966 tested match the condition. --> Group {Design \ Performance}
// <Name>Boxing/unboxing should be avoided (Type)</Name>
WARN IF Percentage > 5 IN SELECT TYPES WHERE IsUsingBoxing OR IsUsingUnboxing
// Thanks to generics, boxing and unboxing should be rare.
| types | # IL instructions | Full Name |
| Sum: | 57061 | |
| Average: | 496.18 | |
| Minimum: | 19 | |
| Maximum: | 10885 | |
| Standard deviation: | 1241.1 | |
| Variance: | 1540311 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5458 tested match the condition. --> Group {Unused Code / Dead Code}
// <Name>Potentially unused methods</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE
MethodCa == 0 AND // Ca=0 -> No Afferent Coupling -> The method is not used in the context of this application.
!IsPublic AND // Public methods might be used by client applications of your assemblies.
!IsEntryPoint AND // Main() method is not used by-design.
!IsExplicitInterfaceImpl AND // The IL code never explicitely calls explicit interface methods implementation.
!IsClassConstructor AND // The IL code never explicitely calls class constructors.
!IsFinalizer // The IL code never explicitely calls finalizers.
| methods | Afferent coupling at method level (MethodCa) | Full Name |
| ~EmbeddedNativeType<_D3DCAPS9>() | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>.~EmbeddedNativeType<_D3DCAPS9>() |
| ~EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>() | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>.~EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>() |
| ~EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>() | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>.~EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>() |
| ~WindowsManagedCallbackHandler() | 0 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.~WindowsManagedCallbackHandler() |
| get_Culture() | 0 | Microsoft.Xna.Framework.FrameworkResources.get_Culture() |
| set_Culture(CultureInfo) | 0 | Microsoft.Xna.Framework.FrameworkResources.set_Culture(CultureInfo) |
| get_AudioGetMasterVolumeFailed() | 0 | Microsoft.Xna.Framework.FrameworkResources.get_AudioGetMasterVolumeFailed() |
| get_BackBufferTooLarge() | 0 | Microsoft.Xna.Framework.FrameworkResources.get_BackBufferTooLarge() |
| get_CannotCallSpriteBeginTwice() | 0 | Microsoft.Xna.Framework.FrameworkResources.get_CannotCallSpriteBeginTwice() |
| get_CannotDrawNoEffect() | 0 | Microsoft.Xna.Framework.FrameworkResources.get_CannotDrawNoEffect() |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2870 tested match the condition. --> Group {Unused Code / Dead Code}
// <Name>Potentially unused fields</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE
FieldCa == 0 AND // Ca=0 -> No Afferent Coupling -> The field is not used in the context of this application.
!IsPublic AND // Although not recommended, public fields might be used by client applications of your assemblies.
!IsLiteral AND // The IL code never explicitely uses literal fields.
!IsEnumValue AND // The IL code never explicitely uses enumeration value.
!NameIs "value__" // Field named 'value__' are relative to enumerations and the IL code never explicitely uses them.
| fields | Afferent coupling at field level (FieldCa) | Full Name |
| pCone | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_LISTENER_DATA.pCone |
| pCone | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pCone |
| _innerRadius | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA._innerRadius |
| _innerRadiusAngle | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA._innerRadiusAngle |
| pChannelAzimuths | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pChannelAzimuths |
| pVolumeCurve | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pVolumeCurve |
| pLfeCurve | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pLfeCurve |
| pLpfDirectCurve | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pLpfDirectCurve |
| pLpfReverbCurve | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pLpfReverbCurve |
| pReverbCurve | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pReverbCurve |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 765
tested match the condition. --> Group {Unused Code / Dead Code}
// <Name>Potentially unused types</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
TypeCa == 0 AND // Ca=0 -> No Afferent Coupling -> The type is not used in the context of this application.
!IsPublic AND // Public types might be used by client applications of your assemblies.
!NameIs "Program" // Generally, types named Program contain a Main() entry-point method and this condition avoid to consider such type as unused code.
| types | Afferent coupling at type level (TypeCa) | Full Name |
| _D3DPRIMITIVETYPE | 0 | _D3DPRIMITIVETYPE |
| _D3DRENDERSTATETYPE | 0 | _D3DRENDERSTATETYPE |
| _D3DSAMPLERSTATETYPE | 0 | _D3DSAMPLERSTATETYPE |
| _D3DTEXTUREFILTERTYPE | 0 | _D3DTEXTUREFILTERTYPE |
| _D3DSTATEBLOCKTYPE | 0 | _D3DSTATEBLOCKTYPE |
| _D3DMULTISAMPLE_TYPE | 0 | _D3DMULTISAMPLE_TYPE |
| _D3DBACKBUFFER_TYPE | 0 | _D3DBACKBUFFER_TYPE |
| _D3DCUBEMAP_FACES | 0 | _D3DCUBEMAP_FACES |
| _D3DQUERYTYPE | 0 | _D3DQUERYTYPE |
| _D3DXINCLUDE_TYPE | 0 | _D3DXINCLUDE_TYPE |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2889 tested match the condition. --> Group {Encapsulation}
// <Name>Fields should be declared as private</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE
!IsPrivate AND
// These conditions filter cases where fields doesn't represent state that should be encapsulated.
!IsInFrameworkAssembly AND
!IsGeneratedByCompiler AND
!IsSpecialName AND
!IsInitOnly AND
!IsLiteral AND
!IsEnumValue
| fields | Size of instance | Full Name |
| originalWaitHandle | 0 | NativeToManagedCallback.originalWaitHandle |
| dupedWaitHandle | 0 | NativeToManagedCallback.dupedWaitHandle |
| eventSignalledFunction | 4 | NativeToManagedCallback.eventSignalledFunction |
| pContext | 0 | NativeToManagedCallback.pContext |
| t | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>.t |
| t | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>.t |
| t | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>.t |
| ManagedCallType | 4 | Microsoft.Xna.Framework.FrameworkDispatcher+ManagedCallAndArg.ManagedCallType |
| ManagedCallArg | 4 | Microsoft.Xna.Framework.FrameworkDispatcher+ManagedCallAndArg.ManagedCallArg |
| Async | 4 | Microsoft.Xna.Framework.PendingOperation.Async |
| Sum: | 16 | |
| Average: | 1.6 | |
| Minimum: | 0 | |
| Maximum: | 4 | |
| Standard deviation: | 1.9596 | |
| Variance: | 3.84 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Encapsulation \ Methods
Optimal Encapsulation}
// <Name>Methods that could be declared as 'internal' in C#, 'Friend' in VB.NET</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE CouldBeInternal
| methods | # IL instructions | Full Name |
| .ctor(Void*,Void*,method,Void*) | 13 | NativeToManagedCallback..ctor(Void*,Void*,method,Void*) |
| .ctor() | 12 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>..ctor() |
| .ctor() | 12 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>..ctor() |
| .ctor() | 12 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>..ctor() |
| Initialize(Void*) | 17 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.Initialize(Void*) |
| WaitForAsyncOperationToFinish(ManagedCallType&,UInt32&) | 292 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.WaitForAsyncOperationToFinish(ManagedCallType&,UInt32&) |
| SetProxyProcessHandler(IProxyProcessHandler) | 47 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.SetProxyProcessHandler(IProxyProcessHandler) |
| get_Instance() | 2 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.get_Instance() |
| .ctor(ManagedCallType,UInt32) | 7 | Microsoft.Xna.Framework.FrameworkDispatcher+ManagedCallAndArg..ctor(ManagedCallType,UInt32) |
| .ctor(XOverlappedAsyncResult,AsyncCallback) | 7 | Microsoft.Xna.Framework.PendingOperation..ctor(XOverlappedAsyncResult,AsyncCallback) |
| Sum: | 421 | |
| Average: | 42.1 | |
| Minimum: | 2 | |
| Maximum: | 292 | |
| Standard deviation: | 84.108 | |
| Variance: | 7074.1 | |
WARNING: The following CQL constraint is not satisfied. 3 methods on
5895 tested match the condition. --> Group {Encapsulation \ Methods
Optimal Encapsulation}
// <Name>Methods that could be declared as 'protected' in C#, 'Protected' in VB.NET</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE CouldBeProtected
| methods | # IL instructions | Full Name |
| .ctor() | 9 | Microsoft.Xna.Framework.Media.MediaLibraryEnumerator<T>..ctor() |
| .ctor(UInt32) | 18 | Microsoft.Xna.Framework.Media.MediaLibraryEnumerator<T>..ctor(UInt32) |
| .ctor(MemberInfo) | 14 | Microsoft.Xna.Framework.Design.MemberPropertyDescriptor..ctor(MemberInfo) |
| Sum: | 41 | |
| Average: | 13.667 | |
| Minimum: | 9 | |
| Maximum: | 18 | |
| Standard deviation: | 3.6818 | |
| Variance: | 13.556 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Encapsulation \ Methods
Optimal Encapsulation}
// <Name>Methods that could be declared as 'private' in C#, 'Private' in VB.NET</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE CouldBePrivate
| methods | # IL instructions | Full Name |
| GetNativePointer(EmbeddedNativeType<_D3DCAPS9>) | 3 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>.GetNativePointer(EmbeddedNativeType<_D3DCAPS9>) |
| GetNativePointer(EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>) | 3 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>.GetNativePointer(EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>) |
| GetNativePointer(EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>) | 3 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>.GetNativePointer(EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>) |
| CallManagedFunctionForMe(ManagedCallType,UInt32) | 5 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.CallManagedFunctionForMe(ManagedCallType,UInt32) |
| RegisterNativeToManagedCallback(Void*,method,Void*) | 6 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.RegisterNativeToManagedCallback(Void*,method,Void*) |
| Update() | 67 | Microsoft.Xna.Framework.FrameworkDispatcher.Update() |
| AddPendingOperation(UInt32,AsyncCallback,Object,Boolean) | 13 | Microsoft.Xna.Framework.UserAsyncDispatcher.AddPendingOperation(UInt32,AsyncCallback,Object,Boolean) |
| get_BatteryChargeStatus() | 4 | Microsoft.Xna.Framework.PowerStatus.get_BatteryChargeStatus() |
| get_BatteryFullLifetime() | 4 | Microsoft.Xna.Framework.PowerStatus.get_BatteryFullLifetime() |
| get_BatteryLifePercent() | 4 | Microsoft.Xna.Framework.PowerStatus.get_BatteryLifePercent() |
| Sum: | 112 | |
| Average: | 11.2 | |
| Minimum: | 3 | |
| Maximum: | 67 | |
| Standard deviation: | 18.814 | |
| Variance: | 353.96 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Encapsulation \ Types Optimal
Encapsulation}
// <Name>Types that could be declared as internal</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE CouldBeInternal
| types | # IL instructions | Full Name |
| FrameworkDispatcher | 87 | Microsoft.Xna.Framework.FrameworkDispatcher |
| PowerStatus | 61 | Microsoft.Xna.Framework.PowerStatus |
| BoundingBox | 2063 | Microsoft.Xna.Framework.BoundingBox |
| BoundingFrustum | 1732 | Microsoft.Xna.Framework.BoundingFrustum |
| BoundingSphere | 1578 | Microsoft.Xna.Framework.BoundingSphere |
| Curve | 630 | Microsoft.Xna.Framework.Curve |
| CurveKey | 237 | Microsoft.Xna.Framework.CurveKey |
| CurveKeyCollection | 218 | Microsoft.Xna.Framework.CurveKeyCollection |
| MathHelper | 209 | Microsoft.Xna.Framework.MathHelper |
| Matrix | 10885 | Microsoft.Xna.Framework.Matrix |
| Sum: | 17700 | |
| Average: | 1770 | |
| Minimum: | 61 | |
| Maximum: | 10885 | |
| Standard deviation: | 3121.8 | |
| Variance: | 9745566 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Encapsulation \ Types Optimal
Encapsulation}
// <Name>Types that could be declared as 'private' in C#, 'Private' in VB.NET</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE CouldBePrivate
| types | # IL instructions | Full Name |
| SystemNativeMethods+WindowsSystemPowerStatus | 0 | Microsoft.Xna.Framework.SystemNativeMethods+WindowsSystemPowerStatus |
| WindowMessageHookerTester+WndProcDelegate | 0 | Microsoft.Xna.Framework.Input.WindowMessageHookerTester+WndProcDelegate |
| GraphicsDeviceCapabilities+DriverCaps | 182 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+DriverCaps |
| GraphicsDeviceCapabilities+CursorCaps | 110 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+CursorCaps |
| GraphicsDeviceCapabilities+PrimitiveCaps | 208 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+PrimitiveCaps |
| GraphicsDeviceCapabilities+RasterCaps | 208 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+RasterCaps |
| GraphicsDeviceCapabilities+CompareCaps | 158 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+CompareCaps |
| GraphicsDeviceCapabilities+BlendCaps | 206 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+BlendCaps |
| GraphicsDeviceCapabilities+LineCaps | 142 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+LineCaps |
| GraphicsDeviceCapabilities+ShadingCaps | 128 | Microsoft.Xna.Framework.Graphics.GraphicsDeviceCapabilities+ShadingCaps |
| Sum: | 1342 | |
| Average: | 134.2 | |
| Minimum: | 0 | |
| Maximum: | 208 | |
| Standard deviation: | 74.568 | |
| Variance: | 5560.4 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2889 tested match the condition. --> Group {Encapsulation \ Fields
Optimal Encapsulation}
// <Name>Fields that could be declared as internal</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE CouldBeInternal
| fields | Size of instance | Full Name |
| originalWaitHandle | 0 | NativeToManagedCallback.originalWaitHandle |
| dupedWaitHandle | 0 | NativeToManagedCallback.dupedWaitHandle |
| eventSignalledFunction | 4 | NativeToManagedCallback.eventSignalledFunction |
| pContext | 0 | NativeToManagedCallback.pContext |
| ManagedCallType | 4 | Microsoft.Xna.Framework.FrameworkDispatcher+ManagedCallAndArg.ManagedCallType |
| Async | 4 | Microsoft.Xna.Framework.PendingOperation.Async |
| Callback | 4 | Microsoft.Xna.Framework.PendingOperation.Callback |
| BatteryChargeStatus | 4 | Microsoft.Xna.Framework.PowerStatus+Status.BatteryChargeStatus |
| BatteryFullLifetime | 5 | Microsoft.Xna.Framework.PowerStatus+Status.BatteryFullLifetime |
| BatteryLifePercent | 5 | Microsoft.Xna.Framework.PowerStatus+Status.BatteryLifePercent |
| Sum: | 30 | |
| Average: | 3 | |
| Minimum: | 0 | |
| Maximum: | 5 | |
| Standard deviation: | 2 | |
| Variance: | 4 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2889 tested match the condition. --> Group {Encapsulation \ Fields
Optimal Encapsulation}
// <Name>Fields that could be declared as 'private' in C#, 'Private' in VB.NET</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE CouldBePrivate
| fields | Size of instance | Full Name |
| ManagedCallArg | 4 | Microsoft.Xna.Framework.FrameworkDispatcher+ManagedCallAndArg.ManagedCallArg |
| continuity | 4 | Microsoft.Xna.Framework.CurveKey.continuity |
| Element0 | 12 | Microsoft.Xna.Framework.Matrix+VectorBasis.Element0 |
| Element1 | 12 | Microsoft.Xna.Framework.Matrix+VectorBasis.Element1 |
| Element2 | 12 | Microsoft.Xna.Framework.Matrix+VectorBasis.Element2 |
| gCurrentlyDestroyingCue | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods+Cue.gCurrentlyDestroyingCue |
| SoundEffectSubsystemSyncObject | 0 | Microsoft.Xna.Framework.Audio.SoundEffectUnsafeNativeMethods.SoundEffectSubsystemSyncObject |
| pCone | 0 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA.pCone |
| _innerRadius | 4 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA._innerRadius |
| _innerRadiusAngle | 4 | Microsoft.Xna.Framework.Audio.UnsafeNativeStructures+XACT_EMITTER_DATA._innerRadiusAngle |
| Sum: | 52 | |
| Average: | 5.2 | |
| Minimum: | 0 | |
| Maximum: | 12 | |
| Standard deviation: | 4.7497 | |
| Variance: | 22.56 | |
WARNING: The following CQL constraint is not satisfied. 355 fields on
2889 tested match the condition. --> Group {Purity / Immutability /
Side-Effects}
// <Name>Fields should be marked as ReadOnly when possible</Name>
WARN IF Count > 0 IN SELECT FIELDS WHERE IsImmutable AND !IsInitOnly
// A field that matches the condition IsImmutable is a field that is assigned only by constructors of its class.
// For an instance field, this means its value will remain constant throught the lifetime of the object.
// For a static field, this means its value will remain constant throught the lifetime of the program.
// In both cases, such field can safely be marked with the C# readonly keyword (ReadOnly in VB.NET).
// The condition IsInitOnly matches fields that are marked with the C# readonly keyword (ReadOnly in VB.NET).
| fields | Size of instance | Full Name |
| Sum: | 1252 | |
| Average: | 3.5268 | |
| Minimum: | 0 | |
| Maximum: | 44 | |
| Standard deviation: | 3.3678 | |
| Variance: | 11.342 | |
WARNING: The following CQL constraint is not satisfied. 124 types on
966 tested match the condition. --> Group {Purity / Immutability /
Side-Effects}
// <Name>Structures should be immutable</Name>
WARN IF Count > 0 IN SELECT TYPES WHERE IsStructure AND !IsImmutable AND !IsInFrameworkAssembly
// It is deemed as a good practice to make your structure immutable.
// An object is immutable if its state doesn’t change once the object has been created.
// Consequently, a structure is immutable if its instances are immutable.
// Immutable types naturally simplify code by limiting side-effects.
// See some explanations on immutability and how NDepend supports it here:
// http://codebetter.com/blogs/patricksmacchia/archive/2008/01/13/immutable-types-understand-them-and-use-them.aspx
| types | # IL instructions | Full Name |
| Sum: | 40133 | |
| Average: | 323.65 | |
| Minimum: | 0 | |
| Maximum: | 10885 | |
| Standard deviation: | 1185 | |
| Variance: | 1404300 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2889 tested match the condition. --> Group {Naming Conventions}
// <Name>Instance fields should be prefixed with a 'm_'</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE
!NameLike "^m_" AND
!IsStatic AND
!IsLiteral AND
!IsGeneratedByCompiler AND
!IsSpecialName AND
!IsEventDelegateObject
// This naming convention provokes debate.
// Don't hesitate to customize the regex of NameLike to your preference.
| fields | Size of instance | Full Name |
| originalWaitHandle | 0 | NativeToManagedCallback.originalWaitHandle |
| dupedWaitHandle | 0 | NativeToManagedCallback.dupedWaitHandle |
| eventSignalledFunction | 4 | NativeToManagedCallback.eventSignalledFunction |
| pContext | 0 | NativeToManagedCallback.pContext |
| t | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>.t |
| t | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>.t |
| t | 0 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>.t |
| _parentExitEvent | 0 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler._parentExitEvent |
| _callManagedPlease | 0 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler._callManagedPlease |
| _managedFunctionDataCanBeWritten | 0 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler._managedFunctionDataCanBeWritten |
| Sum: | 4 | |
| Average: | 0.4 | |
| Minimum: | 0 | |
| Maximum: | 4 | |
| Standard deviation: | 1.2 | |
| Variance: | 1.44 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2889 tested match the condition. --> Group {Naming Conventions}
// <Name>Static fields should be prefixed with a 's_'</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE
!NameLike "^s_" AND
IsStatic AND
!IsLiteral AND
!IsGeneratedByCompiler AND
!IsSpecialName AND
!IsEventDelegateObject
// This naming convention provokes debate.
// Don't hesitate to customize the regex of NameLike to your preference.
| fields | Size of instance | Full Name |
| instance | 0 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.instance |
| pendingCalls | 0 | Microsoft.Xna.Framework.FrameworkDispatcher.pendingCalls |
| pendingCallsCopy | 0 | Microsoft.Xna.Framework.FrameworkDispatcher.pendingCallsCopy |
| PendingOperationsLock | 0 | Microsoft.Xna.Framework.UserAsyncDispatcher.PendingOperationsLock |
| pendingOperations | 0 | Microsoft.Xna.Framework.UserAsyncDispatcher.pendingOperations |
| initialized | 0 | Microsoft.Xna.Framework.UserAsyncDispatcher.initialized |
| parentExitEvent | 0 | Microsoft.Xna.Framework.UserAsyncDispatcher.parentExitEvent |
| status | 0 | Microsoft.Xna.Framework.PowerStatus.status |
| resourceMan | 0 | Microsoft.Xna.Framework.FrameworkResources.resourceMan |
| resourceCulture | 0 | Microsoft.Xna.Framework.FrameworkResources.resourceCulture |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 7 types on 966
tested match the condition. --> Group {Naming Conventions}
// <Name>Abstract base class should be suffixed with 'Base'</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
IsAbstract AND
IsClass AND
DepthOfInheritance == 1 AND // equivalent to: DepthOfDeriveFrom "System.Object" == 1
!NameLike "Base$"
| types | Depth of inheritance | Full Name |
| MediaLibraryEnumerator<T> | 1 | Microsoft.Xna.Framework.Media.MediaLibraryEnumerator<T> |
| WindowMessageHooker | 1 | Microsoft.Xna.Framework.Input.WindowMessageHooker |
| ContentTypeReader | 1 | Microsoft.Xna.Framework.Content.ContentTypeReader |
| Gamer | 1 | Microsoft.Xna.Framework.GamerServices.Gamer |
| GraphicsResource | 1 | Microsoft.Xna.Framework.Graphics.GraphicsResource |
| CompilerIncludeHandler | 1 | Microsoft.Xna.Framework.Graphics.CompilerIncludeHandler |
| RenderTarget | 1 | Microsoft.Xna.Framework.Graphics.RenderTarget |
| Sum: | 7 | |
| Average: | 1 | |
| Minimum: | 1 | |
| Maximum: | 1 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 types on 966
tested match the condition. --> Group {Naming Conventions}
// <Name>Types name should begin with an Upper character</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
!NameLike "^[A-Z]" AND // The name of a type should begin with an Upper letter.
!IsGeneratedByCompiler AND // Except if it is generated by compiler or ...
!IsInFrameworkAssembly // ... if it is declared in a framework assembly.
| types | # IL instructions | Full Name |
| _D3DPRIMITIVETYPE | 0 | _D3DPRIMITIVETYPE |
| _D3DRENDERSTATETYPE | 0 | _D3DRENDERSTATETYPE |
| _D3DSAMPLERSTATETYPE | 0 | _D3DSAMPLERSTATETYPE |
| _D3DTEXTUREFILTERTYPE | 0 | _D3DTEXTUREFILTERTYPE |
| _D3DSTATEBLOCKTYPE | 0 | _D3DSTATEBLOCKTYPE |
| _D3DDEVTYPE | 0 | _D3DDEVTYPE |
| _D3DMULTISAMPLE_TYPE | 0 | _D3DMULTISAMPLE_TYPE |
| _D3DFORMAT | 0 | _D3DFORMAT |
| _D3DPOOL | 0 | _D3DPOOL |
| _D3DBACKBUFFER_TYPE | 0 | _D3DBACKBUFFER_TYPE |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Naming Conventions}
// <Name>Methods name should begin with an Upper character</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS WHERE
!NameLike "^[A-Z]" AND
!(IsClassConstructor OR IsConstructor OR
IsPropertyGetter OR IsPropertySetter OR
IsIndexerGetter OR IsIndexerSetter OR
IsEventAdder OR IsEventRemover OR
IsOperator) AND !IsGeneratedByCompiler AND !IsInFrameworkAssembly
// The name of a regular method should begin with an Upper letter.
| methods | # IL instructions | Full Name |
| !EmbeddedNativeType<_D3DCAPS9>() | 11 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>.!EmbeddedNativeType<_D3DCAPS9>() |
| ~EmbeddedNativeType<_D3DCAPS9>() | 11 | Microsoft.Xna.EmbeddedNativeType<_D3DCAPS9>.~EmbeddedNativeType<_D3DCAPS9>() |
| !EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>() | 11 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>.!EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>() |
| ~EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>() | 11 | Microsoft.Xna.EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>.~EmbeddedNativeType<_D3DPRESENT_PARAMETERS_>() |
| !EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>() | 11 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>.!EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>() |
| ~EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>() | 11 | Microsoft.Xna.EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>.~EmbeddedNativeType<_D3DADAPTER_IDENTIFIER9>() |
| ~WindowsManagedCallbackHandler() | 3 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.~WindowsManagedCallbackHandler() |
| !WindowsManagedCallbackHandler() | 68 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.!WindowsManagedCallbackHandler() |
| raise_CueDestroyed(UInt32) | 8 | Microsoft.Xna.Framework.Audio.UnsafeNativeMethods.raise_CueDestroyed(UInt32) |
| ~XAudio2ShutdownHandler() | 2 | Microsoft.Xna.Framework.Audio.XAudio2ShutdownHandler.~XAudio2ShutdownHandler() |
| Sum: | 147 | |
| Average: | 14.7 | |
| Minimum: | 2 | |
| Maximum: | 68 | |
| Standard deviation: | 18.072 | |
| Variance: | 326.61 | |
WARNING: The following CQL constraint is not satisfied. 10 methods on
5895 tested match the condition. --> Group {Naming Conventions \
Name too long}
// <Name>Avoid methods with name too long</Name>
WARN IF Count > 0 IN SELECT TOP 10 METHODS
WHERE NameLike "^[^\<\(]{35,}.*$" AND
!IsExplicitInterfaceImpl AND !IsInFrameworkAssembly
// The regex matches methods with name longer than 35 characters.
// Method Name doesn't contain the type and namespace prefix, FullName does.
// The regex computes the method name length from the beginning until the first open parenthesis or first lower than (for generic methods).
// Explicit Interface Implementation methods are discarded because their names are prefixed with the interface name.
| methods | # IL instructions | Full Name |
| RegisterNativeToManagedCallbackImpl(Void*,method,Void*) | 91 | Microsoft.Xna.Framework.WindowsManagedCallbackHandler.RegisterNativeToManagedCallbackImpl(Void*,method,Void*) |
| get_AutoGenerateMipMapInvalidLevels() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_AutoGenerateMipMapInvalidLevels() |
| get_CannotCreateDepthBufferOfFormat() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_CannotCreateDepthBufferOfFormat() |
| get_CannotCreateRenderTargetOfFormat() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_CannotCreateRenderTargetOfFormat() |
| get_CannotResolveBackBufferWithActiveRenderTargets() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_CannotResolveBackBufferWithActiveRenderTargets() |
| get_CannotSetAlreadyUsedRenderTarget() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_CannotSetAlreadyUsedRenderTarget() |
| get_CannotUseFormatTypeAsManualWhenLocking() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_CannotUseFormatTypeAsManualWhenLocking() |
| get_ContentManagerCannotChangeRootDirectory() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_ContentManagerCannotChangeRootDirectory() |
| get_CouldNotDeleteContainerAlreadyInUse() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_CouldNotDeleteContainerAlreadyInUse() |
| get_DeviceCannotBeNullOnResourceCreate() | 5 | Microsoft.Xna.Framework.FrameworkResources.get_DeviceCannotBeNullOnResourceCreate() |
| Sum: | 136 | |
| Average: | 13.6 | |
| Minimum: | 5 | |
| Maximum: | 91 | |
| Standard deviation: | 25.8 | |
| Variance: | 665.64 | |
WARNING: The following CQL constraint is not satisfied. 4 types on 966
tested match the condition. --> Group {Naming Conventions \ Name too
long}
// <Name>Avoid types with name too long</Name>
WARN IF Count > 0 IN SELECT TOP 10 TYPES WHERE
NameLike "^[^\<]{35,}.*$" AND
!IsNested AND !IsInFrameworkAssembly
// The regex matches types with name longer than 35 characters.
// Type Name doesn't contain the namespace prefix, FullName does.
// The regex computes the type name length from the beginning until the end or the first lower than (for generic types).
// Nested types are discarded because their names are prefixed with outer type's name.
| types | # IL instructions | Full Name |
| XAUDIO2_WINDOWS_PROCESSOR_SPECIFIER | 0 | XAUDIO2_WINDOWS_PROCESSOR_SPECIFIER |
| ContentSerializerCollectionItemNameAttribute | 15 | Microsoft.Xna.Framework.Content.ContentSerializerCollectionItemNameAttribute |
| ContentSerializerTypeVersionAttribute | 9 | Microsoft.Xna.Framework.Content.ContentSerializerTypeVersionAttribute |
| ContentSerializerRuntimeTypeAttribute | 15 | Microsoft.Xna.Framework.Content.ContentSerializerRuntimeTypeAttribute |
| Sum: | 39 | |
| Average: | 9.75 | |
| Minimum: | 0 | |
| Maximum: | 15 | |
| Standard deviation: | 6.139 | |
| Variance: | 37.688 | |
WARNING: The following CQL constraint is not satisfied. 10 fields on
2889 tested match the condition. --> Group {Naming Conventions \
Name too long}
// <Name>Avoid fields with name too long</Name>
WARN IF Count > 0 IN SELECT TOP 10 FIELDS WHERE
NameLike "^[^\<]{35,}.*$" AND
!IsInFrameworkAssembly
// The regex matches fields with name longer than 35 characters.
// Field Name doesn't contain the type and namespace prefix, FullName does.
| fields | Size of instance | Full Name |
| XACTENGINE_E_NONOTIFICATIONCALLBACK | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_NONOTIFICATIONCALLBACK |
| XACTENGINE_E_NOTIFICATIONREGISTERED | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_NOTIFICATIONREGISTERED |
| XACTENGINE_E_INSTANCELIMITFAILTOPLAY | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_INSTANCELIMITFAILTOPLAY |
| XACTENGINE_E_INVALIDSOUNDOFFSETORINDEX | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_INVALIDSOUNDOFFSETORINDEX |
| XACTENGINE_E_MULTIPLEAUDITIONENGINES | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_MULTIPLEAUDITIONENGINES |
| XACTENGINE_E_AUDITION_INVALIDRPCINDEX | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_AUDITION_INVALIDRPCINDEX |
| XACTENGINE_E_AUDITION_UNKNOWNCOMMAND | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_AUDITION_UNKNOWNCOMMAND |
| XACTENGINE_E_AUDITION_INVALIDDSPINDEX | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_AUDITION_INVALIDDSPINDEX |
| XACTENGINE_E_AUDITION_CREATEDIRECTORYFAILED | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_AUDITION_CREATEDIRECTORYFAILED |
| XACTENGINE_E_AUDITION_INVALIDSESSION | 0 | Microsoft.Xna.Framework.ErrorCodes.XACTENGINE_E_AUDITION_INVALIDSESSION |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 6 fields on
2889 tested match the condition. --> Group {.NET Framework Usage \
System}
// <Name>Enum Storage should be Int32</Name>
WARN IF Count > 0 IN SELECT FIELDS WHERE
NameIs "value__" AND
!IsOfType "OPTIONAL:System.Int32" AND
!IsInFrameworkAssembly
// An enumeration is a value type that defines a set of related named constants. By default,
// the System.Int32 data type is used to store the constant value. Even though you can change
// this underlying type, it is not necessary or recommended for most scenarios. Note that there
// is no significant performance gain in using a data type smaller than Int32. If you cannot
// use the default data type, you should use one of the CLS-compliant integral types, Byte,
// Int16, Int32, or Int64, to ensure that all of the enumeration's values are representable in
// CLS-compliant programming languages.
| fields | Size of instance | Full Name |
| Sum: | 13 | |
| Average: | 2.1667 | |
| Minimum: | 1 | |
| Maximum: | 4 | |
| Standard deviation: | 1.3437 | |
| Variance: | 1.8056 | |
WARNING: The following CQL constraint is not satisfied. 2 methods on
5895 tested match the condition. --> Group {.NET Framework Usage \
System}
// <Name>Do not raise reserved exception types</Name>
WARN IF Count > 0 IN SELECT METHODS WHERE
// The following exception types are reserved and should be thrown only by the Common Language Runtime:
( DepthOfCreateA "OPTIONAL:System.ExecutionEngineException" == 1 OR
DepthOfCreateA "OPTIONAL:System.IndexOutOfRangeException" == 1 OR
DepthOfCreateA "OPTIONAL:System.NullReferenceException" == 1 OR
DepthOfCreateA "OPTIONAL:System.OutOfMemoryException" == 1 OR
DepthOfCreateA "OPTIONAL:System.StackOverflowException" == 1 OR
DepthOfCreateA "OPTIONAL:System.InvalidProgramException" == 1 OR
DepthOfCreateA "OPTIONAL:System.AccessViolationException" == 1 OR
DepthOfCreateA "OPTIONAL:System.CannotUnloadAppDomainException" == 1 OR
DepthOfCreateA "OPTIONAL:System.BadImageFormatException" == 1 OR
DepthOfCreateA "OPTIONAL:System.DataMisalignedException" == 1 )
| methods | DepthOfCreateA "OPTIONAL:System.ExecutionEngineException" | DepthOfCreateA "OPTIONAL:System.IndexOutOfRangeException" | DepthOfCreateA "OPTIONAL:System.NullReferenceException" | DepthOfCreateA "OPTIONAL:System.OutOfMemoryException" | DepthOfCreateA "OPTIONAL:System.StackOverflowException" | DepthOfCreateA "OPTIONAL:System.InvalidProgramException" | DepthOfCreateA "OPTIONAL:System.AccessViolationException" | DepthOfCreateA "OPTIONAL:System.CannotUnloadAppDomainException" | DepthOfCreateA "OPTIONAL:System.BadImageFormatException" | DepthOfCreateA "OPTIONAL:System.DataMisalignedException" | Full Name |
| Sum: | 0 | 1 | 0 | 2 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Average: | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Minimum: | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Maximum: | 0 | 1 | 0 | 1 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Standard deviation: | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
| Variance: | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | 0 | |
WARNING: The following CQL constraint is not satisfied. 14 methods on
5895 tested match the condition. --> Group {.NET Framework Usage \
System.Runtime.InteropServices}
// <Name>P/Invokes should be static and not be visible</Name>
WARN IF Count > 0 IN SELECT METHODS WHERE
!IsInFrameworkAssembly AND
(HasAttribute "OPTIONAL:System.Runtime.InteropServices.DllImportAttribute") AND
( IsPublic OR
!IsStatic)
// Methods marked with the DllImportAttribute attribute (or methods defined using the
// Declare keyword in Visual Basic) use Platform Invocation Services to access unmanaged
// code. Such methods should not be exposed. Keeping these methods private or internal
// ensures that your library cannot be used to breach security by allowing callers access
// to unmanaged APIs they could not call otherwise.
| methods | # IL instructions | Full Name |
| Sum: | 0 | |
| Average: | 0 | |
| Minimum: | 0 | |
| Maximum: | 0 | |
| Standard deviation: | 0 | |
| Variance: | 0 | |
WARNING: The following CQL constraint is not satisfied. 2 types on 966
tested match the condition. --> Group {.NET Framework Usage \
System.Runtime.InteropServices}
// <Name>NativeMethods class should be static and internal</Name>
WARN IF Count > 0 IN SELECT TYPES WHERE
!IsInFrameworkAssembly AND
( NameIs "NativeMethods" OR
NameIs "SafeNativeMethods" OR
NameIs "UnsafeNativeMethods") AND
IsPublic OR
!IsStatic
// Native Methods' classes are declared as internal (Friend, in Visual Basic) and static.
| types | # IL instructions | Full Name |
| Sum: | 1186 | |
| Average: | 593 | |
| Minimum: | 115 | |
| Maximum: | 1071 | |
| Standard deviation: | 478 | |
| Variance: | 228484 | |
WARNING: The following CQL constraint is not satisfied. 246 methods on
5895 tested match the condition. --> Group {.NET Framework Usage \
System.Threading}
// <Name>Don't create threads explicitely</Name>
WARN IF Count > 0 IN SELECT METHODS WHERE
CreateA "OPTIONAL:System.Threading.Thread"
// Prefer using the thread pool instead of creating manually your own thread.
// Threads are costly objects.
// They take approximately 200,000 cycles to create and about 100,000 cycles to destroy.
// By default they reserve 1 megabyte of virtual memory for its stack and use 2,000-8,000 cycles for each context switch.
// As a consequence, it is preferrable to let the thread pool recycle threads.
// Creating custom thread can also be the sign of flawed design, where tasks and threads have affinity.
// It is preferrable to code tasks that can be ran on any thread.
| methods | DepthOfCreateA "OPTIONAL:System.Threading.Thread" | Full Name |
| Sum: | 1007 | |
| Average: | 4.0935 | |
| Minimum: | 0 | |
| Maximum: | 6 | |
| Standard deviation: | 1.0454 | |
| Variance: | 1.0929 | |
WARNING: The following CQL constraint is not satisfied. 1 methods on
5895 tested match the condition. --> Group {.NET Framework Usage \
System.Threading}
// <Name>Don't use Thread.Abort()</Name>
WARN IF Count > 0 IN SELECT METHODS WHERE
IsDirectlyUsing "OPTIONAL:System.Threading.Thread.Abort()" OR
IsDirectlyUsing "OPTIONAL:System.Threading.Thread.Abort(Object)"
// Usage of Thread.Abort() is dangerous.
// More information on this here:
// http://www.interact-sw.co.uk/iangblog/2004/11/12/cancellation
| methods | DepthOfIsUsing "OPTIONAL:System.Threading.Thread.Abort()" | DepthOfIsUsing "OPTIONAL:System.Threading.Thread.Abort(Object)" | Full Name |
| Sum: | 1 | 0 | |
| Average: | 1 | 0 | |
| Minimum: | 1 | 0 | |
| Maximum: | 1 | 0 | |
| Standard deviation: | 0 | 0 | |
| Variance: | 0 | 0 | |
Types Metrics
rank: TypeRank (based on Google PageRank algo)
lcom/lcom HS: Lack of Cohesion Of Methods of a class (HS means Henderson-Sellers formula)
ILCC: Cyclomatic Complexity computed on IL code
Ca: Afferent Coupling
Ce: Efferent Coupling
ABC: Association Between Classes
NOC: Number Of Children
DIT: Depth in Inheritance Tree
A pink cell means that its value belongs to the 15% highest values for its metric
| Type | rank | # ILInst | # lines of code | # lines of comment | % comment | lcom | lcom(HS) | CC | ILCC | Ca | Ce | ABC | # Instance Methods | # Static Methods | # Prop | # Fld | NOC | DIT | Namespace |
| WmpInterface | 9.25 | 3683 | - | - | - | 0 | 0 | - | 428 | 61 | 48 | 24 | 6 | 73 | 0 | 12 | 0 | 2 | Microsoft.Xna.Framework.Media |
| ContentReader | 7.56 | 776 | - | - | - | 0.9 | 0.93 | - | 76 | 61 | 49 | 87 | 31 | 2 | 3 | 10 | 0 | 2 | Microsoft.Xna.Framework.Content |
| ContentTypeReader | 6.62 | 20 | - | - | - | 0.7 | 0.88 | - | 6 | 58 | 7 | 2 | 6 | 0 | 3 | 2 | 54 | 1 | Microsoft.Xna.Framework.Content |
| FrameworkResources | 5.75 | 1442 | - | - | - | 0 | 0 | - | 289 | 100 | 13 | 6 | 1 | 287 | 286 | 2 | 0 | 1 | Microsoft.Xna.Framework |
| ContentTypeReader<T> | 5.59 | 40 | - | - | - | 0 | 0 | - | 5 | 51 | 11 | 5 | 3 | 0 | 0 | 0 | 50 | 2 | Microsoft.Xna.Framework.Content |
| Helpers | 4.93 | 349 | - | - | - | 0 | 0 | - | 74 | 83 | 36 | 66 | 0 | 13 | 0 | 5 | 0 | 1 | Microsoft.Xna.Framework |
| Vector3 | 4.81 | 3847 | - | - | - | 0.15 | 0.15 | - | 175 | 51 | 20 | 27 | 10 | 76 | 11 | 14 | - | - | Microsoft.Xna.Framework |
| Vector4 | 3.45 | 4949 | - | - | - | 0.1 | 0.1 | - | 177 | 34 | 21 | 34 | 11 | 71 | 6 | 10 | - | - | Microsoft.Xna.Framework |
| GraphicsDevice | 3.38 | 6006 | - | - | - | 0.97 | 0.98 | - | 516 | 54 | 99 | 142 | 168 | 1 | 25 | 41 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| IPackedVector | 2.22 | - | - | - | - | - | - | - | - | 21 | 2 | 0 | 2 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Graphics.PackedVector |
| Matrix | 2.15 | 10885 | - | - | - | 0.17 | 0.17 | - | 175 | 26 | 23 | 47 | 21 | 78 | 8 | 17 | - | - | Microsoft.Xna.Framework |
| Vector2 | 2.03 | 2513 | - | - | - | 0.08 | 0.08 | - | 149 | 26 | 19 | 19 | 9 | 67 | 4 | 6 | - | - | Microsoft.Xna.Framework |
| ErrorCodes | 1.83 | - | - | - | - | - | - | - | - | 28 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| NetworkGamer | 1.78 | 237 | - | - | - | 0.76 | 0.81 | - | 25 | 12 | 22 | 21 | 16 | 0 | 13 | 5 | 1 | 2 | Microsoft.Xna.Framework.Net |
| ContentTypeReaderManager | 1.7 | 419 | - | - | - | 0.82 | 0.9 | - | 41 | 9 | 28 | 46 | 2 | 9 | 0 | 4 | 0 | 1 | Microsoft.Xna.Framework.Content |
| SurfaceFormat | 1.6 | - | - | - | - | - | - | - | - | 25 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| Effect | 1.44 | 1256 | - | - | - | 0.93 | 0.95 | - | 128 | 20 | 57 | 66 | 46 | 6 | 8 | 18 | 2 | 1 | Microsoft.Xna.Framework.Graphics |
| MediaLibraryEnumerator<T> | 1.41 | 121 | - | - | - | 0.71 | 0.77 | - | 19 | 14 | 16 | 9 | 13 | 0 | 2 | 4 | 7 | 1 | Microsoft.Xna.Framework.Media |
| Quaternion | 1.4 | 3222 | - | - | - | 0.06 | 0.06 | - | 81 | 13 | 16 | 20 | 10 | 42 | 1 | 5 | - | - | Microsoft.Xna.Framework |
| UnsafeNativeMethods | 1.32 | 1071 | - | - | - | 0 | 0 | - | 80 | 19 | 76 | 233 | 1 | 74 | 0 | 6 | 0 | 1 | Microsoft.Xna.Framework.Media |
| IPackedVector<TPacked> | 1.28 | - | - | - | - | - | - | - | - | 20 | 2 | 0 | 2 | 0 | 1 | 0 | - | - | Microsoft.Xna.Framework.Graphics.PackedVector |
| Color | 1.24 | 873 | - | - | - | 0.86 | 0.86 | - | 174 | 17 | 20 | 13 | 26 | 147 | 147 | 1 | - | - | Microsoft.Xna.Framework.Graphics |
| IDirect3DDevice9 | 1.19 | 0 | - | - | - | 0 | 0 | - | 0 | 25 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| ContentLoadException | 1.17 | 17 | - | - | - | 0 | 0 | - | 4 | 8 | 6 | 3 | 4 | 0 | 0 | 0 | 0 | 2 | Microsoft.Xna.Framework.Content |
| PackUtils | 1.11 | 136 | - | - | - | 0 | 0 | - | 16 | 17 | 6 | 4 | 0 | 7 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Graphics.PackedVector |
| IGraphicsResource | 1.03 | - | - | - | - | - | - | - | - | 21 | 3 | 0 | 3 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Graphics |
| UserPacketBuffer | 1 | 134 | - | - | - | 0.57 | 0.67 | - | 15 | 18 | 14 | 14 | 7 | 0 | 1 | 4 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| Texture2D | 0.97 | 1555 | - | - | - | 0.91 | 0.93 | - | 128 | 20 | 53 | 85 | 29 | 9 | 4 | 8 | 1 | 3 | Microsoft.Xna.Framework.Graphics |
| SharedMemoryRegion | 0.96 | 87 | - | - | - | 0.62 | 0.72 | - | 12 | 17 | 11 | 11 | 7 | 0 | 3 | 3 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| Texture | 0.92 | 1188 | - | - | - | 0.86 | 0.89 | - | 155 | 18 | 50 | 64 | 10 | 22 | 2 | 2 | 4 | 2 | Microsoft.Xna.Framework.Graphics |
| ManagedCallType | 0.9 | - | - | - | - | - | - | - | - | 7 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| Gamer | 0.9 | 324 | - | - | - | 0.79 | 0.84 | - | 32 | 12 | 35 | 37 | 13 | 3 | 6 | 6 | 4 | 1 | Microsoft.Xna.Framework.GamerServices |
| _D3DFORMAT | 0.9 | - | - | - | - | - | - | - | - | 15 | 7 | 0 | - | - | - | - | - | - | |
| NetworkSession | 0.89 | 3266 | - | - | - | 0.95 | 0.96 | - | 270 | 8 | 80 | 147 | 67 | 29 | 21 | 31 | 0 | 1 | Microsoft.Xna.Framework.Net |
| DeviceResourceManager | 0.86 | 806 | - | - | - | 0.41 | 0.44 | - | 69 | 19 | 25 | 46 | 14 | 0 | 0 | 4 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| Rectangle | 0.82 | 858 | - | - | - | 0.24 | 0.25 | - | 81 | 14 | 12 | 7 | 23 | 8 | 8 | 5 | - | - | Microsoft.Xna.Framework |
| PlayerIndex | 0.81 | - | - | - | - | - | - | - | - | 12 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| SignedInGamer | 0.8 | 548 | - | - | - | 0.9 | 0.94 | - | 49 | 7 | 43 | 56 | 15 | 9 | 8 | 12 | 0 | 2 | Microsoft.Xna.Framework.GamerServices |
| IDirect3DTexture9 | 0.77 | 0 | - | - | - | 0 | 0 | - | 0 | 12 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| ID3DXBaseEffect | 0.77 | 0 | - | - | - | 0 | 0 | - | 0 | 11 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| ModelMeshPart | 0.76 | 181 | - | - | - | 0.8 | 0.87 | - | 21 | 6 | 16 | 17 | 13 | 0 | 9 | 12 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| MediaState | 0.72 | - | - | - | - | - | - | - | - | 6 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Media |
| XINPUT_GAMEPAD | 0.71 | 0 | - | - | - | 0 | 0 | - | 0 | 4 | 5 | 0 | 0 | 0 | 0 | 7 | - | - | Microsoft.Xna.Framework.Input |
| TextureUsage | 0.7 | - | - | - | - | - | - | - | - | 16 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| GraphicsResource | 0.68 | 155 | - | - | - | 0.82 | 0.86 | - | 23 | 16 | 17 | 14 | 19 | 0 | 6 | 6 | 9 | 1 | Microsoft.Xna.Framework.Graphics |
| GamerServicesDispatcher | 0.67 | 730 | - | - | - | 0 | 0 | - | 62 | 13 | 51 | 76 | 0 | 18 | 5 | 9 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| Plane | 0.67 | 1588 | - | - | - | 0.14 | 0.15 | - | 67 | 8 | 24 | 45 | 20 | 8 | 0 | 2 | - | - | Microsoft.Xna.Framework |
| VertexBuffer | 0.66 | 881 | - | - | - | 0.78 | 0.82 | - | 77 | 9 | 39 | 43 | 23 | 1 | 3 | 5 | 1 | 2 | Microsoft.Xna.Framework.Graphics |
| UnsafeNativeStructures+XACT_LISTENER_DATA | 0.65 | 0 | - | - | - | 0 | 0 | - | 0 | 4 | 4 | 0 | 0 | 0 | 0 | 5 | - | - | Microsoft.Xna.Framework.Audio |
| _D3DCAPS9 | 0.65 | 0 | - | - | - | 0 | 0 | - | 0 | 11 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| WindowMessageHooker | 0.62 | 143 | - | - | - | 0.6 | 0.67 | - | 22 | 6 | 16 | 19 | 9 | 2 | 1 | 31 | 3 | 1 | Microsoft.Xna.Framework.Input |
| XOverlappedAsyncResult | 0.62 | 134 | - | - | - | 0.8 | 0.88 | - | 17 | 6 | 24 | 22 | 10 | 1 | 4 | 6 | 0 | 1 | Microsoft.Xna.Framework |
| CHandleTable | 0.62 | 0 | - | - | - | 0 | 0 | - | 0 | 6 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| KernelMethods | 0.61 | 87 | - | - | - | 0 | 0 | - | 14 | 13 | 18 | 19 | 0 | 7 | 2 | 5 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| EffectParameter | 0.6 | 4797 | - | - | - | 0.71 | 0.72 | - | 347 | 7 | 45 | 59 | 57 | 0 | 10 | 13 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| IDynamicGraphicsResource | 0.6 | - | - | - | - | - | - | - | - | 12 | 3 | 0 | 4 | 0 | 1 | 0 | - | - | Microsoft.Xna.Framework.Graphics |
| BoundingSphere | 0.58 | 1578 | - | - | - | 0.25 | 0.26 | - | 99 | 8 | 31 | 60 | 24 | 8 | 0 | 2 | - | - | Microsoft.Xna.Framework |
| VertexElementUsage | 0.58 | - | - | - | - | - | - | - | - | 7 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| MathTypeConverter | 0.58 | 194 | - | - | - | 0.81 | 0.93 | - | 19 | 12 | 23 | 19 | 6 | 2 | 0 | 2 | 12 | 3 | Microsoft.Xna.Framework.Design |
| NetworkSessionEndReason | 0.56 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Net |
| UnsafeNativeStructures+XACT_EMITTER_DATA | 0.56 | 0 | - | - | - | 0 | 0 | - | 0 | 4 | 6 | 0 | 0 | 0 | 0 | 17 | - | - | Microsoft.Xna.Framework.Audio |
| XINPUT_VIBRATION | 0.55 | 0 | - | - | - | 0 | 0 | - | 0 | 4 | 3 | 0 | 0 | 0 | 0 | 2 | - | - | Microsoft.Xna.Framework.Input |
| SongCollection | 0.55 | 90 | - | - | - | 0.62 | 0.68 | - | 16 | 7 | 17 | 8 | 11 | 1 | 3 | 3 | 0 | 1 | Microsoft.Xna.Framework.Media |
| FieldPropertyDescriptor | 0.54 | 26 | - | - | - | 0 | 0 | - | 4 | 11 | 8 | 5 | 4 | 0 | 1 | 1 | 0 | 4 | Microsoft.Xna.Framework.Design |
| ButtonValues | 0.53 | - | - | - | - | - | - | - | - | 3 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Input |
| Song | 0.52 | 388 | - | - | - | 0.83 | 0.87 | - | 38 | 5 | 18 | 35 | 22 | 3 | 12 | 10 | 0 | 1 | Microsoft.Xna.Framework.Media |
| SpriteBatch | 0.52 | 1770 | - | - | - | 0.93 | 0.95 | - | 134 | 4 | 75 | 132 | 40 | 2 | 4 | 32 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| BoundingBox | 0.52 | 2063 | - | - | - | 0.16 | 0.17 | - | 151 | 6 | 30 | 42 | 24 | 7 | 0 | 3 | - | - | Microsoft.Xna.Framework |
| ButtonState | 0.52 | - | - | - | - | - | - | - | - | 5 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Input |
| ErrorHandler | 0.51 | 70 | - | - | - | 0 | 0 | - | 20 | 11 | 16 | 28 | 0 | 1 | 0 | 1 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| VertexElement | 0.51 | 168 | - | - | - | 0.78 | 0.82 | - | 21 | 9 | 16 | 7 | 16 | 2 | 6 | 6 | - | - | Microsoft.Xna.Framework.Graphics |
| ContentManager | 0.51 | 338 | - | - | - | 0.71 | 0.77 | - | 41 | 4 | 35 | 49 | 12 | 1 | 2 | 5 | 1 | 1 | Microsoft.Xna.Framework.Content |
| SetDataOptions | 0.49 | - | - | - | - | - | - | - | - | 10 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| UnsafeNativeMethods+SecurityAttributes | 0.49 | 14 | - | - | - | 0 | 0 | - | 3 | 4 | 6 | 1 | 1 | 0 | 0 | 3 | - | - | Microsoft.Xna.Framework.GamerServices |
| ResourceType | 0.49 | - | - | - | - | - | - | - | - | 10 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| GamerPrivilegeOptions | 0.49 | - | - | - | - | - | - | - | - | 4 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| GraphicsAdapter | 0.48 | 631 | - | - | - | 0.65 | 0.67 | - | 83 | 9 | 45 | 35 | 33 | 7 | 16 | 4 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| IDirect3DBaseTexture9 | 0.48 | 0 | - | - | - | 0 | 0 | - | 0 | 9 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| ShaderProfile | 0.48 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| _D3DPOOL | 0.48 | - | - | - | - | - | - | - | - | 9 | 7 | 0 | - | - | - | - | - | - | |
| IndexBuffer | 0.48 | 809 | - | - | - | 0.81 | 0.84 | - | 75 | 7 | 42 | 46 | 24 | 1 | 4 | 6 | 1 | 2 | Microsoft.Xna.Framework.Graphics |
| GamerCollection<T> | 0.48 | 76 | - | - | - | 0.33 | 0.4 | - | 10 | 7 | 21 | 14 | 5 | 1 | 0 | 2 | 2 | 2 | Microsoft.Xna.Framework.GamerServices |
| BoundingFrustum | 0.47 | 1732 | - | - | - | 0.76 | 0.78 | - | 129 | 5 | 25 | 63 | 34 | 4 | 7 | 12 | 0 | 1 | Microsoft.Xna.Framework |
| VertexElementFormat | 0.47 | - | - | - | - | - | - | - | - | 6 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| VertexElementMethod | 0.47 | - | - | - | - | - | - | - | - | 6 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| MathHelper | 0.47 | 209 | - | - | - | 0 | 0 | - | 18 | 5 | 4 | 4 | 0 | 12 | 0 | 7 | 0 | 1 | Microsoft.Xna.Framework |
| NetworkException | 0.46 | 17 | - | - | - | 0 | 0 | - | 4 | 3 | 6 | 3 | 4 | 0 | 0 | 0 | 2 | 2 | Microsoft.Xna.Framework.Net |
| IDirect3DResource9 | 0.46 | 0 | - | - | - | 0 | 0 | - | 0 | 9 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| UserAsyncDispatcher | 0.46 | 201 | - | - | - | 0 | 0 | - | 26 | 8 | 32 | 46 | 0 | 12 | 0 | 4 | 0 | 1 | Microsoft.Xna.Framework |
| Artist | 0.45 | 218 | - | - | - | 0.8 | 0.85 | - | 25 | 4 | 15 | 19 | 14 | 3 | 5 | 6 | 0 | 1 | Microsoft.Xna.Framework.Media |
| Genre | 0.45 | 218 | - | - | - | 0.8 | 0.85 | - | 25 | 4 | 15 | 19 | 14 | 3 | 5 | 6 | 0 | 1 | Microsoft.Xna.Framework.Media |
| UnsafeNativeStructures | 0.45 | 15 | - | - | - | 0 | 0 | - | 1 | 2 | 5 | 3 | 0 | 1 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| Ray | 0.45 | 570 | - | - | - | 0.29 | 0.31 | - | 31 | 5 | 21 | 19 | 12 | 2 | 0 | 2 | - | - | Microsoft.Xna.Framework |
| DeviceType | 0.44 | - | - | - | - | - | - | - | - | 9 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| BufferUsage | 0.43 | - | - | - | - | - | - | - | - | 7 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| DisplayMode | 0.43 | 127 | - | - | - | 0.68 | 0.75 | - | 16 | 9 | 14 | 6 | 9 | 2 | 6 | 4 | - | - | Microsoft.Xna.Framework.Graphics |
| VertexStream | 0.42 | 285 | - | - | - | 0.54 | 0.6 | - | 22 | 5 | 17 | 10 | 9 | 0 | 3 | 6 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| Point | 0.42 | 88 | - | - | - | 0.44 | 0.5 | - | 12 | 3 | 11 | 4 | 5 | 4 | 1 | 3 | - | - | Microsoft.Xna.Framework |
| ModelMesh | 0.42 | 146 | - | - | - | 0.82 | 0.9 | - | 20 | 4 | 20 | 19 | 12 | 0 | 8 | 8 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| BatteryChargeStatus | 0.42 | - | - | - | - | - | - | - | - | 3 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| PowerLineStatus | 0.42 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| PictureAlbum | 0.42 | 180 | - | - | - | 0.81 | 0.85 | - | 24 | 4 | 15 | 15 | 15 | 3 | 6 | 7 | 0 | 1 | Microsoft.Xna.Framework.Media |
| MemberPropertyDescriptor | 0.41 | 42 | - | - | - | 0.5 | 0.57 | - | 9 | 2 | 11 | 6 | 8 | 0 | 2 | 1 | 2 | 3 | Microsoft.Xna.Framework.Design |
| MultiSampleType | 0.41 | - | - | - | - | - | - | - | - | 7 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| VertexDeclaration | 0.4 | 519 | - | - | - | 0.78 | 0.81 | - | 55 | 6 | 27 | 25 | 23 | 3 | 4 | 6 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| GamerCollection<T>+GamerCollectionEnumerator | 0.4 | 32 | - | - | - | 0 | 0 | - | 6 | 6 | 8 | 4 | 6 | 0 | 1 | 1 | - | - | Microsoft.Xna.Framework.GamerServices |
| EffectAnnotationCollection | 0.4 | 141 | - | - | - | 0.43 | 0.5 | - | 15 | 5 | 14 | 13 | 7 | 0 | 1 | 2 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| Album | 0.4 | 325 | - | - | - | 0.89 | 0.93 | - | 36 | 3 | 20 | 30 | 20 | 3 | 8 | 11 | 0 | 1 | Microsoft.Xna.Framework.Media |
| ID3DXEffect | 0.4 | 0 | - | - | - | 0 | 0 | - | 0 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| ModelBone | 0.4 | 39 | - | - | - | 0.73 | 0.83 | - | 8 | 4 | 7 | 2 | 8 | 0 | 5 | 5 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| _GUID | 0.4 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 6 | 0 | 0 | 0 | 0 | 0 | - | - | |
| CurveContinuity | 0.4 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| SpriteBatch+SpriteVertex | 0.4 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 7 | 0 | 0 | 0 | 0 | 7 | - | - | Microsoft.Xna.Framework.Graphics |
| UnsafeNativeMethods | 0.39 | 115 | - | - | - | 0 | 0 | - | 15 | 5 | 19 | 10 | 1 | 6 | 0 | 2 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| GraphicsDeviceCapabilities | 0.39 | 772 | - | - | - | 0.07 | 0.08 | - | 91 | 6 | 35 | 28 | 65 | 2 | 57 | 1 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| HINSTANCE__ | 0.39 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| Guide | 0.38 | 1748 | - | - | - | 0 | 0 | - | 124 | 3 | 44 | 54 | 0 | 38 | 6 | 5 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| _D3DSURFACE_DESC | 0.38 | 0 | - | - | - | 0 | 0 | - | 0 | 8 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| _D3DPRESENT_PARAMETERS_ | 0.37 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| TextureCube | 0.37 | 1498 | - | - | - | 0.89 | 0.92 | - | 121 | 6 | 53 | 84 | 26 | 8 | 3 | 7 | 0 | 3 | Microsoft.Xna.Framework.Graphics |
| XINPUT_CAPABILITIES | 0.37 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 6 | 0 | 0 | 0 | 0 | 5 | - | - | Microsoft.Xna.Framework.Input |
| EmbeddedNativeType<_D3DCAPS9> | 0.37 | 71 | - | - | - | 0.25 | 0.29 | - | 12 | 5 | 7 | 2 | 6 | 2 | 0 | 1 | 0 | 1 | Microsoft.Xna |
| GraphicsDeviceCreationParameters | 0.37 | 88 | - | - | - | 0.54 | 0.65 | - | 17 | 8 | 14 | 9 | 6 | 0 | 3 | 4 | - | - | Microsoft.Xna.Framework.Graphics |
| IDirect3D9 | 0.36 | 0 | - | - | - | 0 | 0 | - | 0 | 6 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| SpriteEffects | 0.36 | - | - | - | - | - | - | - | - | 3 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| UnsafeNativeMethods | 0.36 | 4 | - | - | - | 0 | 0 | - | 1 | 3 | 8 | 1 | 0 | 8 | 0 | 8 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| RenderTargetUsage | 0.36 | - | - | - | - | - | - | - | - | 5 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| UnsafeNativeMethods | 0.35 | 24 | - | - | - | 0 | 0 | - | 4 | 3 | 10 | 3 | 0 | 12 | 0 | 1 | 0 | 1 | Microsoft.Xna.Framework.Input |
| ModelBoneCollection | 0.35 | 61 | - | - | - | 0.5 | 0.67 | - | 9 | 2 | 18 | 10 | 4 | 0 | 0 | 1 | 0 | 2 | Microsoft.Xna.Framework.Graphics |
| VideoSoundtrackType | 0.34 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Media |
| GamePadDeadZone | 0.34 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Input |
| IGraphicsDeviceService | 0.34 | - | - | - | - | - | - | - | - | 3 | 3 | 0 | 9 | 0 | 1 | 0 | - | - | Microsoft.Xna.Framework.Graphics |
| SoundEffect | 0.34 | 628 | - | - | - | 0.89 | 0.92 | - | 79 | 3 | 43 | 69 | 17 | 12 | 10 | 16 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| CurveKey | 0.34 | 237 | - | - | - | 0.57 | 0.6 | - | 30 | 3 | 9 | 4 | 17 | 2 | 5 | 5 | 0 | 1 | Microsoft.Xna.Framework |
| PlaneIntersectionType | 0.34 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| AlbumCollection | 0.33 | 90 | - | - | - | 0.62 | 0.68 | - | 16 | 3 | 17 | 8 | 11 | 1 | 3 | 3 | 0 | 1 | Microsoft.Xna.Framework.Media |
| XINPUT_STATE | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 4 | 0 | 0 | 0 | 0 | 2 | - | - | Microsoft.Xna.Framework.Input |
| GameDefaults | 0.33 | 216 | - | - | - | 0.85 | 0.92 | - | 15 | 3 | 12 | 9 | 13 | 0 | 12 | 12 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| KernelSongCollection | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| KernelMediaItemWithSongs<Microsoft::Xna::Framework::Media::KernelArtist> | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| __s_GUID | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 6 | 0 | 0 | 0 | 0 | 0 | - | - | |
| XnaMediaPlayerCallback | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| IXnaVideoDecoder | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | XnaMediaPlayer |
| KernelMediaItemWithSongs<Microsoft::Xna::Framework::Media::KernelAlbum> | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| KernelPlaylist | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| KernelMediaItemWithSongs<Microsoft::Xna::Framework::Media::KernelGenre> | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| KernelArtist | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| KernelSong | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| IUnknown | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| KernelGenre | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| IWMPMedia | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IKernelMediaCollection | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| IWMPSettings | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IWMPControls | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IWMPPlayer4 | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| PlayerState | 0.33 | - | - | - | - | - | - | - | - | 1 | 7 | 0 | - | - | - | - | - | - | XnaMediaPlayer |
| IWMPPlaylist | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IXnaMediaPlayerCallback | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | XnaMediaPlayer |
| KernelAlbum | 0.33 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | Microsoft.Xna.Framework.Media |
| WmpInterfaceState | 0.33 | - | - | - | - | - | - | - | - | 1 | 7 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Media |
| SoundEffectInstance | 0.33 | 625 | - | - | - | 0.8 | 0.84 | - | 89 | 2 | 29 | 49 | 25 | 0 | 8 | 11 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| CompilerOptions | 0.33 | - | - | - | - | - | - | - | - | 4 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| EffectPool | 0.33 | 159 | - | - | - | 0.81 | 0.88 | - | 22 | 4 | 17 | 12 | 13 | 1 | 1 | 5 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| Picture | 0.33 | 197 | - | - | - | 0.89 | 0.93 | - | 30 | 2 | 18 | 16 | 19 | 3 | 7 | 10 | 0 | 1 | Microsoft.Xna.Framework.Media |
| EffectTechnique | 0.33 | 141 | - | - | - | 0.6 | 0.69 | - | 13 | 4 | 20 | 12 | 7 | 0 | 3 | 6 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| VertexStreamCollection | 0.33 | 84 | - | - | - | 0.17 | 0.25 | - | 8 | 4 | 11 | 10 | 3 | 0 | 0 | 2 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| InstancePlayLimitException | 0.32 | 17 | - | - | - | 0 | 0 | - | 4 | 2 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Audio |
| Playlist | 0.32 | 211 | - | - | - | 0.8 | 0.85 | - | 26 | 2 | 16 | 21 | 14 | 3 | 5 | 6 | 0 | 1 | Microsoft.Xna.Framework.Media |
| HalfUtils | 0.32 | 167 | - | - | - | 0 | 0 | - | 12 | 3 | 5 | 0 | 0 | 2 | 0 | 13 | 0 | 1 | Microsoft.Xna.Framework.Graphics.PackedVector |
| NetworkSessionJoinError | 0.32 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Net |
| PendingOperation | 0.32 | 7 | - | - | - | 0 | 0 | - | 1 | 2 | 5 | 0 | 1 | 0 | 0 | 2 | - | - | Microsoft.Xna.Framework |
| UnsafeNativeMethods+Engine | 0.32 | 1026 | - | - | - | 0 | 0 | - | 89 | 4 | 27 | 14 | 1 | 12 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| MediaSourceType | 0.31 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Media |
| PrimitiveType | 0.31 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| CompilerHelper | 0.31 | 146 | - | - | - | 0 | 0 | - | 18 | 3 | 15 | 10 | 1 | 5 | 0 | 1 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| Texture3D | 0.31 | 1583 | - | - | - | 0.91 | 0.93 | - | 139 | 4 | 47 | 76 | 28 | 12 | 5 | 8 | 0 | 3 | Microsoft.Xna.Framework.Graphics |
| _D3DADAPTER_IDENTIFIER9 | 0.31 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 6 | 0 | 0 | 0 | 0 | 0 | - | - | |
| EffectPassCollection | 0.31 | 151 | - | - | - | 0.57 | 0.67 | - | 15 | 3 | 16 | 15 | 7 | 0 | 1 | 3 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| WindowMessageHooker+Hook+WndProcDelegate | 0.31 | - | - | - | - | - | - | - | - | 2 | 8 | 0 | 4 | 0 | 0 | 0 | 0 | 3 | Microsoft.Xna.Framework.Input |
| HWND__ | 0.31 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| _XACT_CUE_AND_ENGINE | 0.31 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IXACT3Engine | 0.31 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| GamerPrivilegeSetting | 0.31 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| Viewport | 0.31 | 314 | - | - | - | 0.84 | 0.89 | - | 24 | 4 | 13 | 14 | 17 | 2 | 8 | 6 | - | - | Microsoft.Xna.Framework.Graphics |
| SendDataOptions | 0.31 | - | - | - | - | - | - | - | - | 3 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Net |
| Model+<>c__DisplayClass1 | 0.3 | 3 | - | - | - | 1 | 0 | - | 1 | 2 | 5 | 1 | 1 | 0 | 0 | 1 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| SamplerState | 0.3 | 464 | - | - | - | 0.78 | 0.81 | - | 33 | 2 | 11 | 7 | 23 | 0 | 10 | 12 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| NetworkGamerState | 0.3 | - | - | - | - | - | - | - | - | 3 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Net |
| Model | 0.3 | 454 | - | - | - | 0.8 | 0.86 | - | 44 | 1 | 29 | 31 | 12 | 3 | 4 | 4 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| GamerLeftEventArgs | 0.3 | 9 | - | - | - | 0 | 0 | - | 2 | 2 | 4 | 1 | 2 | 0 | 1 | 1 | 0 | 2 | Microsoft.Xna.Framework.Net |
| NetworkSessionEndedEventArgs | 0.3 | 9 | - | - | - | 0 | 0 | - | 2 | 2 | 4 | 2 | 2 | 0 | 1 | 1 | 0 | 2 | Microsoft.Xna.Framework.Net |
| GamerJoinedEventArgs | 0.3 | 9 | - | - | - | 0 | 0 | - | 2 | 2 | 4 | 1 | 2 | 0 | 1 | 1 | 0 | 2 | Microsoft.Xna.Framework.Net |
| HostChangedEventArgs | 0.3 | 15 | - | - | - | 0.33 | 0.5 | - | 3 | 2 | 4 | 1 | 3 | 0 | 2 | 2 | 0 | 2 | Microsoft.Xna.Framework.Net |
| DecompressStream | 0.3 | 292 | - | - | - | 0.85 | 0.9 | - | 37 | 1 | 15 | 12 | 17 | 0 | 5 | 12 | 0 | 3 | Microsoft.Xna.Framework.Content |
| ContentReader+<>c__DisplayClass1<T> | 0.3 | 19 | - | - | - | 0.5 | 1 | - | 3 | 1 | 10 | 4 | 2 | 0 | 0 | 2 | 0 | 1 | Microsoft.Xna.Framework.Content |
| PlayerSignInState | 0.3 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| TextureCollection | 0.3 | 285 | - | - | - | 0.08 | 0.11 | - | 21 | 6 | 26 | 13 | 4 | 0 | 0 | 3 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| QueryUsages | 0.3 | - | - | - | - | - | - | - | - | 6 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| AudioEngine | 0.3 | 415 | - | - | - | 0.86 | 0.91 | - | 49 | 4 | 46 | 61 | 13 | 6 | 2 | 12 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| LocalNetworkGamer | 0.3 | 729 | - | - | - | 0.84 | 0.89 | - | 66 | 3 | 37 | 56 | 18 | 0 | 2 | 5 | 0 | 3 | Microsoft.Xna.Framework.Net |
| ModelEffectCollection | 0.3 | 24 | - | - | - | 0.5 | 0.67 | - | 4 | 2 | 12 | 5 | 4 | 0 | 0 | 1 | 0 | 2 | Microsoft.Xna.Framework.Graphics |
| ModelMeshPartCollection | 0.3 | 11 | - | - | - | 0 | 0 | - | 2 | 2 | 11 | 2 | 2 | 0 | 0 | 1 | 0 | 2 | Microsoft.Xna.Framework.Graphics |
| EffectParameterType | 0.29 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| ID3DXBuffer | 0.29 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| EffectParameterClass | 0.29 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| IDirect3DCubeTexture9 | 0.29 | 0 | - | - | - | 0 | 0 | - | 0 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| TextureFilter | 0.29 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| StorageDevice | 0.29 | 141 | - | - | - | 0.55 | 0.61 | - | 18 | 3 | 16 | 15 | 7 | 3 | 3 | 4 | 0 | 1 | Microsoft.Xna.Framework.Storage |
| AvatarEye | 0.29 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| AvatarMouth | 0.29 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| AvatarEyebrow | 0.29 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| ID3DXConstantTable | 0.29 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| NoAudioHardwareException | 0.29 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Audio |
| DeviceLostException | 0.29 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Graphics |
| DriverInternalErrorException | 0.29 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Graphics |
| OutOfVideoMemoryException | 0.29 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Graphics |
| DeviceNotResetException | 0.29 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Graphics |
| DeviceNotSupportedException | 0.29 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 8 | 3 | 4 | 0 | 0 | 0 | 0 | 4 | Microsoft.Xna.Framework.Graphics |
| DepthFormat | 0.29 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| RenderTarget | 0.29 | 962 | - | - | - | 0.92 | 0.94 | - | 78 | 3 | 47 | 46 | 33 | 0 | 11 | 24 | 2 | 1 | Microsoft.Xna.Framework.Graphics |
| IDirect3DSurface9 | 0.28 | 0 | - | - | - | 0 | 0 | - | 0 | 5 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IDirect3DVertexBuffer9 | 0.28 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| CubeMapFace | 0.28 | - | - | - | - | - | - | - | - | 4 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| SignedInGamerCollection | 0.28 | 28 | - | - | - | 0 | 0 | - | 5 | 4 | 13 | 5 | 2 | 0 | 0 | 0 | 0 | 3 | Microsoft.Xna.Framework.GamerServices |
| EffectParameterCollection | 0.28 | 218 | - | - | - | 0.59 | 0.67 | - | 26 | 4 | 16 | 16 | 9 | 0 | 1 | 3 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| FriendCollection | 0.28 | 98 | - | - | - | 0.4 | 0.5 | - | 11 | 2 | 24 | 17 | 5 | 0 | 1 | 1 | 0 | 3 | Microsoft.Xna.Framework.GamerServices |
| FriendState | 0.28 | - | - | - | - | - | - | - | - | 2 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| TriBool+State | 0.28 | - | - | - | - | - | - | - | - | 1 | 8 | 0 | - | - | - | - | - | - | <CrtImplementationDetails> |
| Progress+State | 0.28 | - | - | - | - | - | - | - | - | 1 | 8 | 0 | - | - | - | - | - | - | <CrtImplementationDetails> |
| CurveKeyCollection | 0.28 | 218 | - | - | - | 0.55 | 0.58 | - | 24 | 2 | 17 | 19 | 16 | 0 | 2 | 4 | 0 | 1 | Microsoft.Xna.Framework |
| CurveLoopType | 0.28 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| ContainmentType | 0.28 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| PowerStatus+Status | 0.28 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 7 | 0 | 0 | 0 | 0 | 5 | - | - | Microsoft.Xna.Framework |
| ClipPlaneCollection | 0.28 | 159 | - | - | - | 0.17 | 0.22 | - | 13 | 2 | 13 | 7 | 4 | 0 | 0 | 3 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| IndexElementSize | 0.27 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| NetworkMachine | 0.27 | 100 | - | - | - | 0 | 0 | - | 9 | 2 | 20 | 25 | 3 | 0 | 1 | 1 | 0 | 1 | Microsoft.Xna.Framework.Net |
| NetworkSessionState | 0.27 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Net |
| EffectPass | 0.27 | 158 | - | - | - | 0.67 | 0.8 | - | 11 | 2 | 18 | 11 | 6 | 0 | 2 | 9 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| IDirect3DVolumeTexture9 | 0.27 | 0 | - | - | - | 0 | 0 | - | 0 | 4 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| tagPALETTEENTRY | 0.27 | 0 | - | - | - | 0 | 0 | - | 0 | 4 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| nothrow_t | 0.27 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | std |
| GamerPresenceMode | 0.27 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| WindowMessageHookerTester+WndProcDelegate | 0.26 | - | - | - | - | - | - | - | - | 1 | 9 | 0 | 4 | 0 | 0 | 0 | 0 | 3 | Microsoft.Xna.Framework.Input |
| Matrix+VectorBasis | 0.26 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 3 | 0 | 0 | 0 | 0 | 3 | - | - | Microsoft.Xna.Framework |
| Matrix+CanonicalBasis | 0.26 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 3 | 0 | 0 | 0 | 0 | 3 | - | - | Microsoft.Xna.Framework |
| KernelReturnCode | 0.26 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| TextureAddressMode | 0.26 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| _D3DRESOURCETYPE | 0.26 | - | - | - | - | - | - | - | - | 3 | 7 | 0 | - | - | - | - | - | - | |
| GamerPrivilegeException | 0.26 | 17 | - | - | - | 0 | 0 | - | 4 | 2 | 6 | 3 | 4 | 0 | 0 | 0 | 0 | 2 | Microsoft.Xna.Framework.GamerServices |
| SaveStateMode | 0.26 | - | - | - | - | - | - | - | - | 3 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| Buttons | 0.26 | - | - | - | - | - | - | - | - | 2 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Input |
| PictureCollection | 0.25 | 90 | - | - | - | 0.62 | 0.68 | - | 16 | 2 | 17 | 8 | 11 | 1 | 3 | 3 | 0 | 1 | Microsoft.Xna.Framework.Media |
| TextureInformation | 0.25 | 189 | - | - | - | 0.81 | 0.86 | - | 24 | 4 | 19 | 10 | 16 | 2 | 7 | 7 | - | - | Microsoft.Xna.Framework.Graphics |
| TextureCreationParameters | 0.25 | 247 | - | - | - | 0.86 | 0.89 | - | 32 | 4 | 18 | 9 | 22 | 4 | 10 | 10 | - | - | Microsoft.Xna.Framework.Graphics |
| X3DAUDIO_LISTENER | 0.25 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| X3DAUDIO_EMITTER | 0.25 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| VoiceState | 0.25 | - | - | - | - | - | - | - | - | 2 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Audio |
| AudioListener | 0.25 | 65 | - | - | - | 0 | 0 | - | 9 | 3 | 5 | 9 | 9 | 0 | 4 | 1 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| AudioEmitter | 0.25 | 97 | - | - | - | 0 | 0 | - | 12 | 3 | 10 | 15 | 11 | 0 | 5 | 1 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| _D3DXMACRO | 0.25 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| StorageContainer | 0.25 | 166 | - | - | - | 0.86 | 0.92 | - | 25 | 2 | 20 | 29 | 10 | 4 | 5 | 6 | 0 | 1 | Microsoft.Xna.Framework.Storage |
| Video | 0.25 | 50 | - | - | - | 0.75 | 0.86 | - | 8 | 2 | 8 | 3 | 8 | 0 | 7 | 7 | 0 | 1 | Microsoft.Xna.Framework.Media |
| GamerServicesNotAvailableException | 0.25 | 17 | - | - | - | 0 | 0 | - | 4 | 2 | 6 | 3 | 4 | 0 | 0 | 0 | 0 | 2 | Microsoft.Xna.Framework.GamerServices |
| ID3DXEffectPool | 0.25 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| _SECURITY_ATTRIBUTES | 0.25 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IDirect3DIndexBuffer9 | 0.25 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| UnsafeNativeMethods+Cue | 0.25 | 411 | - | - | - | 0 | 0 | - | 40 | 2 | 15 | 11 | 1 | 8 | 0 | 1 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| ReflectiveReaderMemberHelper | 0.25 | 339 | - | - | - | 0.75 | 0.86 | - | 37 | 2 | 28 | 40 | 2 | 6 | 0 | 5 | 0 | 1 | Microsoft.Xna.Framework.Content |
| ModelMeshPartCollection+Enumerator | 0.24 | 44 | - | - | - | 0.42 | 0.5 | - | 7 | 1 | 10 | 0 | 6 | 0 | 1 | 2 | - | - | Microsoft.Xna.Framework.Graphics |
| _D3DVOLUME_DESC | 0.24 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IXACT3Cue | 0.24 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| UnsafeNativeMethods+WaveBank | 0.24 | 363 | - | - | - | 0 | 0 | - | 32 | 2 | 15 | 7 | 1 | 4 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| RacingCameraAngle | 0.24 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| ControllerSensitivity | 0.24 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| GameDifficulty | 0.24 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| AudioStopOptions | 0.24 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Audio |
| tagRECT | 0.24 | 0 | - | - | - | 0 | 0 | - | 0 | 3 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| FilterOptions | 0.24 | - | - | - | - | - | - | - | - | 2 | 5 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| ModelEffectCollection+Enumerator | 0.24 | 31 | - | - | - | 0.17 | 0.2 | - | 6 | 1 | 10 | 5 | 6 | 0 | 1 | 1 | - | - | Microsoft.Xna.Framework.Graphics |
| UnsafeNativeMethods+SoundBank | 0.24 | 489 | - | - | - | 0 | 0 | - | 46 | 2 | 19 | 10 | 1 | 5 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Audio |
| IProxyProcessHandler | 0.24 | - | - | - | - | - | - | - | - | 2 | 3 | 0 | 5 | 0 | 5 | 0 | - | - | Microsoft.Xna.Framework |
| EmbeddedNativeType<_D3DPRESENT_PARAMETERS_> | 0.23 | 71 | - | - | - | 0.25 | 0.29 | - | 12 | 2 | 7 | 2 | 6 | 2 | 0 | 1 | 0 | 1 | Microsoft.Xna |
| _D3DXIMAGE_FILEFORMAT | 0.23 | - | - | - | - | - | - | - | - | 2 | 7 | 0 | - | - | - | - | - | - | |
| ImageFileFormat | 0.23 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| FrameworkDispatcher | 0.23 | 87 | - | - | - | 0 | 0 | - | 16 | 2 | 15 | 18 | 0 | 4 | 0 | 2 | 0 | 1 | Microsoft.Xna.Framework |
| MouseMessageHooker | 0.23 | 23 | - | - | - | 0 | 0 | - | 5 | 1 | 8 | 2 | 2 | 2 | 1 | 1 | 0 | 2 | Microsoft.Xna.Framework.Input |
| MouseState | 0.23 | 253 | - | - | - | 0.64 | 0.69 | - | 32 | 1 | 10 | 8 | 12 | 2 | 8 | 8 | - | - | Microsoft.Xna.Framework.Input |
| tagPOINT | 0.23 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| WindowMessageHooker+Hook | 0.23 | 116 | - | - | - | 0.38 | 0.56 | - | 11 | 1 | 13 | 17 | 3 | 0 | 0 | 8 | 0 | 1 | Microsoft.Xna.Framework.Input |
| CueDestroyedEventHandler | 0.23 | - | - | - | - | - | - | - | - | 2 | 8 | 0 | 4 | 0 | 0 | 0 | 0 | 3 | Microsoft.Xna.Framework.Audio |
| _D3DXFUNCTION_DESC | 0.23 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| SystemNativeMethods | 0.23 | 76 | - | - | - | 0 | 0 | - | 12 | 1 | 21 | 19 | 1 | 4 | 0 | 1 | 0 | 1 | Microsoft.Xna.Framework |
| EffectAnnotation | 0.23 | 216 | - | - | - | 0.75 | 0.8 | - | 25 | 1 | 23 | 15 | 16 | 0 | 6 | 8 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| PresentInterval | 0.23 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| ObjectReader | 0.23 | 7 | - | - | - | 0 | 0 | - | 2 | 1 | 7 | 3 | 2 | 0 | 0 | 0 | 0 | 2 | Microsoft.Xna.Framework.Content |
| ReflectiveReader<T> | 0.23 | 225 | - | - | - | 0.55 | 0.69 | - | 21 | 1 | 30 | 32 | 5 | 0 | 2 | 4 | 0 | 2 | Microsoft.Xna.Framework.Content |
| AvatarExpression | 0.23 | 35 | - | - | - | 0.8 | 0.89 | - | 10 | 2 | 7 | 3 | 10 | 0 | 5 | 5 | - | - | Microsoft.Xna.Framework.GamerServices |
| IDirect3DVertexDeclaration9 | 0.23 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| ClipPlane | 0.23 | 141 | - | - | - | 0.35 | 0.44 | - | 11 | 1 | 11 | 4 | 5 | 0 | 2 | 4 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| FriendGamer | 0.23 | 128 | - | - | - | 0.62 | 0.67 | - | 14 | 2 | 10 | 4 | 14 | 0 | 13 | 3 | 0 | 2 | Microsoft.Xna.Framework.GamerServices |
| GuideAlreadyVisibleException | 0.23 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 6 | 3 | 4 | 0 | 0 | 0 | 0 | 2 | Microsoft.Xna.Framework.GamerServices |
| NetworkSessionJoinException | 0.23 | 56 | - | - | - | 0.38 | 0.43 | - | 10 | 1 | 10 | 9 | 8 | 0 | 1 | 1 | 0 | 3 | Microsoft.Xna.Framework.Net |
| NetworkNotAvailableException | 0.23 | 17 | - | - | - | 0 | 0 | - | 4 | 1 | 7 | 4 | 4 | 0 | 0 | 0 | 0 | 3 | Microsoft.Xna.Framework.Net |
| IDirect3DPixelShader9 | 0.23 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| IDirect3DVertexShader9 | 0.23 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| PictureAlbumCollection | 0.23 | 90 | - | - | - | 0.62 | 0.68 | - | 16 | 1 | 17 | 8 | 11 | 1 | 3 | 3 | 0 | 1 | Microsoft.Xna.Framework.Media |
| SongLibraryEnumerator | 0.22 | 16 | - | - | - | 0 | 0 | - | 5 | 1 | 8 | 4 | 4 | 1 | 1 | 1 | 0 | 2 | Microsoft.Xna.Framework.Media |
| SpriteFont | 0.22 | 618 | - | - | - | 0.75 | 0.81 | - | 41 | 2 | 29 | 36 | 13 | 0 | 4 | 9 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| CompilerIncludeHandler | 0.22 | 100 | - | - | - | 0 | 0 | - | 13 | 2 | 16 | 10 | 8 | 0 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| PixelShader | 0.22 | 383 | - | - | - | 0.75 | 0.78 | - | 42 | 3 | 25 | 26 | 22 | 1 | 4 | 6 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| TargetPlatform | 0.22 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework |
| VertexShader | 0.22 | 384 | - | - | - | 0.75 | 0.78 | - | 42 | 3 | 25 | 26 | 22 | 1 | 4 | 6 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| CompilerMacro | 0.22 | 197 | - | - | - | 0.43 | 0.5 | - | 23 | 2 | 15 | 8 | 5 | 2 | 2 | 2 | - | - | Microsoft.Xna.Framework.Graphics |
| GamePadType | 0.22 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Input |
| KernelMethods+ProxyProcess | 0.22 | 487 | - | - | - | 0.8 | 0.85 | - | 38 | 1 | 38 | 62 | 14 | 2 | 6 | 11 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| EffectTechniqueCollection | 0.22 | 219 | - | - | - | 0.59 | 0.67 | - | 25 | 2 | 20 | 21 | 9 | 0 | 1 | 3 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| _D3DXPARAMETER_DESC | 0.22 | 0 | - | - | - | 0 | 0 | - | 0 | 2 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| GenericList<unsigned short *> | 0.22 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| NetworkSessionProperties | 0.22 | 237 | - | - | - | 0.68 | 0.71 | - | 35 | 2 | 23 | 18 | 19 | 3 | 1 | 4 | 0 | 1 | Microsoft.Xna.Framework.Net |
| AvailableNetworkSessionCollection | 0.22 | 97 | - | - | - | 0.4 | 0.5 | - | 12 | 2 | 23 | 17 | 5 | 0 | 1 | 1 | 0 | 2 | Microsoft.Xna.Framework.Net |
| AvatarBodyType | 0.22 | - | - | - | - | - | - | - | - | 1 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.GamerServices |
| NativeMethods | 0.22 | 60 | - | - | - | 0 | 0 | - | 6 | 1 | 7 | 4 | 0 | 3 | 0 | 0 | 0 | 1 | Microsoft.Xna.Framework.Content |
| GraphicsDeviceCapabilities+DeviceCaps | 0.22 | 217 | - | - | - | 0.48 | 0.5 | - | 29 | 2 | 9 | 3 | 21 | 2 | 18 | 2 | - | - | Microsoft.Xna.Framework.Graphics |
| AvatarDescription | 0.22 | 123 | - | - | - | 0.81 | 0.92 | - | 17 | 2 | 14 | 10 | 6 | 3 | 4 | 4 | 0 | 1 | Microsoft.Xna.Framework.GamerServices |
| _D3DVERTEXBUFFER_DESC | 0.22 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| EffectFunction | 0.22 | 47 | - | - | - | 0.33 | 0.5 | - | 4 | 1 | 12 | 4 | 3 | 0 | 1 | 3 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| ShaderConstant | 0.22 | 1223 | - | - | - | 0.83 | 0.86 | - | 146 | 1 | 25 | 8 | 30 | 0 | 11 | 12 | 0 | 1 | Microsoft.Xna.Framework.Graphics |
| KeyboardState | 0.22 | 620 | - | - | - | 0.38 | 0.42 | - | 55 | 1 | 16 | 9 | 9 | 4 | 0 | 16 | - | - | Microsoft.Xna.Framework.Input |
| Blend | 0.22 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| BlendFunction | 0.22 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| CompareFunction | 0.22 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| CullMode | 0.22 | - | - | - | - | - | - | - | - | 2 | 4 | 0 | - | - | - | - | - | - | Microsoft.Xna.Framework.Graphics |
| IXACT3WaveBank | 0.22 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| XACT_STREAMING_PARAMETERS | 0.22 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| _XACT_WAVEBANK_AND_ENGINE | 0.22 | 0 | - | - | - | 0 | 0 | - | 0 | 1 | 5 | 0 | 0 | 0 | 0 | 0 | - | - | |
| PowerStatus | 0.22 | 61 | - | - | - | 0 | 0 | - | 11 | 1 | 12 | 12 | 0 | 10 | 5 | 2 | 0 | 1 | Microsoft.Xna.Framework |
| MediaPlayer | 0.22 | 194 | - | - | - | 0 | 0 | - | 41 | 1 | 22 | 33 | 0 | 30 | 9 | 5 | 0 | 1 | Microsoft.Xna.Framework.Media |
| FrameworkDispatcher+ManagedCallAndArg | 0.22 | 7 | - | - | - | 0 | 0 | - | 1 | 1 | 5 | 1 | 1 | 0 | 0 | 2 | - | - | Microsoft.Xna.Framework |
| Curve | 0.21 | 630 | - | - | - | 0.67 | 0.71 | - | 54 | 1 | 15 | 23 | 15 | 1 | 4 | 3 | 0 | 1 | Microsoft.Xna.Framework |
| UnsafeNativeMethods | 0.21 | 0 | - | |