site library

These classes are used to assemble the Missile Site structure.

The structure is a hierarchy in that it contains several nested SamModel complexes. They are organized as follows.

  • MissileSite - the outer structure
  • Bank - Zero or more banks for each Missile type that can be configured. They report (signal) to MissileSite as their status changes.
  • Within each bank 1 or more Missile models that is independent of each other but that report (signal) to the Bank as to its status.

Typically many of these classes and methods would be private. They are kept public here so that the code can be documented.

Names are very important in Flutter applications and can be used to find dependent parts of application code using the tools provided with Android Studio (and presumably with Visual Studio).

During development we use log statements to record useful data and to ascertain timing and sequencing of events. We use the log statement wrapped in an assert statement so that the log statement and literal values disappear in production mode.

The dart literal interpolation is a major help in doing the logging.

Classes

Bank
BankFactory
Missile
Extend Rocket class to treat as a Missile. [...]
MissileSite
MissileSite SamModel injected into widget tree. [...]
MissileSiteFactory
Constructor for MissileSiteFactory [...]
MissileSitePage
The StatefulWidget that is the app display page once built. [...]
MissileSitePageState
State part of StateWidget MissileSitePage.

Functions

getBank(MissileSite site, SamFactory bankMold, Config cfg, String name, int ix, double wid, double hgt, int depth, Color color) Bank
Return a Bank SamModel [...]
getHeader(String name, int numBanks, int depth, double width, Color color, double hdrHgt) → Widget
Return the MissileSite header data for a particulat Missile type. [...]
getSite(MissileSite site, Config cfg, MissileSiteFactory sf) → List<Widget>
Return MissileSite widget tree. [...]
getSiteHeader(MissileSite site, double wid) → Widget
Return the top header for the site. [...]

Enums

BK
The Enum used for Bank.
Delay
Delay Enums for Picker
MS
The Enum used for MissileSite.