Files
wwtools/aot/Samples/Monitor/Monitor/Monitor.cs
T
Joseph Doherty 32f26272ae Initial commit: Wonderware / System Platform tools and reference
Five tools under one repo, all docs organized per DOCS-GUIDE.md:

- aalogcli: .NET 4.8 / x86 CliFx CLI for reading System Platform binary
  logs (*.aaLGX) for LLM debugging, built on aaOpenSource/aaLog. Commands:
  last, tail, range, unread, fields. Stable JSON envelope under --llm-json.
  Build template under lib/build/ for rebuilding aaLogReader.dll.

- aot: ArchestrA Object Toolkit 2014 v4.0 reference material. Dev guide
  (Markdown converted from CHM), API reference for the ArchestrA.Toolkit
  namespace, and the Monitor / Watchdog VS sample solutions.

- graccesscli: .NET 4.8 / x86 CliFx CLI that automates Galaxy
  configuration via the ArchestrA GRAccess COM interop. Includes session
  daemon, IPC protocol, and llm-json envelope contract.

- grdb: SQL/DDL exploration of the Galaxy Repository database. DDL
  captures, reusable queries, hierarchy / contained-name <-> tag-name
  translation notes.

- histdb: LLM-oriented reference for AVEVA Historian retrieval. INSQL
  linked-server, extension tables, every wwXxx time-domain extension,
  every retrieval mode, alarm/event SQL recipes, REST API. Distilled
  from the 243-page Historian Retrieval Guide.

Root contains:
- CLAUDE.md: thin index pointing into each tool's README.
- DOCS-GUIDE.md: doctrine for organizing docs for LLM consumption.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-03 18:22:20 -04:00

70 lines
2.7 KiB
C#

//------------------------------------------------------------------------------
// Copyright (C) 2008 Invensys Systems Inc. All rights reserved.
//
// THIS CODE AND INFORMATION ARE PROVIDED "AS IS" WITHOUT WARRANTY OF ANY
// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE
// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A
// PARTICULAR PURPOSE.
//------------------------------------------------------------------------------
using System;
using System.Runtime.InteropServices;
using System.Collections;
using ArchestrA.Core;
using ArchestrA.Toolkit;
using ArchestrA.Toolkit.SystemPrimitive;
namespace ArchestrA.Toolkit.Monitor
{
#region Object Information - Toolkit generated code
// Required region for Object Information - do not modify
// the contents of this region with the code editor.
[AObject()]
[Guid("fbdfa384-05c8-42ce-8b41-75e40436b6f2")]
[ObjectAttributes.Dictionary(@"Monitor5.aaDCT")]
[ObjectAttributes.ConfigtimeCLSID("dbed4eb2-a279-4660-9497-448092f54047")]
[ObjectAttributes.RuntimeCLSID("df4726d8-fe33-4d79-a6a1-b8198f1e5ac1")]
[ObjectAttributes.MajorVersion(1)]
[ObjectAttributes.MinorVersion(1)]
[ObjectAttributes.Migrate("")]
#endregion
// Required attributes for Object Information.
// Changes made using the code editor will appear in the Toolkit Editor.
[ObjectAttributes.Name("Monitor")]
[ObjectAttributes.Vendor("test")]
[ObjectAttributes.ShortDescription("Description for Watchdog")]
[ObjectAttributes.ToolsetName("Application")]
[ObjectAttributes.Events()]
[ObjectAttributes.IDEBehavior()]
[AReusablePrimitiveRef(@"ArchestrA\InputOutputPrimitive1.aaPri", "PVInputOutput", "PVInputOutput", false)]
[AReusablePrimitiveRef.AttrOverride("PVInputOutput", "DataType", "LockStatus", true)]
[AReusablePrimitiveRef.AttrOverride("PVInputOutput", "DataType", "Value", MxDataType.MxFloat)]
/// <summary>
/// Summary description for Monitor
/// </summary>
public class Monitor
{
[Attributes.AAttrCategory(MxAttributeCategory.MxCategoryCalculatedRetentive)]
[Attributes.AAttrCalculatedQuality(true)]
public CMxDouble PVInputAvg = new CMxDouble();
[Attributes.AAttrFrequentlyAccessed(true)]
[Attributes.AAttrCategory(MxAttributeCategory.MxCategoryWriteable_US)]
[Attributes.AAttrCalculatedQuality(true)]
public CMxFloat PV = new CMxFloat();
[Attributes.AAttrCategory(MxAttributeCategory.MxCategoryWriteable_USC)]
public CMxFloat PVHiLimit = new CMxFloat();
[Attributes.AAttrCategory(MxAttributeCategory.MxCategoryWriteable_US)]
public CMxBoolean ResetInputAvg = new CMxBoolean();
public Monitor()
{
}
}
}