The OBJECTS class library.

All the objects contained in OBJECTS are not really designed to be inherited from. They are common definitions of objects required for any Obsydian model. You can create your own versions of these objects and not use OBJECTS as a library if you choose.
The objects form two groups: Fields and Variables. All the fields start with ‘*’ and so appear in the Environment variable section of action diagrams.
The two fields required for generated Obsydian functions to communicate low level operations back to the action diagram code are *View status and *Call status.
*View status is set after any view I/O operation and reflects what happened during the operation. The name of this field and its values are hard coded into the Obsydian generators and they cannot be changed.
*Call status and its values are also hard coded into the generators. It is used to communicate the result of a function call. If the call to the target function is not made successfully for whatever reason (communications failure, parameter mismatch, function not found, …), this field is set to a value that is not ‘*Normal’.
Two other fields are automatically used by the generated functions. These are *Returned status and *Returning status. The *Returning status field is passed back by any called function to its caller, putting the value into the calling function’s *Returned status field. The rule is set *Returning status in the called function and test *Returned status in the calling function. You have to set *Returning status to a value with action diagram code, the generators will not set or change either of these two field’s values.
The other ‘*’ fields in OBJECTS are used by the shipped class libraries, mainly in meta code, and are always present in all the class library action diagrams.