# AOT Developer Guide (Markdown)

Converted from the AVEVA / Wonderware *ArchestrA Object Toolkit Development Guide* compiled HTML help. One file per chapter / appendix; ordering matches the original CHM table of contents.

## Chapters

- [Overview and Concepts](01-overview.md) — This section gives you a general overview of the Wonderware ArchestrA Object Toolkit and its features. We recommend that you read this section in its entirety to familiarize yourself with the key concepts, and then…
- [Object Design Considerations](02-object-design.md) — Before you start defining your object, you should plan its features and structure. You should:
- [Working with Projects](03-working-with-projects.md) — When creating ApplicationObjects or reusable primitives, you manage your development work in *projects*. ArchestrA Object Toolkit projects are simply Visual Studio projects of a special type. You create and manage them…
- [Defining an ApplicationObject](04-defining-application-objects.md) — Once you have created an ArchestrA Object Toolkit project, you can start defining your object. This section explains how to configure object properties and add primitives using the Object Designer, and how to add custom…
- [Defining a Reusable Primitive](05-defining-primitives.md) — A reusable primitive is a primitive that is intended to be included into multiple objects. This allows you to share component-level code across objects. The Input and Output primitives that you can add in the Object…
- [Configuring Attributes](06-configuring-attributes.md) — Attributes are the data items of an object or primitive. By reading from and writing to attributes, objects can exchange data with each other.
- [Internationalizing Objects](07-internationalizing.md) — If your object will be used in localized environments, you can internationalize it by defining a multilingual dictionary that contains translated strings for the target locales. At run time, the object can retrieve the…
- [Building and Versioning Objects](08-building-and-versioning.md) — By building your object, you create an .aaPDF object file that you can import and use in Wonderware Application Server. You can:
- [Debugging Objects](09-debugging.md) — The ArchestrA Object Toolkit allows you to attach the Visual Studio debugger to the Application Server processes running your object’s code. This allows you to troubleshoot and debug your objects. In order to use the…
- [Programming Techniques (Reference Guide)](appendix-a-ref-guide.md) — Use the following workflow and programming techniques to code within the ArchestrA Object Toolkit (AOT).
- [Development Best Practices](appendix-a-best-practices.md) — When developing your object, you should follow certain guidelines to ensure correct functionality and to avoid common pitfalls. See the following sections for guidelines and tips on developing config time code, run time…
- [Sample Projects](appendix-b-sample-projects.md) — The ArchestrA Object Toolkit comes with two sample ApplicationObjects:
- [ArchestrA Data Types](appendix-d-data-types.md) — Objects that you create using the ArchestrA Object Toolkit can have attributes of any standard data type that is supported in the ArchestrA environment. This appendix describes the available data types and provides some…
- [ArchestrA Security Classifications](appendix-e-security-classifications.md) — By default, new attributes are created with the “Free Access” security classification, which means that any user can write to them. You can restrict write access to an attribute by selecting a different security…
- [ArchestrA Attribute Categories](appendix-f-attribute-categories.md) — An attribute’s category determines which namespaces an attribute appears in, whether the attribute can be written to, and what type of client (users, scripts, etc.) can write to it.
