Logic and Rationale

This page is a collection of different logic snippets used in the ezFIT design and implementation. The description, use and rationale for each logic snippet is documented here as way of permanently recording ideas and decisions made on the different solutions to various problems.

The list of topics are not necessarily related (at least, not directly), so each topic should be treated atomically and independently of the others.

Discovery of Drivers, Manufacturers, Circuits and Instruments

In order for the fitting module to discover the available drivers, manufacturers, circuits and instruments available to the application, we need to perform the following tasks:

Methodology:

Guaranteeing Unique Circuit & Instrument References

To ensure that a reference to a product and/or circuit is unique, and also not stored in the application, we need to have a mechanism that will provide this simply by using libraries (DLLs or BPLs).

Requirements:

Purposes:

Abstract Interface:

Pre-conditions:

Logistics:

Hierarchy:

Examples

Assumming the following ProdAndStyleID values:

  // Product and Style IDs to be stored on Word2 (manuf reserved words) and ProdAndStyleID
  BTE_I4            = 1;    // Intuition 4
  BTE_I4D           = 2;    // Intuition D (Directional)
  BTE_I2            = 3;    // Intuition 2 (2 ch)
  FSS_I2            = 4;    // Intuition 2 (2 ch)
  ITE_I2            = 5;    // Intuition 2 (2 ch)
  FSS_I4            = 6;    // Intuition 4
  ITC_I4            = 7;    // Intuition 4
  CIC_I4            = 8;    // Intuition 4
  HS_I4             = 9;    // Intuition 4
  MiniCanal_I4      = 10;   // Intuition 4
  Canal_I4          = 11;   // Intuition 4
  Super60_I4        = 12;   // Intuition 4
  ezHear_I4         = 13;   // Intuition 4
  FSS_ClariD        = 14;   // Clari-D
  CIC_ClariD        = 15;   // Clari-D
  HS_ClariD         = 16;   // Clari-D
  MiniCanal_ClariD  = 17;   // Clari-D
  Canal_ClariD      = 18;   // Clari-D
  Super60_ClariD    = 19;   // Clari-D
  ...
  CIC_I8            = 1;    // Intuition 8
  CIC_I8Power       = 2;    // Intuition 8
  MiniCanal_I8      = 3;    // Intuition 8
  MiniCanal_I8Power = 4;    // Intuition 8
  Canal_I8          = 5;    // Intuition 8
  Canal_I8Power     = 6;    // Intuition 8
  HS_I8             = 7;    // Intuition 8
  HS_I8Power        = 8;    // Intuition 8
  FSS_I8            = 9;    // Intuition 8
  FSS_I8Power       = 10;   // Intuition 8
  Super60_I8        = 11;   // Intuition 8
  ezHear_I8         = 12;   // Intuition 8
  OTE_Flx           = 13;   // Flx, an OTE based on Ethos circuit