awslabs / aws-greengrass-labs-lookoutvision-gstreamer
Unit Size

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

Intro
  • Unit size measurements show the distribution of size of units of code (methods, functions...).
  • Units are classified in four categories based on their size (lines of code): 1-20 (small units), 20-50 (medium size units), 51-100 (long units), 101+ (very long units).
  • You should aim at keeping units small (< 20 lines). Long units may become "bloaters", code that have increased to such gargantuan proportions that they are hard to work with.
Learn more...
Unit Size Overall
  • There are 52 units with 537 lines of code in units (29.5% of code).
    • 0 very long units (0 lines of code)
    • 0 long units (0 lines of code)
    • 6 medium size units (161 lines of code)
    • 13 small units (194 lines of code)
    • 33 very small units (182 lines of code)
0% | 0% | 29% | 36% | 33%
Legend:
101+
51-100
21-50
11-20
1-10
Unit Size per Extension
101+
51-100
21-50
11-20
1-10
cc0% | 0% | 30% | 36% | 32%
h0% | 0% | 0% | 0% | 100%
Unit Size per Logical Component
primary logical decomposition
101+
51-100
21-50
11-20
1-10
src/gst/lookoutvision0% | 0% | 54% | 40% | 5%
mqtt-publish-sample/mqttpublisher-gstreamer-plugin/greengrass-client0% | 0% | 76% | 0% | 23%
src/lookoutvision-client0% | 0% | 38% | 25% | 35%
mqtt-publish-sample/mqttpublisher-gstreamer-plugin/mqttpublisher0% | 0% | 23% | 58% | 18%
tst/utils/inferenceconsumer0% | 0% | 0% | 54% | 45%
tst/gst/lookoutvision0% | 0% | 0% | 66% | 33%
tst/lookoutvision-client0% | 0% | 0% | 66% | 33%
tst/utils/test-server0% | 0% | 0% | 0% | 100%
src/gst/lookoutvisionmeta0% | 0% | 0% | 0% | 100%
tst/gst/lookoutvisionmeta0% | 0% | 0% | 0% | 100%
Alternative Visuals
Longest Units
Top 20 longest units
Unit# linesMcCabe index# params
GreengrassClient::OperationStatus GreengrassClient::PublishToIoTMQTT()
in mqtt-publish-sample/mqttpublisher-gstreamer-plugin/greengrass-client/GreengrassClient.cc
32 4 2
static void gst_lookout_vision_set_property()
in src/gst/lookoutvision/gstlookoutvision.cc
31 7 4
static void gst_lookout_vision_class_init()
in src/gst/lookoutvision/gstlookoutvision.cc
29 1 1
static GstFlowReturn gst_lookout_vision_chain()
in src/gst/lookoutvision/gstlookoutvision.cc
24 3 3
LookoutVisionInferenceClient::OperationStatus LookoutVisionInferenceClient::StartModel()
in src/lookoutvision-client/LookoutVisionInferenceClient.cc
23 4 2
static void gst_mqtt_publisher_class_init()
in mqtt-publish-sample/mqttpublisher-gstreamer-plugin/mqttpublisher/gstmqttpublisher.cc
22 1 1
static GstFlowReturn gst_mqtt_publisher_chain()
in mqtt-publish-sample/mqttpublisher-gstreamer-plugin/mqttpublisher/gstmqttpublisher.cc
20 4 3
static GstFlowReturn gst_inference_consumer_chain()
in tst/utils/inferenceconsumer/gstinferenceconsumer.cc
19 4 3
static GstPadProbeReturn pad_probe()
in src/gst/lookoutvision/gstlookoutvision.cc
18 4 3
static void gst_inference_consumer_class_init()
in tst/utils/inferenceconsumer/gstinferenceconsumer.cc
18 1 1
static void gst_lookout_vision_get_property()
in src/gst/lookoutvision/gstlookoutvision.cc
17 4 4
static void gst_lookout_vision_init()
in src/gst/lookoutvision/gstlookoutvision.cc
15 1 1
bool LookoutVisionInferenceClient::waitForModelStatusWithTimeout()
in src/lookoutvision-client/LookoutVisionInferenceClient.cc
15 4 3
static void gst_lookout_vision_finalize()
in src/gst/lookoutvision/gstlookoutvision.cc
13 2 1
static void gst_mqtt_publisher_init()
in mqtt-publish-sample/mqttpublisher-gstreamer-plugin/mqttpublisher/gstmqttpublisher.cc
12 1 1
static void gst_mqtt_publisher_set_property()
in mqtt-publish-sample/mqttpublisher-gstreamer-plugin/mqttpublisher/gstmqttpublisher.cc
12 2 4
void TearDown()
in tst/gst/lookoutvision/gstlookoutvisiontest.cc
12 4 0
void TearDown()
in tst/lookoutvision-client/LookoutVisionInferenceClientTest.cc
12 4 0
static void gst_mqtt_publisher_get_property()
in mqtt-publish-sample/mqttpublisher-gstreamer-plugin/mqttpublisher/gstmqttpublisher.cc
11 2 4
void TestServer::RunServer()
in tst/utils/test-server/TestServer.cc
10 1 2