Skip to content

OcaDynamicsDetector#

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

Dynamics element : side-chain detector.


Overview#

Class Declaration#

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

    // Control Methods
    // Calls GetLaw and calls on_result or on_failure
    void GetLaw(auto on_result, failure_callback on_failure);
    // Calls SetLaw and calls on_result or on_failure
    void SetLaw(OcaLevelDetectionLaw Law, auto on_result, failure_callback on_failure);
    // Calls SetLaw and does not wait for the response
    void SetLaw(OcaLevelDetectionLaw Law);
    // Calls GetAttackTime and calls on_result or on_failure
    void GetAttackTime(auto on_result, failure_callback on_failure);
    // Calls SetAttackTime and calls on_result or on_failure
    void SetAttackTime(OcaTimeInterval Time, auto on_result, failure_callback on_failure);
    // Calls SetAttackTime and does not wait for the response
    void SetAttackTime(OcaTimeInterval Time);
    // Calls GetReleaseTime and calls on_result or on_failure
    void GetReleaseTime(auto on_result, failure_callback on_failure);
    // Calls SetReleaseTime and calls on_result or on_failure
    void SetReleaseTime(OcaTimeInterval Time, auto on_result, failure_callback on_failure);
    // Calls SetReleaseTime and does not wait for the response
    void SetReleaseTime(OcaTimeInterval Time);
    // Calls GetHoldTime and calls on_result or on_failure
    void GetHoldTime(auto on_result, failure_callback on_failure);
    // Calls SetHoldTime and calls on_result or on_failure
    void SetHoldTime(OcaTimeInterval Time, auto on_result, failure_callback on_failure);
    // Calls SetHoldTime and does not wait for the response
    void SetHoldTime(OcaTimeInterval Time);
    // Calls SetMultiple and calls on_result or on_failure
    void SetMultiple(OcaParameterMask Mask, OcaLevelDetectionLaw Law, OcaTimeInterval AttackTime, OcaTimeInterval ReleaseTime, OcaTimeInterval HoldTime, auto on_result, failure_callback on_failure);
    // Calls SetMultiple and does not wait for the response
    void SetMultiple(OcaParameterMask Mask, OcaLevelDetectionLaw Law, OcaTimeInterval AttackTime, OcaTimeInterval ReleaseTime, OcaTimeInterval HoldTime);

    // Observing Properties
    subscription observeLaw(auto callback, failure_callback on_failure);
    subscription observeAttackTime(auto callback, failure_callback on_failure);
    subscription observeReleaseTime(auto callback, failure_callback on_failure);
    subscription observeHoldTime(auto callback, failure_callback on_failure);

    // Property Changed Subscriptions
    subscription OnLawChanged(auto callback, failure_callback on_failure);
    subscription OnAttackTimeChanged(auto callback, failure_callback on_failure);
    subscription OnReleaseTimeChanged(auto callback, failure_callback on_failure);
    subscription OnHoldTimeChanged(auto callback, failure_callback on_failure);
  };
}

Methods#

GetLaw#

void GetLaw(auto on_result, failure_callback on_failure)

Calls the method GetLaw in the remote device.

Parameters:#

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

SetLaw#

void SetLaw(OcaLevelDetectionLaw Law, auto on_result, failure_callback on_failure)

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

Parameters:#

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

GetAttackTime#

void GetAttackTime(auto on_result, failure_callback on_failure)

Calls the method GetAttackTime 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.

SetAttackTime#

void SetAttackTime(OcaTimeInterval Time, auto on_result, failure_callback on_failure)

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

Parameters:#

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

GetReleaseTime#

void GetReleaseTime(auto on_result, failure_callback on_failure)

Calls the method GetReleaseTime 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.

SetReleaseTime#

void SetReleaseTime(OcaTimeInterval Time, auto on_result, failure_callback on_failure)

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

Parameters:#

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

GetHoldTime#

void GetHoldTime(auto on_result, failure_callback on_failure)

Calls the method GetHoldTime 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.

SetHoldTime#

void SetHoldTime(OcaTimeInterval Time, auto on_result, failure_callback on_failure)

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

Parameters:#

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

SetMultiple#

void SetMultiple(OcaParameterMask Mask, OcaLevelDetectionLaw Law, OcaTimeInterval AttackTime, OcaTimeInterval ReleaseTime, OcaTimeInterval HoldTime, auto on_result, failure_callback on_failure)

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

Parameters:#

  • OcaParameterMask Mask
  • OcaLevelDetectionLaw Law
  • OcaTimeInterval AttackTime
  • OcaTimeInterval ReleaseTime
  • OcaTimeInterval HoldTime
  • auto on_result: A callable (e.g. a lambda) with 0 arguments.
  • failure_callback on_failure: A callback which is called on error.

observeLaw#

subscription observeLaw(auto callback, failure_callback on_failure)

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

Parameters:#

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

observeAttackTime#

subscription observeAttackTime(auto callback, failure_callback on_failure)

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

Parameters:#

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

observeReleaseTime#

subscription observeReleaseTime(auto callback, failure_callback on_failure)

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

Parameters:#

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

observeHoldTime#

subscription observeHoldTime(auto callback, failure_callback on_failure)

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

Parameters:#

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

OnLawChanged#

subscription OnLawChanged(auto callback, failure_callback on_failure)

Parameters#

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

OnAttackTimeChanged#

subscription OnAttackTimeChanged(auto callback, failure_callback on_failure)

Parameters#

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

OnReleaseTimeChanged#

subscription OnReleaseTimeChanged(auto callback, failure_callback on_failure)

Parameters#

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

OnHoldTimeChanged#

subscription OnHoldTimeChanged(auto callback, failure_callback on_failure)

Parameters#

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