aws / aws-iot-device-sdk-cpp
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 81 files with 9,242 lines of code.
    • 0 very long files (0 lines of code)
    • 3 long files (1,689 lines of code)
    • 14 medium size files (3,870 lines of codeclsfd_ftr_w_mp_ins)
    • 11 small files (1,479 lines of code)
    • 53 very small files (2,204 lines of code)
0% | 18% | 41% | 16% | 23%
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
cpp0% | 25% | 54% | 13% | 6%
hpp0% | 0% | 9% | 25% | 65%
in0% | 0% | 0% | 0% | 100%
cmake0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
network/WebSocket0% | 53% | 26% | 0% | 19%
src/shadow0% | 100% | 0% | 0% | 0%
network/OpenSSL0% | 83% | 0% | 16% | 0%
src/mqtt0% | 0% | 63% | 31% | 5%
src/util0% | 0% | 76% | 0% | 23%
src0% | 0% | 48% | 26% | 25%
network/MbedTLS0% | 0% | 81% | 0% | 18%
cli0% | 0% | 83% | 0% | 16%
src/jobs0% | 0% | 100% | 0% | 0%
common0% | 0% | 87% | 0% | 13%
include0% | 0% | 47% | 21% | 30%
src/discovery0% | 0% | 67% | 32% | 0%
include/mqtt0% | 0% | 0% | 32% | 67%
include/util0% | 0% | 0% | 36% | 63%
include/discovery0% | 0% | 0% | 0% | 100%
include/jobs0% | 0% | 0% | 0% | 100%
include/shadow0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
network0% | 0% | 0% | 0% | 100%
doxygen0% | 0% | 0% | 0% | 100%
cmake0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
WebSocketConnection.cpp
in network/WebSocket
616 27
Shadow.cpp
in src/shadow
545 20
OpenSSLConnection.cpp
in network/OpenSSL
528 13
Connect.cpp
in src/mqtt
439 13
ResponseCode.cpp
in src
334 1
MbedTLSConnection.cpp
in network/MbedTLS
308 7
wslay_frame.cpp
in network/WebSocket/wslay
304 6
Jobs.cpp
in src/jobs
274 17
cli.cpp
in cli
274 11
JsonParser.cpp
in src/util
273 16
NetworkRead.cpp
in src/mqtt
262 9
ConfigCommon.cpp
in common
261 3
Subscribe.cpp
in src/mqtt
250 12
Client.cpp
in src/mqtt
236 20
ResponseCode.hpp
in include
223 -
Utf8String.cpp
in src/util
220 22
Discovery.cpp
in src/discovery
212 7
ClientCoreState.cpp
in src
183 9
Packet.cpp
in src/mqtt
172 8
Publish.cpp
in src/mqtt
170 9
LogMacros.hpp
in include/util/logging
149 -
Common.cpp
in src/mqtt
145 6
Connect.hpp
in include/mqtt
134 2
Common.hpp
in include/mqtt
109 11
ClientState.cpp
in src/mqtt
108 8
OpenSSLConnection.hpp
in network/OpenSSL
107 2
DiscoveryResponse.cpp
in src/discovery
101 4
ClientCoreState.hpp
in include
101 6
GreengrassMqttClient.cpp
in src/mqtt
99 4
Client.hpp
in include/mqtt
95 2
WebSocketConnection.hpp
in network/WebSocket
94 -
Subscribe.hpp
in include/mqtt
92 -
Publish.hpp
in include/mqtt
91 8
Jobs.hpp
in include/jobs
89 -
Action.hpp
in include
84 3
ClientState.hpp
in include/mqtt
82 23
Shadow.hpp
in include/shadow
80 -
Action.cpp
in src
69 2
MbedTLSConnection.hpp
in network/MbedTLS
68 2
ClientCore.cpp
in src
66 6
wslay.hpp
in network/WebSocket/wslay
65 -
DiscoveryResponse.hpp
in include/discovery
60 -
in
CMakeLists.txt.in
in network
59 -
Packet.hpp
in include/mqtt
59 7
FormattedLogSystem.cpp
in src/util/logging
57 3
Discovery.hpp
in include/discovery
55 3
GreengrassMqttClient.hpp
in include/mqtt
54 -
cli.hpp
in cli
53 -
wslay_frame.hpp
in network/WebSocket/wslay
44 -
NetworkConnection.cpp
in src
41 4
Files With Most Units (Top 20)
File# lines# units
WebSocketConnection.cpp
in network/WebSocket
616 27
ClientState.hpp
in include/mqtt
82 23
Utf8String.cpp
in src/util
220 22
Shadow.cpp
in src/shadow
545 20
Client.cpp
in src/mqtt
236 20
Jobs.cpp
in src/jobs
274 17
JsonParser.cpp
in src/util
273 16
Connect.cpp
in src/mqtt
439 13
OpenSSLConnection.cpp
in network/OpenSSL
528 13
Subscribe.cpp
in src/mqtt
250 12
cli.cpp
in cli
274 11
Common.hpp
in include/mqtt
109 11
ClientCoreState.cpp
in src
183 9
NetworkRead.cpp
in src/mqtt
262 9
Publish.cpp
in src/mqtt
170 9
ClientState.cpp
in src/mqtt
108 8
Packet.cpp
in src/mqtt
172 8
Publish.hpp
in include/mqtt
91 8
Discovery.cpp
in src/discovery
212 7
MbedTLSConnection.cpp
in network/MbedTLS
308 7
Files With Long Lines (Top 20)

There are 26 files with lines longer than 120 characters. In total, there are 130 long lines.

File# lines# units# long lines
ResponseCode.hpp
in include
223 - 26
GreengrassMqttClient.cpp
in src/mqtt
99 4 19
Client.cpp
in src/mqtt
236 20 14
Client.hpp
in include/mqtt
95 2 11
Jobs.cpp
in src/jobs
274 17 9
GreengrassMqttClient.hpp
in include/mqtt
54 - 8
Shadow.cpp
in src/shadow
545 20 7
Jobs.hpp
in include/jobs
89 - 7
Connect.cpp
in src/mqtt
439 13 5
WebSocketConnection.cpp
in network/WebSocket
616 27 4
Discovery.cpp
in src/discovery
212 7 2
Subscribe.cpp
in src/mqtt
250 12 2
in
CMakeLists.txt.in
in network
59 - 2
Common.hpp
in include/mqtt
109 11 2
cmake
FindMbedTLS.cmake
in cmake
8 - 1
Utf8String.cpp
in src/util
220 22 1
FormattedLogSystem.cpp
in src/util/logging
57 3 1
NetworkRead.cpp
in src/mqtt
262 9 1
Common.cpp
in src/mqtt
145 6 1
ConfigCommon.hpp
in common
39 - 1