VLB-100112

From Picswiki

Jump to: navigation, search

Return to VLB Change Log -- Prev/Next VLB: VLB-100107/VLB-100204

Contents

 NOTE: This VLB page also refers to VLB-100112a, VLB-100113, VLB-100113a and VLB-100114 since they were released as bug-fixes to things in VLB-100112 that EVI was unable to test in-house.

Global Changes

  • Updated all version resources to extend copyright to 2010
  • VLB Construction
    • The 8800 software is now delivered to the master MUX nodes the same as the satellite MUX nodes
    • The obsolete VBSLHS.EXE has been removed

Applications

ACC

  • SPR-360 and SPR-370: ACC once again correctly tracks app status, regardless of whether the apps are started via ACC or Windows Explorer and whether they are multi-instance or not.

gRecv

  • Now using the new PICS time offset support functions (see PICS32 DLL, below) to get a more accurate PICS time for the gradient values being provided.
  • gRecv was not providing gradient values until a new value (for each) was received from gSend. Instead, gRecv should have been (and now is) providing the last known values for the gradient points from the SDB cache. This change should result in gRecv providing the gradient immediately after starting, and refreshing it periodically thereafter.

MBTCP

  • I believe I've added the code necessary to to talk to a DM200 device. However, in the total absence of any adequate documentation (or sample code) and a test unit, I cannot be certain...

MCR2

  • SPR-399: MCR2's DISP GUI was not setting a default process area selection when the comupter's section/building had no units. The lack of a default was causing MCR2 to crash when the GUI was accessed. The GUI now selects C31U1 as the default when the computer's section contains no units.

MuxCtl

  • SPR-184 Registers its provider Id with TaskMon.

MtPics

  • SPR-184 Registers its provider Id with TaskMon.
  • Now using the new PICS time offset support functions (see PICS32 DLL, below) to get a more accurate PICS time for the points it provides.

MwPics

  • SPR-184 Registers its provider Id with TaskMon.
  • Now using the new PICS time offset support functions (see PICS32 DLL, below) to get a more accurate PICS time for the points it provides.

PicsTest

  • Now using the new site_FormatHardwareAddress() function

ReDisp

  • Now using the new site_FormatHardwareAddress() function

RTDBA

  • Source code heavily refactored into smaller modules that, hopefully, will be easier to work with during future updates.
  • SPR-184: RTDBA is now capable of proxying points when their provider has gone away. Also, there is a new bit in the database that, when set, allowed RTDBA to proxy a point's initial value from the database (either the initial EU or manual EU) when the provider is not present. If desired, this would allow RTDBA to proxy values like the gradient when a node is running in an isolated section.
  • SPR-380: RTDBA can now request (and provide) a copy of the current real time database from RTDBA running on other nodes. This will (a) allow nodes to have a complete data set more quickly after restarting, and (b) to have any data known by other nodes in their section if restarted when the section is isolated. Previously, nodes started in an isolated section would have access only to data provided by the section. Typically such data does not include the gradient or any values from other sections, so this change allows more functionality as long as at least one node keeps running in a section while it is isolated (if all of the nodes restart, then they cannot get the data via synchronization).
  • The RTDB_WM_TIMEOFFSET message being generated by RTDBA now includes a signed 44 bit offset rather than the previous signed 32 bit offset. This allows for a local clock drift significantly in excess of the 24 (or so) days supported by the previous offset. The difference can now be over a 250 years. The message also includes a flag/counter that shows when RTDBA is adjusting the system clock so that applications using the message may know when the system time might not be usable to generate a new PICS time. See Real-time Data Points.
  • Added some log messages containing info about CKPID points that are being proxied.

RTClient

  • Now generates the RTDB_WM_TIMEOFFSET message the same way that RTDBA does (see above).

Sdb

  • SPR-184 Added editing of new bit bProxyInitEu

sdbCView

  • Made the address column in the point browser list wider in order to accomodate the new, improved hardware address formatting.

SysView

  • Enhanced the System Terminate Dialog to show the currently valid buildings, classes, or subsystems.
  • Only the currently valid subsystems affected by the command are logged.

TaskMon

SPR-184 driven changes:
  • Manages the RealTime Provider Table
  • Allows tasks to register and unregister their provider ids. (See Tm Register Provider)
  • Broadcast a Windows message when a provider becomes available or becomes unavailable. Since two nodes can each be a provider, the message is only sent when there is a transition from no provider to a provider or vice-versa. (See Tm Provider Change)
  • Each TaskMon broadcast a UDP message listing the RealTime providers in its node. This allows the provider table to be populated with all current providers in the system.
Non-SPR-184 driven changes:
  • Added a reason code to the ExitWindowsEx() function calls in the StateProcess DLL. This might help the function work correctly on Windows 2003 Server (it might be ignoring shutdown requests without a known reason). The code I used means Other (planned). I tagged it as a planned shutdown/restart because Windows 2003 Server may pause a restart to show a dialog informing the user (who isn't there) of unplanned shutdown events, but this does not occur for planned events.
  • Now using the updated RTDB_WM_TIMEOFFSET message to generate PICS Time for all status points being provided.

Libraries

evi32 DLL

  • Log window subclassing made a bit more safe by allowing the subclassed window to use the GWL_USERDATA storage location, if necessary. Note: The EVI32 log window system only supports ONE subclassed log per application instance.

evIpcApi DLL

  • SPR-377 The IpcApi periodically checks the partner's window handle IPC object. If it is invalid, a close IPC event given to the Ipc client.

PICS32 DLL

  • Added support functions for the enhanced RTDB_WM_TIMEOFFSET message now being sent by real time agents. See Real-time Data Points for details.

evSdbCacheX DLL

  • SPR-184 Enabled edit on the new bit bProxyInitEu.

evSite DLL

  • Added the MODBUS subtype to the scan sorting key to ensure that different hardware types aren't intermingled. This should be a non-issue because different hardware will require different MODBUS Slave Addresses, but I wanted to be certain.
  • Added the AM32X and MODACS hardware address formatters to the site_FormatHardwareAddress() function. The function also now prefixes all addresses with Uxx where xx is the 8800 (aka unit) number when appropriate. Points not associated with an 8800 will not have the prefix added. Points without hardware addresses will show as n/a in most programs (PicsRPG will replace the n/a with the provider name). The return string from site_FormatHardwareAddress() is limited to 20 characters plus a trailing NULL -- the string buffer passed in MUST be large enough!

evTmApi DLL

  • Added tm_GetMyTaskInfo() and tm_GetTaskInfo() functions.
SPR-184 Added three functions to support the RealTime Provider Table for TaskMon.
  • tm_IsProviderAvail( BYTE byProviderId ) Returns TRUE if the provider is available.
  • tm_RegisterProvider( BYTE byProviderId ) Registers the calling task as the provider.
  • tm_UnregisterProvider( BYTE byProviderId ) Unregisters the calling task as the provider.
Removed the obsolete function tm_PostTaskMonStatus. tm_SetHealth replaces it.
The following tasks were modified to no longer use tm_PostTaskMonStatus

Return to VLB Change Log -- Prev/Next VLB: VLB-100107/VLB-100204

Personal tools