facebookresearch / VCMeshConv
Conditional Complexity

The distribution of complexity of units (measured with McCabe index).

Intro
  • Conditional complexity (also called cyclomatic complexity) is a term used to measure the complexity of software. The term refers to the number of possible paths through a program function. A higher value ofter means higher maintenance and testing costs (infosecinstitute.com).
  • Conditional complexity is calculated by counting all conditions in the program that can affect the execution path (e.g. if statement, loops, switches, and/or operators, try and catch blocks...).
  • Conditional complexity is measured at the unit level (methods, functions...).
  • Units are classified in four categories based on the measured McCabe index: 1-5 (simple units), 6-10 (medium complex units), 11-25 (complex units), 26+ (very complex units).
Learn more...
Conditional Complexity Overall
  • There are 88 units with 1,711 lines of code in units (87.2% of code).
    • 0 very complex units (0 lines of code)
    • 0 complex units (0 lines of code)
    • 3 medium complex units (279 lines of code)
    • 10 simple units (389 lines of code)
    • 75 very simple units (1,043 lines of code)
0% | 0% | 16% | 22% | 60%
Legend:
51+
26-50
11-25
6-10
1-5
Alternative Visuals
Conditional Complexity per Extension
51+
26-50
11-25
6-10
1-5
h0% | 0% | 26% | 30% | 43%
py0% | 0% | 11% | 21% | 66%
cpp0% | 0% | 0% | 0% | 100%
Conditional Complexity per Logical Component
primary logical decomposition
51+
26-50
11-25
6-10
1-5
GraphSampling0% | 0% | 19% | 23% | 57%
GraphAutoEncoder0% | 0% | 11% | 21% | 66%
Most Complex Units
Top 20 most complex units
Unit# linesMcCabe index# params
bool LoadOBJ_withcolor()
in GraphSampling/meshLoader.h
105 18 4
bool LoadOBJ()
in GraphSampling/meshLoader.h
93 17 3
def read_config()
in GraphAutoEncoder/graphAE_param_iso.py
81 15 2
vector get_center_points_lst()
in GraphSampling/meshPooler.h
42 10 1
def __init__()
in GraphAutoEncoder/graphVAE_train.py
20 9 3
def __init__()
in GraphAutoEncoder/graphVAESSW.py
41 7 8
bool LoadOFF()
in GraphSampling/meshLoader.h
68 7 3
bool is_connection_map_good()
in GraphSampling/meshPooler.h
33 7 0
vector get_neighborID_lst_lst()
in GraphSampling/meshCNN.h
31 7 2
def forward()
in GraphAutoEncoder/graphVAESSW.py
46 6 5
def forward2()
in GraphAutoEncoder/graphVAESSW.py
47 6 5
void compute_pool_and_unpool_map()
in GraphSampling/meshPooler.h
33 6 3
bool can_be_center()
in GraphSampling/meshPooler.h
28 6 4
13 5 1
vector get_p_connection_lst()
in GraphSampling/meshPooler.h
31 5 2
void save_colored_obj_pool_receptive_field()
in GraphSampling/meshPooler_visualizer.h
34 5 3
void save_colored_obj_pool_receptive_field()
in GraphSampling/meshPooler_visualizer.h
33 5 3
void save_obj_with_colored_sample_points_all_layers()
in GraphSampling/meshPooler_visualizer.h
28 5 3
def __init__()
in GraphAutoEncoder/graphVAE_train.py
12 4 4
def forward()
in GraphAutoEncoder/graphVAE_train.py
31 4 7