facebookresearch / labgraph
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 243 files with 18,901 lines of code.
    • 1 very long files (1,040 lines of code)
    • 4 long files (2,151 lines of code)
    • 15 medium size files (4,911 lines of codeclsfd_ftr_w_mp_ins)
    • 32 small files (4,486 lines of code)
    • 191 very small files (6,313 lines of code)
5% | 11% | 25% | 23% | 33%
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
h17% | 27% | 6% | 15% | 32%
py0% | 7% | 19% | 26% | 47%
cpp0% | 0% | 53% | 26% | 19%
hpp0% | 0% | 48% | 51% | 0%
css0% | 0% | 0% | 0% | 100%
yml0% | 0% | 0% | 0% | 100%
in0% | 0% | 0% | 0% | 100%
File Size per Logical Decomposition
primary
1001+
501-1000
201-500
101-200
1-100
Cthulhu/include27% | 28% | 10% | 11% | 20%
Cthulhu/modules0% | 56% | 31% | 0% | 11%
labgraph/runners0% | 37% | 26% | 18% | 17%
Cthulhu/src0% | 0% | 42% | 32% | 24%
labgraph/messages0% | 0% | 96% | 0% | 3%
labgraph/graphs0% | 0% | 20% | 47% | 31%
labgraph/websockets0% | 0% | 0% | 29% | 70%
extensions/labgraph_protocol0% | 0% | 0% | 27% | 72%
labgraph/loggers0% | 0% | 0% | 46% | 53%
extensions/yaml_support0% | 0% | 0% | 42% | 57%
extensions/labgraph_viz0% | 0% | 0% | 22% | 77%
labgraph/_cthulhu0% | 0% | 0% | 57% | 42%
labgraph0% | 0% | 0% | 100% | 0%
labgraph/cpp0% | 0% | 0% | 0% | 100%
labgraph/events0% | 0% | 0% | 0% | 100%
labgraph/zmq_node0% | 0% | 0% | 0% | 100%
logging/include0% | 0% | 0% | 0% | 100%
ROOT0% | 0% | 0% | 0% | 100%
labgraph/util0% | 0% | 0% | 0% | 100%
extensions/psychopy_example0% | 0% | 0% | 0% | 100%
labgraph/devices0% | 0% | 0% | 0% | 100%
labgraph/simulations0% | 0% | 0% | 0% | 100%
win0% | 0% | 0% | 0% | 100%
Cthulhu0% | 0% | 0% | 0% | 100%
extensions/prototypes0% | 0% | 0% | 0% | 100%
Longest Files (Top 50)
File# lines# units
ContextImpl_details.h
in Cthulhu/include/cthulhu
1040 56
ContextImpl.h
in Cthulhu/include/cthulhu
552 18
core.h
in Cthulhu/modules/pythonbindings/include/cthulhu/bindings
543 64
local_runner.py
in labgraph/runners
531 25
StreamType.h
in Cthulhu/include/cthulhu
525 29
StreamRegistryIPCHybrid.cpp
in Cthulhu/src
481 14
types.py
in labgraph/messages
460 96
SubAligner.cpp
in Cthulhu/src
414 14
Context.h
in Cthulhu/include/cthulhu
395 23
process_manager.py
in labgraph/runners
381 27
VulkanUtil.cpp
in Cthulhu/src
368 9
MemoryPoolIPCHybrid.cpp
in Cthulhu/src
346 20
message.py
in labgraph/messages
314 19
SubAlignerImpl.cpp
in Cthulhu/src
313 23
managed_open_or_create_impl_ashmem.hpp
in Cthulhu/src/boost/interprocess/detail
303 11
core.cpp
in Cthulhu/modules/pythonbindings
298 1
module.py
in labgraph/graphs
220 27
Context.cpp
in Cthulhu/src
210 7
Aligner.cpp
in Cthulhu/src
207 18
ContextRegistryIPC.cpp
in Cthulhu/src
201 16
method.py
in labgraph/graphs
193 14
StreamInterface.cpp
in Cthulhu/src
189 7
group.py
in labgraph/graphs
187 6
TypeRegistryIPC.h
in Cthulhu/src
181 11
StreamInterface.h
in Cthulhu/include/cthulhu
180 5
Serialization.cpp
in Cthulhu/src
179 6
android_shared_memory.hpp
in Cthulhu/src/boost/interprocess
166 10
Serialization.h
in Cthulhu/include/cthulhu
161 7
parallel_runner.py
in labgraph/runners
160 7
managed_android_shared_memory.hpp
in Cthulhu/src/boost/interprocess
158 4
ClockIPC.cpp
in Cthulhu/src
158 9
StreamInterfaceIPC.cpp
in Cthulhu/src
151 7
logger.py
in labgraph/loggers/hdf5
147 7
SubAlignerImpl.h
in Cthulhu/src
146 1
lg_units_parser.py
in extensions/yaml_support/yaml_support/_parser
141 5
TypeRegistryIPC.cpp
in Cthulhu/src
140 8
ws_server.py
in labgraph/websockets/ws_server/session
133 5
QueueingAligner.cpp
in Cthulhu/src
132 4
StreamType.cpp
in Cthulhu/src
130 10
StreamInterfaceIPC.h
in Cthulhu/src
129 5
line_plot.py
in extensions/labgraph_viz/labgraph_viz/plots
126 7
cthulhu.py
in labgraph/_cthulhu
126 12
node_test_harness.py
in labgraph/graphs
125 9
FrameworkIPCHybrid.cpp
in Cthulhu/src
113 3
qt_node.py
in extensions/labgraph_protocol/labgraph_protocol
108 6
SubAligner.h
in Cthulhu/include/cthulhu
106 3
__init__.py
in labgraph
106 -
StreamRegistryLocal.cpp
in Cthulhu/src
105 8
qt_stimulus.py
in extensions/labgraph_protocol/labgraph_protocol
104 9
entry.py
in labgraph/runners
103 2
Files With Most Units (Top 20)
File# lines# units
types.py
in labgraph/messages
460 96
core.h
in Cthulhu/modules/pythonbindings/include/cthulhu/bindings
543 64
ContextImpl_details.h
in Cthulhu/include/cthulhu
1040 56
StreamType.h
in Cthulhu/include/cthulhu
525 29
process_manager.py
in labgraph/runners
381 27
module.py
in labgraph/graphs
220 27
local_runner.py
in labgraph/runners
531 25
Context.h
in Cthulhu/include/cthulhu
395 23
SubAlignerImpl.cpp
in Cthulhu/src
313 23
MemoryPoolIPCHybrid.cpp
in Cthulhu/src
346 20
message.py
in labgraph/messages
314 19
ContextImpl.h
in Cthulhu/include/cthulhu
552 18
Aligner.cpp
in Cthulhu/src
207 18
ContextRegistryIPC.cpp
in Cthulhu/src
201 16
SubAligner.cpp
in Cthulhu/src
414 14
StreamRegistryIPCHybrid.cpp
in Cthulhu/src
481 14
stimulus.py
in extensions/labgraph_protocol/labgraph_protocol
67 14
method.py
in labgraph/graphs
193 14
event_generator.py
in labgraph/events
86 14
ContextRegistryLocal.h
in Cthulhu/src
86 12
Files With Long Lines (Top 3)

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

File# lines# units# long lines
StreamRegistryIPCHybrid.cpp
in Cthulhu/src
481 14 1
lg_units_parser.py
in extensions/yaml_support/yaml_support/_parser
141 5 1
cthulhu.py
in labgraph/_cthulhu
126 12 1