Skip to content

OcaDelay#

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

Signal delay - basic version.


Overview#

Class Declaration#

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

    // Control Methods
    // Calls GetDelayTime and calls on_result or on_failure
    void GetDelayTime(auto on_result, failure_callback on_failure);
    // Calls SetDelayTime and calls on_result or on_failure
    void SetDelayTime(OcaTimeInterval delayTime, auto on_result, failure_callback on_failure);
    // Calls SetDelayTime and does not wait for the response
    void SetDelayTime(OcaTimeInterval delayTime);

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

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

Methods#

GetDelayTime#

void GetDelayTime(auto on_result, failure_callback on_failure)

Calls the method GetDelayTime in the remote device.

Parameters:#

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

SetDelayTime#

void SetDelayTime(OcaTimeInterval delayTime, auto on_result, failure_callback on_failure)

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

Parameters:#

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

observeDelayTime#

subscription observeDelayTime(auto callback, failure_callback on_failure)

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

Parameters:#

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

OnDelayTimeChanged#

subscription OnDelayTimeChanged(auto callback, failure_callback on_failure)

Parameters#

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