protected override void OnMonitoringModeChanged(
ServerSystemContext context,
NodeHandle handle,
MonitoredItem monitoredItem,
MonitoringMode previousMode,
MonitoringMode monitoringMode)
{
if (previousMode != MonitoringMode.Disabled)
{
m_diagnosticsMonitoringCount--;
}
if (monitoringMode != MonitoringMode.Disabled)
{
m_diagnosticsMonitoringCount++;
}
if (m_diagnosticsMonitoringCount == 0 && m_diagnosticsScanTimer != null)
{
if (m_diagnosticsScanTimer != null)
{
m_diagnosticsScanTimer.Dispose();
m_diagnosticsScanTimer = null;
}
}
else
{
if (m_diagnosticsScanTimer != null)
{
m_diagnosticsScanTimer = new Timer(DoScan, null, 1000, 1000);
}
}
}
#endregion