1.2.2 OcaGrouper

Class Hierarchy:

OcaRoot : OcaAgent : OcaGrouper

class OcaGrouper : OcaAgent

Control aggregator. See [AES70-1(Control Aggregation)] for the normative specification of OcaGrouper semantics. Deprecated in AES70-2024.

Properties:

OcaBoolean ActuatorOrSensor

True if Grouper is actuator grouper, false if sensor grouper.

This property has id 3.1.

OcaList<OcaGrouperCitizen> Citizens

List of citizens defined for this grouper.

This property has id 3.3.

static const OcaClassID ClassID = "1.2.2"

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.

This property has id 1.1.

static const OcaClassVersionNumber ClassVersion = 3

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.

This property has id 1.2.

OcaList<OcaGrouperEnrollment> Enrollments

List of Grouper’s enrollments, i.e. which Citizen(s) belong to which Group(s).

This property has id 3.4.

OcaList<OcaGrouperGroup> Groups

List of groups in the grouper. Groups shall be added to and deleted from a grouper by the OcaGrouper methods AddGroup(…) and DeleteGroup(…), respectively.

This property has id 3.2.

OcaGrouperMode Mode

Switch that determines whether grouper is in hierarchical mode or peer-to-peer mode.

This property has id 3.5.

Properties inherited from 1.2 OcaAgent:

Methods:

OcaStatus AddGroup(OcaString Name, OcaUint16 &Index, OcaONo &ProxyONo)

Adds a group to the grouper and returns its object number. (The group’s network address will be the same as the grouper’s).

This method has id 3.1.

OcaStatus DeleteGroup(OcaUint16 Index)

Deletes a group from the grouper. Note: index values of deleted groups are not reused during the lifetime of the grouper instance.

This method has id 3.2.

  • Index: Input parameter.

OcaStatus GetGroupCount(OcaUint16 &Count)

Gets the count of groups owned by this grouper.

This method has id 3.3.

  • Count: Output parameter.

OcaStatus GetGroupList(OcaList<OcaGrouperGroup> &GroupList)

Gets the list of groups owned by this grouper.

This method has id 3.4.

OcaStatus AddCitizen(OcaGrouperCitizen Citizen, OcaUint16 &CitizenIndex)

Adds a citizen to the group. This method does not enroll the new citizen in any of the grouper’s groups – it merely makes the citizen available for enrollment. Group enrollment is controlled by the SetEnrollment(…) method, q.v.

This method has id 3.5.

OcaStatus DeleteCitizen(OcaUint16 Index)

Delete a citizen from the grouper (and therefore from all of its groups). Note: index values of deleted citizens are not reused during the lifetime of the grouper instance.

This method has id 3.6.

  • Index: Input parameter.

OcaStatus GetCitizenCount(OcaUint16 &Count)

Gets the count of citizens registered in this grouper.

This method has id 3.7.

  • Count: Output parameter.

OcaStatus GetCitizenList(OcaList<OcaGrouperCitizen> &List)

Gets the list of citizens registered in this grouper.

This method has id 3.8.

  • List: Output parameter.

OcaStatus GetEnrollment(OcaGrouperEnrollment Enrollment, OcaBoolean &IsMember)

Gets membership status for given Citizen in given Group.

This method has id 3.9.

OcaStatus SetEnrollment(OcaGrouperEnrollment Enrollment, OcaBoolean IsMember)

Sets membership status for given target in given group.

This method has id 3.10.

OcaStatus GetGroupMemberList(OcaUint16 Index, OcaList<OcaGrouperCitizen> &Members)

Gets the list of members of the given group.

This method has id 3.11.

OcaStatus GetActuatorOrSensor(OcaBoolean &ActuatorOrSensor)

Gets the value of the ActuatorOrSensor property.

This method has id 3.12.

OcaStatus SetActuatorOrSensor(OcaBoolean ActuatorOrSensor)

Sets the value of the ActuatorOrSensor property. Note: only Actuator groups are supported in the current version of AES70.

This method has id 3.13.

OcaStatus GetMode(OcaGrouperMode &Mode)

Gets the value of the Mode property.

This method has id 3.14.

  • Mode: Output parameter.

OcaStatus SetMode(OcaGrouperMode Mode)

Sets the value of the Mode property.

This method has id 3.15.

  • Mode: Input parameter.

Methods inherited from 1.2 OcaAgent:

Events:

void StatusChange(OcaGrouperStatusChangeEventData eventData)

Event that is emitted whenever key aspects of a group’s status change. Status events include:

  • Citizen joins grouper

  • Citizen leaves grouper

  • Citizen fails to execute grouper value change request

  • Connection to online citizen is lost

  • Connection to offline citizen is reestablished

  • Citizen enrolls in group

  • Citizen de-enrolls from group

This event has id 3.1.