Files
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

982 lines
13 KiB
Markdown
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# AObjectBase Class
Namespace: `ArchestrA.Toolkit`
AObjectBase class is the base class of the ConfigtimeBase and RuntimeBase classes.
Provides common functionality for configtime and runtime classes like Dictionary access, Logger access, Attribute Get and Put, Register and Unregister of Configtime/Runtime sethandlers.
**Syntax**
```csharp
public class AObjectBase : _APrimitiveBase
```
## AObjectBase Properties
### AObjectInstance Property
Provides access to set/get the instance of the object class.
**Syntax**
```csharp
public object AObjectInstance { get; set; }
```
**Returns**
object
### ClassName Property
Provides access to the name of the object class.
**Syntax**
```csharp
public string ClassName { get; }
```
**Returns**
string
### DictionaryInstance Property
Provides access to the Dictionary for this object.
**Syntax**
```csharp
public Dictionary DictionaryInstance { get; }
```
**Returns**
Dictionary
### MajorVersion Property
Provides access to the major version of this object.
**Syntax**
```csharp
public string MajorVersion { get; }
```
**Returns**
string
### MinorVersion Property
Provides access to the minor version of this object.
**Syntax**
```csharp
public string MinorVersion { get; }
```
**Returns**
string
### Runtime Property
Provides indication if the object is currently in runtime or configtime.
**Syntax**
```csharp
public bool Runtime { get; }
```
**Returns**
bool
true: when executing in runtime code.
false: when executing in configtime code.
### Tagname Property
Provides access to the Tagname of the object.
**Syntax**
```csharp
public string Tagname { get; }
```
**Returns**
string
## AObjectBase Methods
### AddErrorMessage Method
Provides a method to add an error message to the site.
**Syntax**
```csharp
public void AddErrorMessage(string message);
```
**Parameters**
**`message`**
string value that holds the message.
### AddWarningMessage Method
Provides a method to add a warning message to the site.
**Syntax**
```csharp
public void AddWarningMessage(string message);
```
**Parameters**
**`message`**
string value that holds the message.
### AttributeExists Method
Provides a method to check the existence of an Attribute by name.
**Syntax**
```csharp
public bool AttributeExists(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
bool
### FormatError Method (Exception)
Provides a method to generate a formatted exception string from an exception.
**Syntax**
```csharp
protected string FormatError(Exception ex);
```
**Parameters**
**`ex`**
Exception value to be formatted.
**Returns**
string
### FormatError Method (string, Exception)
Provides a detailed method to generate a formatted exception string from an exception and add additional information to the exception string.
**Syntax**
```csharp
protected string FormatError(
string localMessage,
Exception ex
);
```
**Parameters**
**`localMessage`**
Additional information to add to the exception message.
**`ex`**
Exception value to be formatted.
**Returns**
string
This is a concatenation of the localMessage string and the formatted exception string.
### Get Method (string, EATTRIBUTEPROPERTY)
Provides a method to get the value of an Attributes property by name.
**Syntax**
```csharp
public CMxValue Get(
string fullName,
EATTRIBUTEPROPERTY property
);
```
**Parameters**
**`fullName`**
Attribute external name.
**`property`**
Attribute property to access.
**Returns**
CMxValue
### Get Method (short, short, EATTRIBUTEPROPERTY)
Provides a method to get the value of an Attributes property by ID and primitive ID.
**Syntax**
```csharp
public CMxValue Get(
short attributeId,
short primitiveId,
EATTRIBUTEPROPERTY propertyId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**`propertyId`**
Attribute property to access.
**Returns**
CMxValue
### GetAttributeHandle Method
Provides a method to get an Attribute handle by name.
**Syntax**
```csharp
public AttributeHandle GetAttributeHandle(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
AttributeHandle
### GetIsLocked Method (string)
Provides a method to get the Lock Status of an attribute by name.
**Syntax**
```csharp
public bool GetIsLocked(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
bool
true: if the attribute is locked.
false: if the attribute is unlocked.
### GetIsLocked Method (short, short)
Provides a method to get the Lock Status of an attribute by ID and primitive ID.
**Syntax**
```csharp
public bool GetIsLocked(
short attributeId,
short primitiveId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**Returns**
bool
true: if the attribute is locked.
false: if the attribute is unlocked.
### GetName Method
Provides a method to get the name of an attribute by ID and primitive ID.
**Syntax**
```csharp
public string GetName(
short attributeId,
short primitiveId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**Returns**
string
### GetNumElements Method (string)
Provides a method to get the number of elements of an attribute by name.
**Syntax**
```csharp
public int GetNumElements(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
int
Returns -1 in case of a non-array attribute.
### GetNumElements Method (short, short)
Provides a method to get the number of elements of an attribute by ID and primitive ID.
**Syntax**
```csharp
public int GetNumElements(
short attributeId,
short primitiveId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**Returns**
int
Returns -1 in case of a non-array attribute.
### GetPrimitiveID Method
Provides a method to get a primitive ID by name.
**Syntax**
```csharp
public short GetPrimitiveID(string primName);
```
**Parameters**
**`primName`**
Primitive internal name.
**Returns**
short
### GetSecurityClassification Method (string)
Provides a method to get the Security Classification of an attribute by name.
**Syntax**
```csharp
public MxSecurityClassification GetSecurityClassification(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
MxSecurityClassification
### GetSecurityClassification Method (short, short)
Provides a method to get the Security Classification of an attribute by ID and primitive ID.
**Syntax**
```csharp
public MxSecurityClassification GetSecurityClassification(
short attributeId,
short primitiveId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**Returns**
MxSecurityClassification
### GetText Method (int)
Provides a method to get a string from the dictionary by int ID.
**Syntax**
```csharp
public string GetText(int phraseId);
```
**Parameters**
**`phraseId`**
PhraseId that exists in the dictionary.
**Returns**
string
### GetText Method (string)
Provides a method to get a string from the dictionary by string ID.
**Syntax**
```csharp
public string GetText(string phraseId);
```
**Parameters**
**`phraseId`**
PhraseId that exists in the dictionary.
**Returns**
string
### GetType Method (string)
Provides a method to get the type of an attribute by name.
**Syntax**
```csharp
public MxDataType GetType(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
MxDataType
### GetType Method (short, short)
Provides a method to get the type of an attribute by ID and primitive ID.
**Syntax**
```csharp
public MxDataType GetType(
short attributeId,
short primitiveId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**Returns**
MxDataType
### GetValue Method (string)
Provides a method to get the value of an Attribute by name.
**Syntax**
```csharp
public CMxValue GetValue(string fullName);
```
**Parameters**
**`fullName`**
Attribute external name.
**Returns**
CMxValue
### GetValue Method (short, short)
Provides a method to get the value of an Attribute by attribute ID and primitive ID.
**Syntax**
```csharp
public CMxValue GetValue(
short attributeId,
short primitiveId
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**Returns**
CMxValue
### LogError Method
Provides a method to write an error message to the logger.
**Syntax**
```csharp
public void LogError(string _message);
```
**Parameters**
**`_message`**
string value that holds the error message to be logged.
### LogException Method
Provides a method to write a formatted exception to the logger.
**Syntax**
```csharp
public void LogException(Exception ex);
```
**Parameters**
**`ex`**
Exception value to be logged.
### LogInfo Method
Provides a method to write an information message to the logger.
**Syntax**
```csharp
public void LogInfo(string _message);
```
**Parameters**
**`_message`**
string value that holds information to be logged.
### LogTrace Method
Provides a method to write a trace message to the logger.
**Syntax**
```csharp
public void LogTrace(string _message);
```
**Parameters**
**`_message`**
string value that holds trace message to be logged.
### LogWarning Method
Provides a method to write a warning message to the logger.
**Syntax**
```csharp
public void LogWarning(string _message);
```
**Parameters**
**`_message`**
string value that holds warning message to be logged.
### RegisterConfigtimeSetHandler Method
Provides a method to register the configtime set handler of an Attribute by name.
**Syntax**
```csharp
public void RegisterConfigtimeSetHandler(
string _attrName,
ConfigtimeSetHandlerDelegate _handler
);
```
**Parameters**
**`_attrName`**
Attribute external name.
**`_handler`**
Handle of configtime set handler delegate.
### RegisterRuntimeSetHandler Method
Provides a method to register a runtime set handler to an Attribute by name.
**Syntax**
```csharp
public void RegisterRuntimeSetHandler(
string attrName,
RuntimeSetHandlerDelegate handler
);
```
**Parameters**
**`attrName`**
Attribute external name.
**`handler`**
Handle of runtime set handler delegate.
### Set Method (string, EATTRIBUTEPROPERTY, object)
Provides a method to set the value of a property of an Attribute by Attribute name.
**Syntax**
```csharp
public void Set(
string fullName,
EATTRIBUTEPROPERTY property,
object value
);
```
**Parameters**
**`fullName`**
Attribute external name.
**`property`**
Property type.
**`value`**
Value to set.
### Set Method (short, short, EATTRIBUTEPROPERTY, CMxValue)
Provides a method to set the value of a property of an Attribute by ID and primitive ID.
**Syntax**
```csharp
public void Set(
short attributeId,
short primitiveId,
EATTRIBUTEPROPERTY propertyId,
CMxValue val
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**`propertyId`**
Property type.
**`val`**
Value to set.
### SetNumElements Method (string, int)
Provides a method to set the number of elements of an Attribute by name.
**Syntax**
```csharp
public void SetNumElements(
string fullName,
int numElements
);
```
**Parameters**
**`fullName`**
Attribute external name.
**`numElements`**
Number of elements to set.
### SetNumElements Method (short, short, int)
Provides a method to set the number of elements of an Attribute by ID and primitive ID.
**Syntax**
```csharp
public void SetNumElements(
short attributeId,
short primitiveId,
int numElements
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**`numElements`**
Number of elements to set.
### SetValue Method (string, object)
Provides a method to set the value of an Attribute by name.
**Syntax**
```csharp
public void SetValue(
string fullName,
object value
);
```
**Parameters**
**`fullName`**
Attribute external name.
**`value`**
Value to set.
### SetValue Method (short, short, CMxValue)
Provides a method to set the value of an Attribute by attribute Id and primitive Id.
**Syntax**
```csharp
public void SetValue(
short attributeId,
short primitiveId,
CMxValue val
);
```
**Parameters**
**`attributeId`**
Attribute ID.
**`primitiveId`**
Primitive ID.
**`val`**
Value to set.
### StoreObject Method
Provides a method to encode a C# object into a custom structure.
**Syntax**
```csharp
public MxCustomStruct StoreObject(
int id,
object obj
);
```
**Parameters**
**`id`**
ID of the CustomStruct.
**`obj`**
C# object to be stored.
**Returns**
MxCustomStruct
### UnregisterConfigtimeSetHandler Method
Provides a method to unregister the configtime set handler of an Attribute by name.
**Syntax**
```csharp
public void UnregisterConfigtimeSetHandler(string _attrName);
```
**Parameters**
**`_attrName`**
Attribute external name.
### UnregisterRuntimeSetHandler Method
Provides a method to unregister the runtime set handler of an Attribute by name.
**Syntax**
```csharp
public void UnregisterRuntimeSetHandler(string attrName);
```
**Parameters**
**`attrName`**
Attribute external name.