The PI-SDK is built from collections of objects and individual objects, which are arranged in a hierarchical model representing the PI Servers whose features are available to a calling program.
In general an application gains access to the top-level object in the hierarchy either by creation or by using a language specific default appliction object (Visual Basic 6). From the top-level object, the application retrieves other objects and collections that in turn expose further objects and collections. An abbreviated picture of the basic hierarchy looks like this:
At the root of the hierarchy is the PISDK object. This object has a property, called Servers, which returns a reference to the Servers collection. The boxes designate objects that contain properties that refer to other objects and collections. Lines not ending in an object indicate other objects and collections not shown for clarity. Many of the PI-SDK objects and their methods and properties have been omitted from this diagram for clarity.
The Servers collection can return references to any server objects that are available on the system (see the Known Servers Table discussion below). Each Server object can return references to a number of objects, including its PIPoints collection. A PIPoints collection can return various PIPoint objects, which in turn point to other objects related to the PIPoint. The PointAttributes collection of the PIPoint provides access to all the point database information for that point. The Data object provides access to the archive and snapshot information for the PIPoint. Limited data access is available in this release.
Also shown, as descending from the Server object are the PIBatchDB and PIModuleDB objects. These provide access to features delivered in the PI3 Server version 3.3. These features are discussed in the topics PI Module Database and Batch Database under Programming Topics | Working with Advanced Server Features.