microsoft / DirectXTK12
File Size

The distribution of size of files (measured in lines of code).

Intro
  • File size measurements show the distribution of size of files.
  • Files are classified in four categories based on their size (lines of code): 1-100 (very small files), 101-200 (small files), 201-500 (medium size files), 501-1000 (long files), 1001+(very long files).
  • It is a good practice to keep files small. Long files may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
File Size Overall
  • There are 136 files with 51,505 lines of code.
    • 6 very long files (12,161 lines of code)
    • 26 long files (17,238 lines of code)
    • 47 medium size files (16,764 lines of codeclsfd_ftr_w_mp_ins)
    • 23 small files (3,425 lines of code)
    • 34 very small files (1,917 lines of code)
23% | 33% | 32% | 6% | 3%
Legend:
1001+
501-1000
201-500
101-200
1-100


explore: zoomable circles | sunburst | 3D view
File Size per Extension
1001+
501-1000
201-500
101-200
1-100
cpp19% | 45% | 31% | 2% | <1%
h36% | 23% | 16% | 13% | 9%
inl100% | 0% | 0% | 0% | 0%
vcxproj0% | 63% | 36% | 0% | 0%
filters0% | 0% | 100% | 0% | 0%
fx0% | 0% | 56% | 33% | 10%
cmd0% | 0% | 100% | 0% | 0%
fxh0% | 0% | 28% | 41% | 30%
inc0% | 0% | 0% | 100% | 0%
hlsli0% | 0% | 0% | 0% | 100%
hlsl0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Src26% | 39% | 25% | 5% | 2%
Inc38% | 23% | 17% | 11% | 9%
Audio38% | 31% | 28% | 0% | 1%
ROOT0% | 37% | 62% | 0% | 0%
Src/Shaders0% | 0% | 52% | 30% | 16%
Longest Files (Top 50)
File# lines# units
d3dx12.h
in Src
4277 318
inl
SimpleMath.inl
in Inc
3085 226
GamePad.cpp
in Src
1378 42
AudioEngine.cpp
in Audio
1246 38
WaveBankReader.cpp
in Audio
1104 37
Mouse.cpp
in Src
1071 50
SpriteBatch.cpp
in Src
875 29
LoaderHelpers.h
in Src
851 13
DDSTextureLoader.cpp
in Src
838 15
ResourceUploadBatch.cpp
in Src
805 23
Geometry.cpp
in Src
800 19
WICTextureLoader.cpp
in Src
762 14
SimpleMath.h
in Inc
757 90
vcxproj
DirectXTK_GDK_2019.vcxproj
in root
712 -
vcxproj
DirectXTK_GDK_2017.vcxproj
in root
703 -
ModelLoadCMO.cpp
in Src
700 8
SoundCommon.cpp
in Audio
694 12
SoundStreamInstance.cpp
in Audio
667 34
PBREffect.cpp
in Src
640 27
Model.cpp
in Src
631 24
NormalMapEffect.cpp
in Src
631 29
ModelLoadSDKMESH.cpp
in Src
617 8
ScreenGrab.cpp
in Src
586 3
vcxproj
DirectXTK_Windows10_2019.vcxproj
in root
583 -
vcxproj
DirectXTK_Windows10_2022.vcxproj
in root
583 -
Effects.h
in Inc
581 -
vcxproj
DirectXTK_Windows10_2017.vcxproj
in root
575 -
BasicEffect.cpp
in Src
559 24
EnvironmentMapEffect.cpp
in Src
541 25
WAVFileReader.cpp
in Audio
538 8
Audio.h
in Inc
505 16
CommonStates.cpp
in Src
504 14
XboxDDSTextureLoader.cpp
in Src
498 8
Model.h
in Inc
491 17
vcxproj
DirectXTK_Desktop_2019_Win10.vcxproj
in root
478 -
vcxproj
DirectXTK_Desktop_2022_Win10.vcxproj
in root
478 -
SpriteFont.cpp
in Src
478 24
vcxproj
DirectXTK_Desktop_2017_Win10.vcxproj
in root
472 -
GeometricPrimitive.cpp
in Src
468 33
SoundEffect.cpp
in Audio
459 21
GraphicsMemory.cpp
in Src
457 24
Keyboard.cpp
in Src
444 23
EffectFactory.cpp
in Src
441 10
Keyboard.h
in Inc
437 7
WaveBank.cpp
in Audio
435 32
BasicPostProcess.cpp
in Src
435 13
filters
DirectXTK_XboxOneXDK_2017.vcxproj.filters
in root
389 -
filters
DirectXTK_GDK_2017.vcxproj.filters
in root
387 -
filters
DirectXTK_GDK_2019.vcxproj.filters
in root
387 -
filters
DirectXTK_Desktop_2017_Win10.vcxproj.filters
in root
381 -
Files With Most Units (Top 20)
File# lines# units
d3dx12.h
in Src
4277 318
inl
SimpleMath.inl
in Inc
3085 226
SimpleMath.h
in Inc
757 90
Mouse.cpp
in Src
1071 50
GamePad.cpp
in Src
1378 42
AudioEngine.cpp
in Audio
1246 38
WaveBankReader.cpp
in Audio
1104 37
SoundStreamInstance.cpp
in Audio
667 34
GeometricPrimitive.cpp
in Src
468 33
WaveBank.cpp
in Audio
435 32
GamePad.h
in Inc
230 29
NormalMapEffect.cpp
in Src
631 29
SpriteBatch.cpp
in Src
875 29
DynamicSoundEffectInstance.cpp
in Audio
262 27
PBREffect.cpp
in Src
640 27
SkinnedEffect.cpp
in Src
371 26
EnvironmentMapEffect.cpp
in Src
541 25
BasicEffect.cpp
in Src
559 24
GraphicsMemory.cpp
in Src
457 24
Model.cpp
in Src
631 24
Files With Long Lines (Top 20)

There are 92 files with lines longer than 120 characters. In total, there are 1221 long lines.

File# lines# units# long lines
d3dx12.h
in Src
4277 318 120
SimpleMath.h
in Inc
757 90 64
vcxproj
DirectXTK_GDK_2017.vcxproj
in root
703 - 47
vcxproj
DirectXTK_GDK_2019.vcxproj
in root
712 - 47
ScreenGrab.cpp
in Src
586 3 42
NormalMapEffect.cpp
in Src
631 29 40
EnvironmentMapEffect.cpp
in Src
541 25 32
SoundCommon.cpp
in Audio
694 12 31
ModelLoadSDKMESH.cpp
in Src
617 8 30
Model.h
in Inc
491 17 29
Mouse.cpp
in Src
1071 50 28
GeometricPrimitive.h
in Inc
63 - 26
inl
SimpleMath.inl
in Inc
3085 226 26
SpriteBatch.cpp
in Src
875 29 25
GamePad.cpp
in Src
1378 42 24
SpriteFont.cpp
in Src
478 24 23
VertexTypes.cpp
in Src
102 - 23
vcxproj
DirectXTK_Desktop_2017_Win10.vcxproj
in root
472 - 22
vcxproj
DirectXTK_Desktop_2019_Win10.vcxproj
in root
478 - 22
vcxproj
DirectXTK_Desktop_2022_Win10.vcxproj
in root
478 - 22