Subsystem, T subsystem – Echelon OpenLNS User Manual

Page 866

Advertising
background image

OpenLNS Programmer's Reference

829

Subsystem

The Subsystem object represents a logical grouping of devices and routers. Subsystems may

be hierarchical. Each user-defined subsystem may itself contain additional user-defined

subsystems.
The

System

object's

Subsystems

collection contains the top-level subsystems in the user's

subsystem hierarchy plus two pre-defined subsystems: the ALL and the Discovered

subsystem. These predefined Subsystem objects are described as follows:

The ALL subsystem is always given index 1 within the System

object’s Subsystems

collection. This subsystem contains all objects in the network database, including the

subsystems in the system that are managed by the LNS client applications. However,

this also includes transient objects that OpenLNS uses that should not be accessed by

client applications. In general, you should not use the ALL subsystem, and you should

not iterate through this subsystem to get a list of devices or routers on a network.

The ALL subsystem, however, may be useful if you are not sure to which subsystem a

device or router belongs, but you know the handle or Neuron ID of the device or router.

In that case, you can locate the device by accessing

AppDevices

or

Routers

collection of

the ALL subsystem, and invoking the

ItemByHandle

or

ItemByNeuronId

methods.

A newly discovered uninstalled router (by service pin, or device discovery) will not

appear in the ALL subsystem's RouterDevices

collection until the

Discovered.Uninstalled.RouterDevices collection is accessed.

The Discovered subsystem is always given index 2 in the

System

object's

Subsystems

collection. The

AppDevices

and

RouterDevices

properties in the Discovered subsystem

are empty collections; however, this pre-defined subsystem contains two special-purpose

subsystems: the Installed and Uninstalled subsystems. These two special-purpose

subsystems are described as follows:

o

The Discovered.Installed subsystem is always at Index 1 in the Discovered

subsystem. It contains all devices that were not explicitly added to a subsystem by an

OpenLNS client. For example, all NSDs will initially be in this subsystem because

they are created implicitly by OpenLNS. If you use the Move or MoveEx method to

move an NSD or application device in the Disovered.Installed subsystem to a user

subsystem manually, or if you use the AddReference method to add a reference to a

device in the Discovered.Uninstalled subsystem to a user subsystem, the device

will be removed from the Discovered.Installed subsystem. Devices discovered by

network recovery operations are also stored in this subsystem, until they are moved

by an application to a user subsystem.

o

The Discovered.Uninstalled subsystem is always at Index 2 in the Discovered

subsystem. It contains unconfigured devices that have been automatically

discovered on the network or devices that have been discovered by the System

object's DiscoverDevices method.
Write access to the application devices and routers contained within these

subsystems is limited. Devices may not be added to or deleted from these

subsystems; however, they may be moved to other subsystems, effectively installing

them using the AddReference method of the AppDevices or Routers

collections. You

can rename the application devices and routers stored in these subsystems by

writing to their Name property, but you cannot commission them or modify their

Neuron IDs until you move them to another subsystem.

Advertising