Index

Class OcaLibrary

ClassID: 1.2.5

extends OcaAgent

A library is an agent that holds a collection of datasets. We refer to each dataset as a Volume. There are two kinds of volumes: ParamSet (parameter set). A ParamSet is a collection of operating parameter settings that can be applied to a block. Each ParamSet is associated with a specific block type, but not with a specific instance of that type. A ParamSet may be applied to any block instance of the associated type. A block's type is the object number of its factory or, for factory-defined blocks, a unique identifier set at time of manufacture. Patch. A Patch is a collection of ParamSet assignments. A ParamSet assigment is the description of a binding of a ParamSet to a block instance. To "apply" a Patch is to apply all of its assignments. To apply an assignment is to set all of its ParamSet's parameter values into its block. A given library instance can only hold one class of volume. A device that supports libraries can have any number of Patch and ParamSet libraries. If a device implements a Patch library, it must also implement at least one ParamSet library. However, the reverse is not true: a device may implement one or more ParamSet libraries without a Patch library.

Properties

static readonly OcaClassID ClassID = 1.2.5

Level: 1 Index: 1

Number that uniquely identifies the class. Note that this differs from the object number, which identifies the instantiated object. This property is an override of the OcaRoot property.

static readonly OcaClassVersionNumber ClassVersion = 2

Level: 1 Index: 2

Identifies the interface version of the class. Any change to the class definition leads to a higher class version. This property is an override of the OcaRoot property.

OcaLibVolType VolumeType

Level: 3 Index: 1

Type of library volumes:

OcaLibAccess Access

Level: 3 Index: 2

Readonly, read-expand, or full.

OcaMap<OcaLibVolID,OcaLibVol> Volumes

Level: 3 Index: 3

Map of volumes held in the Library. Changed in version 2 because the definition of OcaLibVolMetaData, which is part of OcaLibVol, has changed, and because it is now a private property whose changes are signaled by the OcaLibVolChanged event.

Properties inherited from OcaAgent

OcaString Label

OcaONo Owner

Properties inherited from OcaRoot

readonly OcaONo ObjectNumber

readonly OcaBoolean Lockable

readonly OcaString Role

Methods

OcaLibrary::AddVolume ( OcaLibVol Volume ) → ( OcaLibVolID ID)

Level: 3 Index: 1

Adds a volume to the library and returns its volume ID. The return value indicates whether the volume was successfully added. Changed in version 2 because the definition of OcaLibVolMetaData, which is part of OcaLibVol, has changed.

OcaLibrary::ReplaceVolume ( OcaLibVolID ID, OcaLibVol Volume )

Level: 3 Index: 2

Replaces a volume in the library at the given volume ID. The return value indicates whether the volume was successfully replaced. Changed in version 2 because the definition of OcaLibVolMetaData, which is part of OcaLibVol, has changed.

OcaLibrary::DeleteVolume ( OcaLibVolID ID )

Level: 3 Index: 3

Deletes a volume from the library. The return value indicates whether the group was successfully deleted.

OcaLibrary::GetVolume ( ) → ( OcaLibVol Volume)

Level: 3 Index: 4

Retrieves a library volume. The return value indicates whether the volume was successfully retrieved. Changed in version 2 because the definition of OcaLibVolMetaData, which is part of OcaLibVol, has changed.

OcaLibrary::GetVolumeCount ( ) → ( OcaUint16 Count)

Level: 3 Index: 5

Gets the count of volumes in this library. The return value indicates whether the count was successfully retrieved.

OcaLibrary::GetVolumes ( ) → ( OcaMap<OcaLibVolID,OcaLibVol> Volumes)

Level: 3 Index: 6

Gets the list of volumes held in this library. The return value indicates whether the list was successfully retrieved. Changed in version 2 because the definition of OcaLibVolMetaData, which is part of OcaLibVol, has changed.

OcaLibrary::GetAccess ( ) → ( OcaLibAccess Access)

Level: 3 Index: 7

Gets allowed access mode for this library. The return value indicates whether the property was successfully retrieved.

OcaLibrary::SetAccess ( OcaLibAccess Access )

Level: 3 Index: 8

Sets allowed access mode for this library. The return value indicates whether the property was successfully set. Not implemented for static, manufacturer-supplied libraries.

Methods inherited from OcaAgent

OcaAgent::GetLabel ( ) → ( OcaString Label)

OcaAgent::SetLabel ( OcaString Label )

OcaAgent::GetOwner ( ) → ( OcaONo owner)

OcaAgent::GetPath ( ) → ( OcaNamePath NamePath, OcaONoPath ONoPath)

Methods inherited from OcaRoot

OcaRoot::GetClassIdentification ( ) → ( OcaClassIdentification ClassIdentification)

OcaRoot::GetLockable ( ) → ( OcaBoolean lockable)

OcaRoot::LockTotal ( )

OcaRoot::Unlock ( )

OcaRoot::GetRole ( ) → ( OcaString Role)

OcaRoot::LockReadonly ( )

Events

Event OcaLibVolChanged

Event that is raised whenever private property Volumes changes. Added in OcaLibrary Version 2.