Documentation

This page hosts the documentation of the SmartCGMS software architecture and all of its components.


Drawing Filter (legacy)

The drawing filter accumulates all signals and relevant events to create visualization. This version is partially superceded by Drawing filter v2 and is kept for legacy reasons and functionality, that is not yet implemented in the newer version.

It uses SVG as an exchange format - the GUI needs to support SVG graphics format to properly draw it in its widgets.

The drawing filter currently supports the following views:

  • Graph view - an overview plot of all signals relevant to glucose metabolism in human body
  • Daily view - the same as daily view, but wrapped arount the one day boundary
  • AGP - Ambulatory glycemic profile view
  • Parkes error grid - Parkes error grid for error grid analysis of T1DM and T2DM
  • Clarke error grid - Clarke error grid for error grid analysis
  • ECDF - empirical cummulative distribution function; this requires the signal to have a reference signal properly set
  • Mobile glucose - a graph of glucose concentration optimized for mobile view
  • Mobile insulin - a graph of insulin dosage and insulin on board optimized for mobile view
  • Mobile carbohydrates - a graph of carbohydrate dosage and carbohydrates on board optimized for mobile view

Configuration

  • Canvas_Width (integer) - width of the canvas, to which the renderer will draw
  • Canvas_Height (integer) - height of the canvas, to which the renderer will draw
  • Graph_File_Path (string) - path to an output file for graph view
  • Day_File_Path (string) - path to an output file for daily view
  • AGP_File_Path (string) - path to an output file for AGP view
  • Parkes_File_Path (string) - path to an output file for Parkes error grid
  • Clark_File_Path (string) - path to an output file for Clarke error grid
  • ECDF_File_Path (string) - path to an output file for ECDF view

Supported interfaces

  • scgms::IDrawing_Filter_Inspection

General function

The drawing filter instance accumulates all events and draws a set of plots upon request. The request is usually triggered periodically by the GUI, or upon receiving a Shut_Down device event. Once the Shut_Down device event arrives, the filter stores the generated drawings into given output files.

This filter chooses visualization elements based on its internal logic, not on the actual signal descriptors. Hence, we developed a new filter, Drawing filter v2, which aims to supercede this filter. When implementing a new logic or a new view, please, do not use this filter, as it does not fully respect the design and interfaces of the SmartCGMS software platform.