Skip to content

OcaDelayExtended#

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

Signal delay - extended version. Allows setting delay value in various units. Note that the inherited property 04p01 DelayTime is also supported by this class and reflects actual achieved delay in seconds. This class is deprecated in AES70-2022.


Overview#

Class Declaration#

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

    // Control Methods
    // Calls GetDelayValue and calls on_result or on_failure
    void GetDelayValue(auto on_result, failure_callback on_failure);
    // Calls SetDelayValue and calls on_result or on_failure
    void SetDelayValue(OcaDelayValue Value, auto on_result, failure_callback on_failure);
    // Calls SetDelayValue and does not wait for the response
    void SetDelayValue(OcaDelayValue Value);
    // Calls GetDelayValueConverted and calls on_result or on_failure
    void GetDelayValueConverted(OcaDelayUnit UoM, auto on_result, failure_callback on_failure);
    // Calls GetDelayValueConverted and does not wait for the response
    void GetDelayValueConverted(OcaDelayUnit UoM);

    // Observing Properties
    subscription observeDelayValue(auto callback, failure_callback on_failure);

    // Property Changed Subscriptions
    subscription OnDelayValueChanged(auto callback, failure_callback on_failure);
  };
}

Methods#

GetDelayValue#

void GetDelayValue(auto on_result, failure_callback on_failure)

Calls the method GetDelayValue in the remote device.

Parameters:#

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

SetDelayValue#

void SetDelayValue(OcaDelayValue Value, auto on_result, failure_callback on_failure)

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

Parameters:#

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

GetDelayValueConverted#

void GetDelayValueConverted(OcaDelayUnit UoM, auto on_result, failure_callback on_failure)

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

Parameters:#

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

observeDelayValue#

subscription observeDelayValue(auto callback, failure_callback on_failure)

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

Parameters:#

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

OnDelayValueChanged#

subscription OnDelayValueChanged(auto callback, failure_callback on_failure)

Parameters#

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