Expand description
BUFFER_READY intrinsic reporting for the log objects (Clause 13.3.7).
A Trend Log, Event Log or Trend Log Multiple that reports intrinsically
tells the recipients of its Notification Class each time
Notification_Threshold more records have been collected since its last
report, so they can fetch the new ones with ReadRange. The three tables
(12-29, 12-31 and 12-35) give each log the same event rows, and the
crate’s BufferReadyReporting keeps them for any of the three: it runs
the algorithm on the log’s Total_Record_Count, its pMonitoredValue, and
serves and takes the rows itself. [BufferReadyReport] carries one
report’s counts to the server.
Event_State never leaves NORMAL. Each report is a NORMAL to NORMAL transition, so it stamps the TO_NORMAL slots of Event_Time_Stamps, Event_Message_Texts and Acked_Transitions, and Event_Enable’s TO_NORMAL flag decides whether it goes out.
An object adopts it in three steps: hold one and lend it to its
LogLifecycle, which restarts Records_Since_Notification at a purge;
offer each read and write to its read and write; and invoke
impl_buffer_ready_reporting! with the field and the log buffer.