microsoft / ExpressivePixels
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 175 files with 22,748 lines of code.
    • 3 very long files (5,724 lines of code)
    • 4 long files (2,867 lines of code)
    • 17 medium size files (4,832 lines of codeclsfd_ftr_w_mp_ins)
    • 30 small files (4,676 lines of code)
    • 121 very small files (4,649 lines of code)
25% | 12% | 21% | 20% | 20%
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
h57% | 0% | 3% | 13% | 24%
cpp14% | 7% | 37% | 19% | 21%
c0% | 62% | 23% | 11% | 2%
hpp0% | 91% | 0% | 0% | 8%
xaml0% | 0% | 50% | 48% | 1%
py0% | 0% | 22% | 56% | 21%
cs0% | 0% | 15% | 47% | 37%
S0% | 0% | 100% | 0% | 0%
ld0% | 0% | 0% | 100% | 0%
cmd0% | 0% | 0% | 0% | 100%
yaml0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio83% | 0% | 0% | 13% | 2%
Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio Minimal95% | 0% | 0% | 0% | 4%
Firmware/ExpressivePixelsCore20% | 10% | 36% | 14% | 17%
Firmware/Segger0% | 51% | 28% | 20% | 0%
Firmware/ExpressivePixelsMIDI0% | 62% | 0% | 23% | 14%
Firmware/Platform_NordicSDK0% | 15% | 31% | 13% | 38%
Windows/ExpressivePixelsActivator0% | 0% | 24% | 48% | 27%
Firmware/Platform_Arduino0% | 0% | 22% | 29% | 48%
Firmware0% | 0% | 100% | 0% | 0%
Firmware/RaspberryPi0% | 0% | 0% | 72% | 27%
Firmware/Arduino0% | 0% | 0% | 38% | 61%
Longest Files (Top 50)
File# lines# units
sdk_config.h
in Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio Minimal/pca10056/s140/config
2287 -
sdk_config.h
in Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio/pca10056/s140/config
2287 -
EPXApp.cpp
in Firmware/ExpressivePixelsCore
1150 38
SEGGER_RTT.c
in Firmware/Segger
902 37
MIDI.hpp
in Firmware/ExpressivePixelsMIDI
847 76
EPXApp_CStorage.cpp
in Firmware/ExpressivePixelsCore
595 25
EPXPlatform_BLE.c
in Firmware/Platform_NordicSDK
523 30
JsonStreamingParser.cpp
in Firmware/ExpressivePixelsCore
403 29
EPXPlatform_CStorage.cpp
in Firmware/Platform_Arduino
396 22
EPXApp_Trigger_Switch.cpp
in Firmware/ExpressivePixelsCore
336 15
EPXPlatform_CStorage.cpp
in Firmware/Platform_NordicSDK
318 23
CAnimationManager.cpp
in Firmware/ExpressivePixelsCore
317 12
EPXApp_Payload.cpp
in Firmware/ExpressivePixelsCore
305 14
SEGGER_RTT_printf.c
in Firmware/Segger
281 5
xaml
MainWindow.xaml
in Windows/ExpressivePixelsActivator/WPF
276 -
EPXApp.h
in Firmware/ExpressivePixelsCore
271 9
EPXPlatform_CFlashStorageDevice.cpp
in Firmware/Platform_NordicSDK
265 18
EPXPlatform_BLE_DualNUS.c
in Firmware/Platform_NordicSDK
263 6
uf2conv.py
in Firmware
259 13
EPXPlatform_Runtime.cpp
in Firmware/Platform_NordicSDK
244 22
EPXApp_JSON.cpp
in Firmware/ExpressivePixelsCore
241 3
BLE_DeviceManager.cs
in Windows/ExpressivePixelsActivator/ConnectivityCore
225 6
S
SEGGER_RTT_ASM_ARMv7M.S
in Firmware/Segger
221 -
EPXApp_MIDI.cpp
in Firmware/ExpressivePixelsCore
211 13
MainWindow.xaml.cs
in Windows/ExpressivePixelsActivator/WPF
200 14
BLE_Device.cs
in Windows/ExpressivePixelsActivator/ConnectivityCore
199 11
SEGGER_RTT_Conf.h
in Firmware/Segger
193 -
EPXPlatform_Runtime.cpp
in Firmware/Platform_Arduino
192 16
EPXPlatform_BLE.cpp
in Firmware/Platform_Arduino
189 14
sparklet.py
in Firmware/RaspberryPi
189 28
animate.py
in Firmware/RaspberryPi
187 21
MIDI.h
in Firmware/ExpressivePixelsMIDI
172 -
CDisplayArray.cpp
in Firmware/ExpressivePixelsCore
167 16
xaml
ExpressivePixelSliderStyle.xaml
in Windows/ExpressivePixelsActivator/WPF/Styles
167 -
EPXPlatform_USB.c
in Firmware/Platform_NordicSDK
164 7
BLE_UARTService.cs
in Windows/ExpressivePixelsActivator/ConnectivityCore
163 8
EPXVariant.h
in Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio
160 -
SEGGER_RTT.h
in Firmware/Segger
159 -
EPXPlatform_SPIClass.cpp
in Firmware/Platform_NordicSDK
156 10
MainPage.xaml.cs
in Windows/ExpressivePixelsActivator/UWP
155 9
EPXPlatform_CBatteryMonitor.cpp
in Firmware/Platform_NordicSDK
154 13
protocol.py
in Firmware/RaspberryPi
154 6
CBLEBeaconActivation.cpp
in Firmware/ExpressivePixelsCore
151 6
AdafruitRGBMatrix_EPXDriver.cpp
in Firmware/Arduino
147 10
AdafruitRGBMatrix_EPXDriver.cpp
in Firmware/Platform_Arduino
147 10
CCOBSProtocol.cpp
in Firmware/ExpressivePixelsCore
146 5
EPXApp_ChannelConstants.h
in Firmware/ExpressivePixelsCore
145 -
midi_Defs.h
in Firmware/ExpressivePixelsMIDI
144 1
ble_device.py
in Firmware/RaspberryPi
130 17
ld
ble_app_hrs_gcc_nrf52.ld
in Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio/pca10056/s140/armgcc
121 -
Files With Most Units (Top 20)
File# lines# units
MIDI.hpp
in Firmware/ExpressivePixelsMIDI
847 76
EPXApp.cpp
in Firmware/ExpressivePixelsCore
1150 38
SEGGER_RTT.c
in Firmware/Segger
902 37
EPXPlatform_BLE.c
in Firmware/Platform_NordicSDK
523 30
JsonStreamingParser.cpp
in Firmware/ExpressivePixelsCore
403 29
sparklet.py
in Firmware/RaspberryPi
189 28
EPXApp_CStorage.cpp
in Firmware/ExpressivePixelsCore
595 25
EPXPlatform_CStorage.cpp
in Firmware/Platform_NordicSDK
318 23
EPXPlatform_CStorage.cpp
in Firmware/Platform_Arduino
396 22
EPXPlatform_Runtime.cpp
in Firmware/Platform_NordicSDK
244 22
animate.py
in Firmware/RaspberryPi
187 21
EPXPlatform_CFlashStorageDevice.cpp
in Firmware/Platform_NordicSDK
265 18
ble_device.py
in Firmware/RaspberryPi
130 17
CDisplayArray.cpp
in Firmware/ExpressivePixelsCore
167 16
EPXPlatform_Runtime.cpp
in Firmware/Platform_Arduino
192 16
ButtonAttachedBehavior.cs
in Windows/ExpressivePixelsActivator/WPF/Controls
86 16
EPXApp_Trigger_Switch.cpp
in Firmware/ExpressivePixelsCore
336 15
CBLEChannel.cpp
in Firmware/ExpressivePixelsCore
86 14
EPXApp_Payload.cpp
in Firmware/ExpressivePixelsCore
305 14
EPXPlatform_BLE.cpp
in Firmware/Platform_Arduino
189 14
Files With Long Lines (Top 20)

There are 65 files with lines longer than 120 characters. In total, there are 377 long lines.

File# lines# units# long lines
xaml
MainWindow.xaml
in Windows/ExpressivePixelsActivator/WPF
276 - 42
MIDI.hpp
in Firmware/ExpressivePixelsMIDI
847 76 29
EPXApp.cpp
in Firmware/ExpressivePixelsCore
1150 38 26
EPXApp_JSON.cpp
in Firmware/ExpressivePixelsCore
241 3 26
EPXVariant.cpp
in Firmware/Device_Nordic52840DK_SeggerEmbeddedStudio
47 - 20
EPXApp_CStorage.cpp
in Firmware/ExpressivePixelsCore
595 25 19
EPXApp_Payload_Binary.cpp
in Firmware/ExpressivePixelsCore
106 1 16
CAnimationManager.cpp
in Firmware/ExpressivePixelsCore
317 12 15
xaml
MainPage.xaml
in Windows/ExpressivePixelsActivator/UWP
101 - 14
xaml
ExpressivePixelSliderStyle.xaml
in Windows/ExpressivePixelsActivator/WPF/Styles
167 - 14
EPXApp_Payload.cpp
in Firmware/ExpressivePixelsCore
305 14 12
EPXPlatform_BLE.c
in Firmware/Platform_NordicSDK
523 30 11
S
SEGGER_RTT_ASM_ARMv7M.S
in Firmware/Segger
221 - 11
BLE_DeviceManager.cs
in Windows/ExpressivePixelsActivator/ConnectivityCore
225 6 11
animate.py
in Firmware/RaspberryPi
187 21 9
ButtonAttachedBehavior.cs
in Windows/ExpressivePixelsActivator/WPF/Controls
86 16 8
EPXPlatform_CStorage.cpp
in Firmware/Platform_Arduino
396 22 6
EPXAPP_CStorage.h
in Firmware/ExpressivePixelsCore
61 3 5
EPXPlatform_CStorage.cpp
in Firmware/Platform_NordicSDK
318 23 5
CBLEChannel.h
in Firmware/ExpressivePixelsCore
45 7 4