Skip to content

OcaGrouper#

This document describes the controller implementation of OcaGrouper. This class is documented in the AES70 standard as:

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


Overview#

Class Declaration#

namespace aes70::controller
{
  class OcaGrouper : public OcaAgent
  {
  public:
    OcaGrouper(std::shared_ptr<connection> connection,
            uin32_t object_number);
    OcaGrouper(const OcaGrouper &o);

    // Control Methods
    // Calls AddGroup and calls on_result or on_failure
    void AddGroup(OcaString Name, auto on_result, failure_callback on_failure);
    // Calls AddGroup and does not wait for the response
    void AddGroup(OcaString Name);
    // Calls DeleteGroup and calls on_result or on_failure
    void DeleteGroup(OcaUint16 Index, auto on_result, failure_callback on_failure);
    // Calls DeleteGroup and does not wait for the response
    void DeleteGroup(OcaUint16 Index);
    // Calls GetGroupCount and calls on_result or on_failure
    void GetGroupCount(auto on_result, failure_callback on_failure);
    // Calls GetGroupList and calls on_result or on_failure
    void GetGroupList(auto on_result, failure_callback on_failure);
    // Calls AddCitizen and calls on_result or on_failure
    void AddCitizen(OcaGrouperCitizen Citizen, auto on_result, failure_callback on_failure);
    // Calls AddCitizen and does not wait for the response
    void AddCitizen(OcaGrouperCitizen Citizen);
    // Calls DeleteCitizen and calls on_result or on_failure
    void DeleteCitizen(OcaUint16 Index, auto on_result, failure_callback on_failure);
    // Calls DeleteCitizen and does not wait for the response
    void DeleteCitizen(OcaUint16 Index);
    // Calls GetCitizenCount and calls on_result or on_failure
    void GetCitizenCount(auto on_result, failure_callback on_failure);
    // Calls GetCitizenList and calls on_result or on_failure
    void GetCitizenList(auto on_result, failure_callback on_failure);
    // Calls GetEnrollment and calls on_result or on_failure
    void GetEnrollment(OcaGrouperEnrollment Enrollment, auto on_result, failure_callback on_failure);
    // Calls GetEnrollment and does not wait for the response
    void GetEnrollment(OcaGrouperEnrollment Enrollment);
    // Calls SetEnrollment and calls on_result or on_failure
    void SetEnrollment(OcaGrouperEnrollment Enrollment, OcaBoolean IsMember, auto on_result, failure_callback on_failure);
    // Calls SetEnrollment and does not wait for the response
    void SetEnrollment(OcaGrouperEnrollment Enrollment, OcaBoolean IsMember);
    // Calls GetGroupMemberList and calls on_result or on_failure
    void GetGroupMemberList(OcaUint16 Index, auto on_result, failure_callback on_failure);
    // Calls GetGroupMemberList and does not wait for the response
    void GetGroupMemberList(OcaUint16 Index);
    // Calls GetActuatorOrSensor and calls on_result or on_failure
    void GetActuatorOrSensor(auto on_result, failure_callback on_failure);
    // Calls SetActuatorOrSensor and calls on_result or on_failure
    void SetActuatorOrSensor(OcaBoolean ActuatorOrSensor, auto on_result, failure_callback on_failure);
    // Calls SetActuatorOrSensor and does not wait for the response
    void SetActuatorOrSensor(OcaBoolean ActuatorOrSensor);
    // Calls GetMode and calls on_result or on_failure
    void GetMode(auto on_result, failure_callback on_failure);
    // Calls SetMode and calls on_result or on_failure
    void SetMode(OcaGrouperMode Mode, auto on_result, failure_callback on_failure);
    // Calls SetMode and does not wait for the response
    void SetMode(OcaGrouperMode Mode);

    // Observing Properties
    subscription observeActuatorOrSensor(auto callback, failure_callback on_failure);
    subscription observeGroups(auto callback, failure_callback on_failure);
    subscription observeCitizens(auto callback, failure_callback on_failure);
    subscription observeEnrollments(auto callback, failure_callback on_failure);
    subscription observeMode(auto callback, failure_callback on_failure);

    // Property Changed Subscriptions
    subscription OnActuatorOrSensorChanged(auto callback, failure_callback on_failure);
    subscription OnGroupsChanged(auto callback, failure_callback on_failure);
    subscription OnCitizensChanged(auto callback, failure_callback on_failure);
    subscription OnEnrollmentsChanged(auto callback, failure_callback on_failure);
    subscription OnModeChanged(auto callback, failure_callback on_failure);
  };
}

Methods#

AddGroup#

void AddGroup(OcaString Name, auto on_result, failure_callback on_failure)

Calls the method AddGroup in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaString Name
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 Index
    • OcaONo ProxyONo
  • failure_callback on_failure: A callback which is called on error.

DeleteGroup#

void DeleteGroup(OcaUint16 Index, auto on_result, failure_callback on_failure)

Calls the method DeleteGroup in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaUint16 Index
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetGroupCount#

void GetGroupCount(auto on_result, failure_callback on_failure)

Calls the method GetGroupCount in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 Count
  • failure_callback on_failure: A callback which is called on error.

GetGroupList#

void GetGroupList(auto on_result, failure_callback on_failure)

Calls the method GetGroupList in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaGrouperGroup> GroupList
  • failure_callback on_failure: A callback which is called on error.

AddCitizen#

void AddCitizen(OcaGrouperCitizen Citizen, auto on_result, failure_callback on_failure)

Calls the method AddCitizen in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaGrouperCitizen Citizen
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 CitizenIndex
  • failure_callback on_failure: A callback which is called on error.

DeleteCitizen#

void DeleteCitizen(OcaUint16 Index, auto on_result, failure_callback on_failure)

Calls the method DeleteCitizen in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaUint16 Index
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetCitizenCount#

void GetCitizenCount(auto on_result, failure_callback on_failure)

Calls the method GetCitizenCount in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaUint16 Count
  • failure_callback on_failure: A callback which is called on error.

GetCitizenList#

void GetCitizenList(auto on_result, failure_callback on_failure)

Calls the method GetCitizenList in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaGrouperCitizen> List
  • failure_callback on_failure: A callback which is called on error.

GetEnrollment#

void GetEnrollment(OcaGrouperEnrollment Enrollment, auto on_result, failure_callback on_failure)

Calls the method GetEnrollment in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaGrouperEnrollment Enrollment
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaBoolean IsMember
  • failure_callback on_failure: A callback which is called on error.

SetEnrollment#

void SetEnrollment(OcaGrouperEnrollment Enrollment, OcaBoolean IsMember, auto on_result, failure_callback on_failure)

Calls the method SetEnrollment in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaGrouperEnrollment Enrollment
  • OcaBoolean IsMember
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetGroupMemberList#

void GetGroupMemberList(OcaUint16 Index, auto on_result, failure_callback on_failure)

Calls the method GetGroupMemberList in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaUint16 Index
  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaList<OcaGrouperCitizen> Members
  • failure_callback on_failure: A callback which is called on error.

GetActuatorOrSensor#

void GetActuatorOrSensor(auto on_result, failure_callback on_failure)

Calls the method GetActuatorOrSensor in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaBoolean ActuatorOrSensor
  • failure_callback on_failure: A callback which is called on error.

SetActuatorOrSensor#

void SetActuatorOrSensor(OcaBoolean ActuatorOrSensor, auto on_result, failure_callback on_failure)

Calls the method SetActuatorOrSensor in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaBoolean ActuatorOrSensor
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

GetMode#

void GetMode(auto on_result, failure_callback on_failure)

Calls the method GetMode in the remote device.

Parameters:#

  • auto on_result: A callable (e.g. a lambda) with the following arguments:
    • OcaGrouperMode Mode
  • failure_callback on_failure: A callback which is called on error.

SetMode#

void SetMode(OcaGrouperMode Mode, auto on_result, failure_callback on_failure)

Calls the method SetMode in the remote device. If no result and error callback is specified, the method will be called without requesting a response.

Parameters:#

  • OcaGrouperMode Mode
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

observeActuatorOrSensor#

subscription observeActuatorOrSensor(auto callback, failure_callback on_failure)

Fetches the remote property ActuatorOrSensor and subscribes for modifications. The callback is called with the initial values of ActuatorOrSensor and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaBoolean ActuatorOrSensor
  • failure_callback on_failure: A callback which is called on error.

observeGroups#

subscription observeGroups(auto callback, failure_callback on_failure)

Fetches the remote property Groups and subscribes for modifications. The callback is called with the initial values of Groups and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaGrouperGroup> Groups
  • failure_callback on_failure: A callback which is called on error.

observeCitizens#

subscription observeCitizens(auto callback, failure_callback on_failure)

Fetches the remote property Citizens and subscribes for modifications. The callback is called with the initial values of Citizens and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaGrouperCitizen> Citizens
  • failure_callback on_failure: A callback which is called on error.

observeEnrollments#

subscription observeEnrollments(auto callback, failure_callback on_failure)

Fetches the remote property Enrollments and subscribes for modifications. The callback is called with the initial values of Enrollments and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaGrouperEnrollment> Enrollments
  • failure_callback on_failure: A callback which is called on error.

observeMode#

subscription observeMode(auto callback, failure_callback on_failure)

Fetches the remote property Mode and subscribes for modifications. The callback is called with the initial values of Mode and whenever it changes.

Parameters:#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaGrouperMode Mode
  • failure_callback on_failure: A callback which is called on error.

OnActuatorOrSensorChanged#

subscription OnActuatorOrSensorChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaBoolean ActuatorOrSensor
  • failure_callback on_failure: A callback which is called on error.

OnGroupsChanged#

subscription OnGroupsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaGrouperGroup> Groups
  • failure_callback on_failure: A callback which is called on error.

OnCitizensChanged#

subscription OnCitizensChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaGrouperCitizen> Citizens
  • failure_callback on_failure: A callback which is called on error.

OnEnrollmentsChanged#

subscription OnEnrollmentsChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaList<OcaGrouperEnrollment> Enrollments
  • failure_callback on_failure: A callback which is called on error.

OnModeChanged#

subscription OnModeChanged(auto callback, failure_callback on_failure)

Parameters#

  • auto callback: A callable (e.g. a lambda) with one argument: OcaGrouperMode Mode
  • failure_callback on_failure: A callback which is called on error.