Errata

There are a number of errors in the first edition of the book that  will be corrected in the next. 

1) The worst errors are in Figure 1.7 on page 18.  That figure illustates the BlockingObject class, one of the most important in the FBW infrastructure.  Here is a better dipiction of the logic in that class:

Figure 1.7:  BlockingObject gives child threads the means to easily block awaiting notification from another thread (Code:  WinAppInfrastructure.BlockingObject.cs)

 

 2) Page 6 in two places speaks of an event Repaint.  It should be OnPaint.

3)  Page 9, the comment about the code should be:
// link handlers for messages announcing the direction of infrared radiation

4) Page 12, near the top, ClockObjectQueue should be ClockedObjectQueue

5)  Top of Page 14.  The first sentence is incorrect.  The HandleClockTick method does not run on every tick.  It runs once, on the next clock tick after other code has armed the signal to fire.  Arming the ClockedSignal links HandleClockTick to the clock tick. On the next tick HandleClockTick runs, fires the signal, and unlinks itself from the clock tick

6)  Page 42, last sentence, WinAppInfrastructure.ShuttingDown should be WinAppInfrastructure.ShutDown 

7)  Page 67, near the top, Section 5.2 should be Constructing FBWwinAppDemo

8) Page 60, section head 4.2 Unconditional Programmi5ng — don’t know where that “5” came from